DEV Community

RyanCwynar
RyanCwynar

Posted on • Originally published at ryancwynar.com

I Built an AI Prospecting Pipeline That Runs While I Sleep

Last week my AI agent queued 89 prospects across four different outreach campaigns — dental offices, law firms, medical practices, wealth managers — without me lifting a finger. Here is how I built a fully automated prospecting pipeline using cron jobs, Redis queues, and AI voice calls.

The Problem

Cold outreach is a numbers game, and the numbers are brutal. You need to find businesses, research them, figure out the right pitch, queue them up, and actually make the calls. Each step is tedious enough to kill your momentum. Most solo founders give up after a week.

I wanted a system that would keep the pipeline full 24/7, even when I was shipping code or sleeping.

The Architecture

The system has three layers:

1. Prospect Discovery (Cron Jobs)

I run multiple cron jobs throughout the day, each targeting a different campaign. A receptionist campaign fires at 10 AM and 8 PM. A reviews campaign runs at 1 PM. An AI services campaign at 3 PM. A general outreach campaign at 5 PM.

Each job spins up an isolated AI agent session that searches Google Maps for businesses in South Florida matching specific criteria — dentists in Boca Raton, law firms in Fort Lauderdale, medical practices in Miami. The agent scrapes basic info (name, phone, specialty, location) and pushes them into a Redis queue.

2. The Redis Queue

Redis sits in the middle as the buffer between discovery and outreach. Prospects go in with their campaign tag, contact info, and metadata. The queue deduplicates automatically — same phone number does not get added twice. At peak, I have had 89 prospects queued and ready to call.

The queue also serves as a dashboard. I can check stats any time: how many prospects per campaign, which ones have been called, what is left.

3. AI Voice Dialer

The dialer pulls from Redis and makes actual phone calls using Retell AI. Each campaign has its own voice agent personality and script. The receptionist campaign pitches an AI receptionist service. The reviews campaign offers automated review collection. Different value props, different conversations, same infrastructure.

Calls get transcribed in real time, outcomes get logged, and the queue advances.

What I Learned Building This

Campaign diversity matters. Running four campaigns in parallel taught me that different verticals respond to completely different pitches. Dentists care about missed calls. Lawyers care about intake efficiency. Having separate campaigns with separate scripts doubled my connection rate.

Redis is the unsung hero. I started with a simple array in memory. That lasted about two days before I lost my queue to a restart. Redis with AOF persistence means my prospect list survives anything. The atomic operations also make deduplication trivial.

Cron scheduling is an art. I stagger my discovery jobs throughout the day instead of running them all at once. This keeps the queue growing steadily and avoids hitting rate limits on Google Maps. The morning and evening receptionist runs catch the most businesses because I am searching during hours when their Google listings show as open.

Let the AI be weird. My prospect finder agent sometimes picks businesses I would never have targeted — a dermatology practice, an estate planning firm. But those unexpected picks have led to some of my best conversations. The AI does not have my biases about who is a good prospect.

The Numbers

Over three days:

  • 89 prospects discovered and queued automatically
  • 4 campaigns running in parallel
  • 37 calls completed in one dialer session
  • Zero manual research on my part

The whole system runs on a single VPS with Docker, Redis, and a few Node.js services. Total infrastructure cost is under $50 per month.

Try This Yourself

You do not need this exact stack. The pattern is what matters:

  1. Automate discovery — cron jobs that find prospects on a schedule
  2. Buffer with a queue — decouple finding from calling
  3. Automate outreach — AI voice, email sequences, whatever fits your market
  4. Run multiple campaigns — different pitches for different segments

The hardest part is not the code. It is trusting the system enough to let it run. Once you do, you will wonder why you ever prospected manually.


I build AI automation tools at byldr.co. If you want an AI receptionist or automated outreach for your business, let us talk.

Top comments (0)