Problem
A revenue operations practice that argues systems fail quietly has to prove it on its own property. Every part of this had to capture before it called out, fail loudly when it broke, and be checkable from outside.
John Zebell III
Revenue Operations · GTM Systems & Integrations · AI Automation
CRM architecture, lead lifecycle, routing, reporting, and the AI workflows that take the manual grind out of them. I build for the failure case first, because the way these systems break is quietly: the workflow reports success, the report still runs, and the number is wrong. Every build below shows the live wiring next to a plain-language map of how it runs.
Selected builds
Full stack · site, intake pipeline, assistant, verification · Next.js + Supabase + n8n + Claude
A revenue operations practice that argues systems fail quietly has to prove it on its own property. Every part of this had to capture before it called out, fail loudly when it broke, and be checkable from outside.
Six pages on Next.js, a form that writes capture-first to Postgres before any external call, a Discord notifier that fires only after the row exists, and a site assistant running through n8n with structured output and full conversation logging. Every external call has its own error path.
A submission survives a database outage, a model timeout, or a failed notification, because the record is written before any of them run. Failures return a real error rather than a success the visitor can’t act on. Live at purviewops.com.
The order is the point. A provider timeout, a failed notification, or a model error all happen after the record already exists.
Next.js on Vercel, statically prerendered, no client JS beyond the assistant. Postgres on Supabase with row level security and no policies, so the table is unreachable except through a server-side key. The assistant runs through n8n with a structured output schema, so the classification it returns is one of four values rather than prose that has to be parsed. Both sides of every conversation are logged, including the ones where the model call failed.
Go-to-market · end-to-end sourcing, enrichment, scoring & sync · n8n + Apollo + ZeroBounce + GHL + Airtable
A form fill is not a qualified lead. It is only worth acting on if it is real, reachable, and ranked. Most intake skips that work, so junk contacts flood the CRM, reps chase bad emails, and nobody knows which lead is actually worth a call. The qualification has to happen before anything hits the CRM, not after.
An eight-stage pipeline that takes an inbound form submission and turns it into a verified, scored, CRM-ready lead. It matches the lead to its campaign, enriches it through a per-campaign configurable path (Apollo, UpLead, or both), dedups, verifies the email, scores and grades on firmographics and reachability, assigns outreach sequences, and only then syncs the clean record to the CRM. It finishes with an AI mini-audit that scrapes the prospect’s site, checks their visibility, and drafts a personalized email.
Only verified, scored, routed leads reach the CRM, so the data layer stays clean by design. Ran live, and the same enrichment-and-scoring architecture also handled standalone lead sourcing at volume. Each stage logs a summary, so a failure surfaces instead of silently dropping leads.
A form fill comes in, gets enriched per its campaign, and only reaches the CRM once it is verified and scored. The sync is deliberately last.
Eight connected n8n workflows. A form submission is matched to its campaign and enriched on a configurable path, then verification, scoring, audience-building, sequencing, CRM sync, partner qualification, and an AI mini-audit each run as their own stage.
View the n8n wiring →Two verticals · capture, consent, routing, nurture, reporting · GoHighLevel
A wellness and medical-tourism business captured leads at events but had no system behind it. Leads sat unworked, attribution was lost, and value stalled at the entry stage. The constraint was conversion infrastructure, not lead volume.
An end-to-end capture and nurture system across two isolated sub-accounts: QR-to-form intake, standalone email-consent gating with DND suppression, interest-based routing into vertical pipelines, a discovery-call branch for high-intent leads, multi-email nurture sequences, and live dashboards with smart lists for attribution.
Live at a single 2,500-person event. 107 leads captured without losing one, 81 opted in to email marketing, and 29 requested a discovery call, routed to a closer in real time. Built and debugged solo, in three days, on two days notice.
Real figures from a single live event. Counts only, and each one is what the system recorded.
Content ops · AI generation with compliance gating & self-testing · n8n + Claude + Postgres
Building a medical knowledge base by hand is slow and risky. A paid specialist wrote cards one at a time, and nothing checked whether an answer was actually supported by its source before it went live.
An eight-stage pipeline that generates cards across three content types, runs every one through a compliance auditor, then tests its own output: a separate model answers questions from each card and a judge scores those answers against the source. Only cards that clear the threshold auto-publish.
Publication was gated at an 80% pass threshold and 95% of cards cleared it, so roughly 5% routed to manual review rather than shipping. The work replaced a paid outside specialist. Anything flagged unsafe never publishes.
The judge is a separate model from the generator, so a card can’t pass by grading its own work. That test loop is what backs the 95% number.
Eight coordinated n8n workflows, one per stage. Generation across three content types, a compliance gate, Q&A generation, the generate-answer-judge test harness, and export with verification.
View the n8n wiring →Back of funnel · behavioral deal scoring, model validation · PostgreSQL
Reps decide where to spend their week on vibes. Which open deals are actually heating up and which are quietly dead looks the same in a pipeline list, so time goes to the loud deal instead of the winnable one.
A model that learns the behavioral fingerprint of past won and lost deals, then scores the open pipeline against it. The signal weights are derived from each signal’s real separating power, not hand-picked, and the model is validated on held-out deals so it proves rather than memorizes.
A ranked call list with a plain-English action per deal. Each row shows the signals behind the score, so a rep sees why a deal is hot, not just a number.
Runs on standard CRM engagement data. The queries and validation are in the repo.
Synthetic pipeline. The score is learned from closed-deal behavior and validated on held-out deals, not hand-tuned.
Back of funnel · AI risk scoring, guardrails, audit logging · n8n + Airtable + Postgres
Deal health lives in call notes nobody re-reads. A rep can miss that a deal is single-threaded, has no timeline, or that the buyer is quietly weighing an in-house build, until it’s too late to act.
A one-click audit that reads a deal’s call history, scores its risk, flags the red flags, and writes the assessment back to the record. Every run is logged with cost, latency and outcome, so the system can be checked, not just trusted.
Reps see risk before the deal goes quiet. The score is advisory and the rep still runs the deal. Failures surface to a human queue instead of disappearing.
Then I built the queries that could prove the whole thing useless, and the report they generate. Both are in the repo.
Sample deal data, real pipeline. Every audit above was generated live by the workflow, not written by hand.
Go-to-market · agent-driven competitive intel & personalized outreach · n8n + Claude + Qdrant + Apollo
Good outbound is an intelligence problem, not a volume one. Writing every email from scratch ignores what the market already proves works, and generic personalization at scale reads like exactly what it is. The hard part is knowing which angle fits which lead.
A three-stage agent pipeline. It monitors 200+ competitor newsletters and distills them into a deduplicated library of proven strategies using vector search, matches each lead to the best-fit strategy semantically, and drafts personalized outreach with a two-stage writer that generates then edits. Formatted to read human, with a full multi-touch sequence per lead.
Competitor sources analyzed into a deduplicated, evidence-weighted strategy library, and lead-specific campaign plans with subject lines, angles, offers, and cadence generated end to end. Built, tested, and validated, and designed to move to a new vertical by swapping prompts and sources.
Vector search does the matching and dedup, the model handles judgment and prose, and idempotency tagging means no lead is drafted twice.
Three connected n8n workflows: a newsletter intelligence engine with semantic dedup, a campaign matcher that searches the strategy library, and a two-stage email writer that drafts then edits before writing to the CRM.
View the n8n wiring →Also built
AI document pipeline
An eight-stage automated pipeline that generates compliance-checked medical knowledge-base content, validates it with built-in Q&A testing, and formats it for delivery into different systems.
Generation, a HIPAA compliance audit gate, and a hallucination eval harness run as separate stages, with a judge model from a different family scoring output against source so nothing self-grades.
Retrieval-augmented generation, Qdrant
Production RAG assistants on a Qdrant vector store that serve instant, sourced answers from large document sets, so staff and customers get fast answers instead of reading manually.
Turns static document libraries into searchable, sourced, on-demand answers for internal and customer use.
What I work with
HubSpot, GoHighLevel, lifecycle stage management, lead routing and follow-up, pipeline and deal-stage setup, systems integration, regular audits, data governance.
Workflow automation, nurture and re-engagement sequences, email and SMS systems, n8n, Zapier, Make, Airtable, reporting dashboards, KPI tracking, data hygiene and deduplication.
Claude and OpenAI in daily use, RAG assistants, prompt engineering with schema-constrained output, API and webhook integrations, idempotent workflows, human review on the edge cases, and audit logging in SQL so the system can be checked rather than trusted.