The $50M inbound engine Kizen · first GTM engineering hire
underneath: a 4-object CRM data model and an attribution chain that propagates source truth
Read the full build
The problem. Inbound came from three places (web forms, event lists, Apollo activity) and reps spent their day cleaning contact data instead of calling people. No system turned a raw inbound signal into a rep-ready, enriched contact automatically.
What I built. Inbound automation that turns a raw signal into a rep-ready contact with no human touch:
- A Claude agent resolves company identity from the email domain
- ZoomInfo enrichment attaches contacts and firmographics automatically
- Routing assigns the right rep by territory and quota fill
- Web inbound, 400+ event leads (a $38M+ TAM), and Apollo activity all flow through the same pipe
Underneath it: a CRM data model I designed from scratch across 4 core objects, and 600+ documented changes shipped in 90 days with zero onboarding.
The failure that taught me the most. Before the attribution chain existed, $10.91M in marketing-sourced pipeline sat misattributed in the CRM, invisible to the team that earned it. The early system assumed source data would arrive clean. It never did. The fix was not cleaning records by hand. It was building inheritance: a Contact to Lead to Account to Opp attribution chain across 4 production automations with a standardized 8-value taxonomy, so the truth propagates instead of being re-entered.
Also in this system: a 4-automation bidirectional Apollo integration, 6 stage gates with a Slack bot that DMs reps their exact missing fields, and the attribution chain above.