GTM Systems · AI · Automation
I build systems that turn GTM signals into decisions.
I work on the decision layer: signal detection, deterministic scoring, rejection logic, and a human wherever failure is expensive. I spent seven years carrying a number before this, which is why I build systems that refuse to send rather than systems that send more.

I mapped onto the membership property the CRM already had instead of creating a duplicate, so every record landed inside the enrolment workflow that was already running rather than beside it.
Every number here comes from a system that ran. Screenshots and test output are in the case studies below.
Selected work
01 · Own build · Jul 2026Opportunity Intelligence Engine
A 27-node scheduled run that surfaces accounts where a buying signal just fired, scores fit and intent deterministically instead of asking a model to invent a number, and stops short of the send.
Read case study →9 → 3categories collapsed into buckets02 · Client work · Aug 2026, three-week engagementReply classification and routing
A scheduled service that reads cold reply traffic, registers genuine positives against the event, and routes anything ambiguous to a human instead of guessing.
Read case study →1,056closed opportunities analysed03 · Client work · Aug 2026, three-week engagementPipeline intelligence
Re-keying 1,056 closed-won and closed-lost opportunities from deal level to account level, so re-engagement targets the company rather than whoever happened to sign.
Read case study →
04 · Own build · Jan 2026QuantumReach outreach workflow
Account research, ICP fit scoring, a quality gate, then a drafted first touch. The gate is the part worth talking about.
Read case study →9sequential decision gates05 · Own build · Aug 2025 to Aug 2026Rejection-first outbound
A signal-based outbound agent built to disqualify most of its own pipeline before spending a credit on it.
Read case study →Run the logic yourself
Two decisions from real systems, rebuilt so you can drive them.
No sign-up, no account, nothing leaves your browser. If you have never touched a CRM these still work: each one is a small argument about what a system should do when it is not sure.
Which replies are a real yes?
Cold emails get answered. Most of those answers are out-of-office notices and bounces. Something has to separate the four that matter from the sixteen that do not, without throwing away a maybe.
- Pick a reply. The classifier puts it in one of nine categories.
- Those nine collapse into three buckets: positive, unsure, negative. Four of the nine land in unsure on purpose.
- Now drag the confidence down. Below 0.70 anything becomes unsure and goes to a person, whatever category it was given.
The point: the floor is applied last, so no prompt change can route around it.
Open the reply router →Who at this company can you actually email?
A CRM records contacts against the deal they were part of. People change jobs and the deal record does not. Two years later the list looks full and is mostly wrong.
- Start on the deal view: every contact attached to a closed opportunity at this company.
- Switch to the account view: the people who work there now, resolved at company level rather than deal level.
- Watch which names survive the switch, and which appear only now.
The point: the obvious query returns the people who signed, not the people who can buy again.
Open the contact models →What I actually do
Five stages. Every one of them can say no.
A GTM engineer owns the path a record takes from raw list to a person deciding to send. Not the copy, not the campaign, the path. This is the one I build, and what I am accountable for at each step.
Check the CRM before you spend
Pull accounts from wherever they live, then run suppression against the CRM before enrichment rather than after. Existing customers, open opportunities and anyone already in sequence come out first, for free.
Cheapest provider first, stop at the first hit
Providers are ordered by cost, not by preference, and the chain stops the moment a record is verified. The number that matters is cost per verified record, not records enriched.
Two questions, never one average
Firmographic fit and buying intent answer different questions and must both clear their own threshold. Judgment goes to a model. Arithmetic stays in code, so a score can be recomputed by hand instead of taken on faith.
Every rejection carries its cause
Gates run in cost order, so an account that is going to fail fails on free data. Each rejected record keeps the stage that rejected it and why. A rejection you cannot explain is one you cannot improve.
A qualified record is not an outcome
Reply rate, bounce rate, cost per verified record, cost per meeting. And per gate, whether the records it passed reply better than a holdout of the ones it rejected. If they do not, the gate is only shrinking the list.
Source, enrich, score, gate, measure is the standard shape, and I did not start from the diagram. I got here by pulling apart the parts of my own outbound that were losing money. The names came afterwards, which is why I can argue for each stage rather than recite it.
Thinking in GTM systems
The case studies, argued properly
Where the reasoning gets room: rejection logic, enrichment economics, and the failure modes nobody puts in a case study.
rud27.substack.com ↗Field notes · LinkedInShort arguments, 12,000+ readers
Where I work out what is actually breaking in outbound, in public, usually in under 300 words.
linkedin.com/in/rud ↗About
For seven years, I was the system.
I ran the lists, wrote the follow-ups, and chased accounts that were never going to buy. ₹4.85 crore closed. Most of that effort went to people who should never have been contacted.
Then I ran customer success and saw where those accounts ended up. They churned, and almost none of them churned because the product failed. They churned because someone under quota pressure had qualified them badly eight months earlier.
So I started building. A civil engineering degree, a Docker container on a machine at home, a lot of evenings. The first system I finished disqualified seven accounts out of ten before it wrote a word. That was the design, not a fault in it.
Most GTM systems are built to send more. I build the part that decides not to. I am in Bengaluru, I answer my own email, and I would rather talk about a system that broke than one that worked.
Experience
GTM Systems Engineer Independent
Designed and ran a signal-based outbound agent for a year: Python, n8n, Docker, self-hosted, running unattended on a schedule. Nine sequential decision gates, cheapest check first, over 70% of accounts rejected before any outreach ran.
Claude and Groq wired into qualification and personalisation with structured output prompting, and a human review step at the final send.
GTM Engineer, Contract RevGenius
Won the engagement with a technical assessment, then shipped four things inside their stack: the reply classification service, the sponsorship pipeline dataset, an 8,132-contact CRM migration, and a lookalike enrichment engine that ran HubSpot suppression before enrichment rather than after, so no credits went on accounts already in the CRM.
Two of those are written up as case studies above. Published with RevGenius's written permission.
Customer Success Manager The Knowledge Academy
Post-sale lifecycle for B2B accounts: onboarding, adoption, renewal risk, escalation.
Traced churned and at-risk accounts back to how they were originally qualified, and fed that evidence into the rejection criteria used upstream in outbound. Deals that churn are usually a qualification problem, not a product problem.
Account Relationship Manager HeyCoach
₹55 lakh closed as the team's top performer, selling a technical education product to individual and employer-sponsored buyers.
Senior Sales Consultant TeamLease Services
₹1 crore closed selling HR technology into Indian enterprise buying committees. Led a team of four on pipeline reviews, call coaching and forecast hygiene.
Senior Sales Representative upGrad
₹80 lakh closed while running 60+ product demonstrations a month across a long consideration window.
Business Development Representative Unacademy
₹2.5 crore closed, the highest individual contribution on the team. Full-cycle: qualification, discovery, demonstration, close.
What I work with
GTM systems
The methods, which matter more than the logos. Signal detection and decay scoring, waterfall enrichment, ICP and persona scoring as separate gates, suppression and list hygiene, cost per verified record.
- Signal-based outbound
- Waterfall enrichment
- ICP and persona scoring
- Rejection gating
- Suppression
- Account mapping
- Cost per verified record
Engineering
Enough to build and run the thing myself, self-hosted, on a schedule, without waiting for an engineer.
- Python
- REST APIs
- Webhooks
- JSON Schema
- Docker
- SQL, querying
- Git
- Pytest
Platforms
Tools I have shipped production work in, not tools I have opened once.
- Clay
- HubSpot
- n8n
- Smartlead
- Apollo
- Amplemarket
- Airtable
- Supabase
- Customer.io
- Goldcast
- Make
- Zapier
AI in the pipeline
Models for judgment, never for arithmetic, and always behind a schema so the output can be validated rather than trusted.
- Claude API
- Groq API
- OpenAI API
- Structured output
- Confidence thresholds
- Offline eval sets
Deliverability
The part that decides whether any of the above ever reaches an inbox.
- SPF
- DKIM
- DMARC
- Domain warming
- Inbox rotation
- Bounce monitoring
- Blocklist monitoring
From the sales side
Seven years of it, which is why the gates above are set where they are.
- Discovery
- Buying committees
- Forecast hygiene
- Pipeline review
- Churn post-mortems
- Renewal risk
The open question
How I know a gate earns its place.
A rejection rate is not a result. Seventy percent rejected tells you the list got smaller. It does not tell you the right accounts survived, and I have watched people quote that number as though it did.
So the next thing I am building is a holdout. A small, deliberate sample of rejected accounts gets let through anyway. If the records a gate passed reply at a higher rate than the records it rejected, the gate has earned its cost. If both groups reply at the same rate, the gate is not selecting for anything and it comes out.
The same test applies per signal, per provider, per enrichment step. It is the only method I know that separates a filter which works from a filter which merely feels rigorous, and it is the first thing I would instrument inside someone else's stack.
Certifications and education
AI Skills Cohort
Generative AI Mastermind
Bachelor of Engineering, Civil Engineering
Contact
Open to the next GTM problem.
If you are hiring a GTM or RevOps engineer, or you have a pipeline that is spending money on accounts it should be rejecting, that is the conversation I want.
- Available now
- Bengaluru, or fully remote
- Full time or contract
- I reply within a day
Get in touch→
- Phone
- +91 96637 96925
- linkedin.com/in/rud ↗
- Résumé
- Download the PDF