An AI sales team that calls, qualifies and books — on its own.
Agenlead is an outbound calling platform built on autonomous voice agents. They dial a lead, hold a real conversation, answer questions, qualify intent, and book a consultation — then score and summarize every call automatically. I founded it and built it end-to-end: the product, the design, the iOS app, and the cloud automation that runs the agents.
The problem. Outbound sales is slow, expensive and inconsistent. A rep spends most of the day dialing numbers that don't pick up, repeating the same opening, and forgetting to log what happened. The good conversations get lost in the noise of the bad ones.
Agenlead's bet: a voice agent can do the repetitive 80% — dial, qualify, handle objections, book the meeting — and hand humans only the conversations worth their time, each one already transcribed and scored.
One pipeline, five stages.
Every lead flows through the same path. I designed the orchestration as discrete, observable steps so any stage can fail, retry, or be inspected on its own — the difference between a demo and something you can run in production.
Ingest & normalize
Leads arrive from web forms, CSV and ad integrations. An n8n workflow de-dupes and normalizes them into Supabase.
Voice agent dials
A conversational voice agent (ElevenLabs over Twilio telephony) places the call, follows the campaign script, and detects voicemail.
Route intent live
A conversation handler resolves intent in real time — qualify, schedule, end — and can check calendar availability and book mid-call.
Score the transcript
When the call ends, an LLM reads the transcript and returns a structured result: outcome, a 0–10 interest score, and a short summary.
Sync everywhere
Results sync to the iOS app and web dashboard in real time — lead status, call score, transcript and the booked event.
From pipeline to a single tap.
The companion app turns all of that machinery into three things an operator actually needs: what's happening, what each call was worth, and what to do next.

The whole pipeline at a glance.
Active campaigns, live agents, leads and calls — with recent activity and status (interested, scheduled, agreed) updating in real time as agents work the list.

Every call, scored and transcribed.
The agent's full conversation, a 0–10 interest score, duration and outcome — generated automatically the moment the call ends. No rep notes required.

One tap from insight to action.
Campaign, status and notes you can edit on the spot — and place a call directly from the record when a human should take the next step.
Decisions that made it safe and cheap to run.
Consent & isolation first
Consent-based outreach, per-tenant data isolation, and every secret kept in AWS Parameter Store — never in code or the client. Privacy policy and terms are surfaced inside the app, not buried.
~$0.002 per analyzed call
I replaced brittle keyword matching with a single LLM analysis pass on GPT-4o-mini. The rewrite cut roughly 44% of the workflow code and ~60% of the data moved — at about two-tenths of a cent per call.
Isolated dev & prod
Separate environments on AWS ECS with managed RDS Postgres, containerized with Docker, automated backups, and rollback-capable deploys — so shipping doesn't mean gambling with live calls.
Inside the app.
Explore more of the shipped iOS app.






Outcomes
Building Agenlead made the AI part feel almost easy compared to the systems work around it: telephony retries, voicemail detection, consent, idempotent workflows, and a clean handoff to a human at exactly the right moment. The product is the guardrails.
It's also the clearest example of the way I like to work — one person carrying a product from a Figma frame to a Swift screen to the cloud workflow that makes the voice agent actually dial.