Skip to content
Hasnain Ali

Work with me

Voice AI and agent workflow engineering

I build the backend that keeps AI calls, texts and emails in step: who to contact, when, on which channel, what happens when a provider fails, and when a person takes over.

View resume

Problems this is for

  • Calls, messages and follow-ups in the right orderMany leads at once, each on its own sequence across voice, SMS and email.
  • Connecting the piecesTelephony, voice, language models and your existing backend, working as one system.
  • Failures that don't become incidentsRate limits, provider outages and redelivered messages, handled without duplicate sends.
  • Handing over to peopleQualified conversations reach a person, with the context they need.

What I've built

  • Speculo.ai

    Senior AI Communication Engineer

    Voice AI that calls, texts and emails real-estate leads, then hands the qualified ones to the client's human agents. My part was the Python backend that times every call, text and follow-up.

    One production run sent 117K+ emails and SMS and about 10K AI voice calls in 6 hours. The work contributed to $2M+ in annual revenue.

    The pipeline ran on GCP Pub/Sub with parallel Cloud Run workers. Pub/Sub delivers at least once, so every send carried an idempotency key (the lead ID plus the channel), and duplicates were prevented. A LangGraph state machine ran the qualification script.

  • Demos you can watch or run

    Illustrations and browser simulations

    A short animated film of an AI follow-up call that books a viewing and hands it to a human agent, a 21-second demo call (fictional names, both voices AI), and Automation Studio: four agent workflow demos you can run in your browser.

What I design for

The engineering questions that decide whether an agent workflow holds up. The first five are how the Speculo pipeline handled them (see the architecture write-up); the last is a general point.

  • StateEach lead's sequence is explicit, so a step isn't skipped or repeated while several agents work at once.
  • Delivery that may repeatQueues deliver at least once, so each send claims a key first and a redelivered copy is skipped.
  • Rate limits and outagesWorkers wait and back off instead of failing; a refused send is marked failed and retried later.
  • ObservabilityEvery event in one queryable log, and an alert when a queue backlog stays high.
  • People in the loopQualified conversations go to the client's human agents; the agents make first contact and qualify.
  • When a retry isn't safeIf a provider times out, the message may already have gone. That case needs a check before resending.

How I'd approach a project

A proposed way of working, adjusted to each project. It isn't a fixed package.

  1. Map the journeyChannels, timing, qualification rules, and the moment a person takes over.
  2. Design the stateWhat the system records for each contact, so steps can't be skipped or sent twice.
  3. One channel end to endA working path with logging, before adding the next channel.
  4. Failure handlingRetries, back-off and alerts, tested against provider errors.
  5. Pilot, then scaleReal volume with human review first, then the rest.

Depending on the project, the result could be one or more of:

  • a journey and state design for your contacts and channels
  • a working prototype on one channel
  • an integration plan for your telephony, messaging and backend
  • a production implementation

Questions

Where are you, and how do you work?
I'm based in Pakistan (UTC+5) and work remotely, as an independent contractor since July 2026. I'm open to relocation; US roles need visa sponsorship.
What do you build with?
Python and LangGraph, Twilio and ElevenLabs for voice, OpenAI, Anthropic and Gemini models, GCP Pub/Sub for queues, and pgvector.
Do the AI agents replace the sales team?
At Speculo.ai they didn't: the agents made first contact and qualified leads, and the qualified ones went to the client's human agents.
How do we start?
Send one line about the project through the form, or email me. I read and answer these myself. If you're hiring for a role, choose that option in the form, or start with the resume.

Planning calls, messages or follow-ups with AI?

Tell me who you need to reach, on which channels, and when a person should take over.

View resume

Back to work

Message me

What is this about?

I read and answer these myself.

Or email codingwithhasnain@gmail.com