Automation · AI integration · Custom software

If it can be automated, I’ll find a way.

Twenty-four years in sales and operations taught me where businesses bleed hours and money. I build the software that stops it — CRMs, billing, lead pipelines, AI workflows, internal tools. Because I've lived the work, what I build gets used instead of worked around.

24yrs In sales, thirteen of them on inside sales teams
250K+ Calls made in thirteen years of inside sales
4wks To rebuild a production platform from scratch, solo
3 Stripe billing systems built end to end

Background

I came up on the phone and in the P&L, not in a CS program.

Twenty-four years in sales, thirteen of them inside sales. I've been the rep on the phone with a dialer and a quota, and the person the reporting was supposedly built for. Almost all of it was lead generation and lead sales — building the pipeline and selling the pipeline. Plus a stretch of consultative selling in solar — its own education in long cycles and buyers who need to be walked through a decision.

Then I ran it — sales manager, then operations manager, carrying a P&L and standing up a dozen direct-to-consumer pilots. I've had to justify spend, kill what wasn't working, and answer for the number at the end of the month.

Then I measured it. I taught myself SQL because I got tired of waiting on someone else to answer questions about my own pipeline. I worked as a data analyst and a product analyst, and built reporting in Periscope and Sisense.

Now I build it. I've sold the product, run the operation behind it, analysed the numbers and specced the roadmap — there isn't a part of a revenue system I haven't sat on the wrong side of. That's why the work below looks the way it does. A lead distribution platform, a CRM, an affiliate program, call analysis — the tooling I spent a career using and wishing were better.

Industry depth

  • Residential solar
  • Residential real estate
  • Title & closing
  • Construction & remodeling
  • D2C
  • SaaS

Method

Generating code is cheap now. Knowing which code should exist is the work.

I don't hand-write most of what I ship. I direct Claude Code, review what comes back, and own every architectural decision in the system. I'd rather say that plainly than have you work it out later.

What you're paying for is the judgment around it: knowing what to build, catching the output that's wrong before it reaches production, and insisting on the parts nobody asks for until they're missing — reconciled billing, row-level security, retention rules, an audit trail.

The part I'm actually good at is seeing where a system will break before it does. Where the data model won't hold. Where the manual step quietly becomes someone's full-time job. Where the thing that works at a hundred records falls over at a hundred thousand. The same instinct turns up the requirement nobody wrote down — the report they'll need at quarter end, the state the workflow can get stuck in. I raise those while we're scoping and build the seams in early. Adapter layers so a vendor can be swapped, kill switches on anything that touches money, validation that fails at build time — not in front of a customer. It costs a little more in week one and saves the rewrite in month nine.

The reporting goes in from the start. If you can't see what a system is doing, you don't really have it yet.

A career of cold calling teaches you there is always another path to the same outcome. I build the same way — scrapers, queues, integrations, whatever the problem needs. If it can be automated, I'll find a way.

Engagements

Six ways to work together.

Start here

Paid discovery sprint

A week pulling the real problem apart, ending in a written scope, a fixed price and a date. You keep the plan whether or not I build it. This is also where I earn my keep: I'll tell you what you didn't think to ask for while we're still agreeing the scope, not halfway through the invoice.

Core offer

Fixed-scope product build

You have a product that needs to exist, or a new surface to put on the backend you already run. I scope it, design it, build it. One agreed price, one date, one person accountable.

Build

AI features in an existing product

LLM and transcription pipelines wired into real systems — queued background jobs, cost controls, rate limiting, retention rules, and a UI people will actually use. The hard part was never the prompt.

Build

Billing & revenue systems

Stripe subscriptions, self-service card management, failed-payment recovery, affiliate and partner programs, revenue share, and the admin tooling your team needs to run it without calling you.

Build

Lifecycle automation & email

Iterable campaigns, onboarding sequences, self-guided product tours and the in-app prompts that move people from signup to first real use. Automation that runs itself, not a list your team maintains by hand.

Retainer

Embedded engineer

A standing block of hours each month with one team, owning a surface outright rather than picking up tickets.

Not on this list? Ask anyway. Revenue systems are where I'm deepest, but I build custom software generally — internal tools, portals, dashboards, integrations, a CRM for a business that has outgrown spreadsheets.

Capabilities

What I actually do.

Build

  • Full product builds
  • Custom CRMs
  • Two-sided marketplaces
  • Partner and customer portals
  • New surfaces on existing APIs

Revenue

  • Stripe billing and dunning
  • Referral and affiliate programs
  • Lead gen, routing and scoring
  • Pipeline reporting and dashboards
  • Self-service billing

Automation & AI

  • Claude API pipelines
  • Call transcription and analysis
  • Iterable journeys and onboarding
  • Background jobs with cost controls
  • Scraping and data collection

Foundation

  • Public APIs and webhooks
  • SQL, migrations, admin tooling
  • HubSpot, Slack, Teams, OAuth
  • Encryption, RLS, rate limiting
  • Retention rules and security review

Evidence

Three revenue systems, built end to end.

All three are complete and working. The first runs in production; the other two I chose not to take to market when my focus changed.

Real Estate Lead Distribution Platform

4 weeks

Rebuilt from scratch in four weeks, solo, with Claude Code. Its own service in its own repo, integrated with the company's main API for data — a new product surface added without disturbing the core backend.

Inside it: a custom CRM; self-service billing where investors manage their own cards and failed payments retry automatically; a two-sided marketplace; a referral and affiliate program with automated crediting; a partner portal with a public API and webhooks; an escrow office product. On top of that, 20 Iterable journeys run onboarding, activation and lifecycle end to end. It runs in production today.

  • Custom CRM
  • Stripe
  • Dunning
  • Marketplace
  • Public API
  • Webhooks
  • Iterable
  • Affiliate crediting
  • Escrow
The build story →

Sales Call Coaching Platform

6 days

Transcribes sales calls and turns them into coaching. Scores conversations against established sales methodologies, tracks trends across a team, pulls objection patterns into ready-to-use scripts, and sends managers a weekly digest instead of a dashboard nobody opens.

Claude and AssemblyAI pipelines running as background jobs across 37 serverless functions, with call ingestion from Teams, Stripe billing and trials, and HubSpot and Slack integrations. Around it: shareable reports, encryption at rest, rate limiting, enforced data retention, an incident-response plan, and two security audits I wrote and worked through myself.

  • Claude API
  • AssemblyAI
  • Supabase
  • Stripe
  • HubSpot
  • Serverless
  • Security audit
The build story →

Uncontested Divorce Filing Platform

7 weeks

Generates court-ready state filing packets from a guided interview — real PDF form-field mapping, validated at build time so a broken form can never ship. E-signature, Stripe checkout, 23 schema migrations, row-level security, and an accessibility pass.

  • React 19
  • Vite
  • Supabase
  • Stripe
  • pdf-lib
  • Vitest
  • RLS
The build story →

Not my scope

Worth saying plainly, so neither of us wastes a call.

  • I don't train or fine-tune models, and I don't do original ML research. I integrate models into products.
  • I don't inherit maintenance of a legacy codebase or debug systems someone else built. New work ships as its own service alongside what you already run — that's how the platform above was built.
  • I don't manage engineering teams or take a head-of-department seat. I've run sales floors and P&Ls — but hire me to build, not to hold an org chart.
  • I'm not the person for deep algorithmic work or performance engineering. I build business systems.
  • I don't sign non-competes — at any price. Everything I learn makes the next build better, and every client gets the benefit of that.

Contact

Tell me what needs to exist.

Five fields, no call booking, no qualification maze. I read every submission myself and I'll tell you straight away whether I'm the right person for it.

Prefer email? jonathon.peacock@me.com

Availability. I take one build at a time, and I'm taking the next one now. Based in the United States, working remote.

Existing client? Pay your invoice here.