I build AI outbound systems — and the data layer that makes them actually work.
Most AI outbound doesn't fail at the AI. It fails at the data underneath it. I'm a GTM engineer working on that layer — enrichment, data quality, signal validity — the unglamorous part where the results actually come from.
Ninety seconds on what I do — and why the data is the whole game.
If "the AI isn't working" keeps turning out to be the data all along, this is the channel for you.
Everyone's upgrading the engine. Almost no one's checking the fuel.
We've spent two years bolting AI onto outbound — better copy, smarter sequencing, agents that personalise at scale. And a lot of it still lands flat. The reflex is to blame the model, the prompt, or the channel.
I think we're debugging the wrong layer.
An AI agent writing to a contact is only ever as good as what it was told about that contact. A stale title. A company that moved off the tech you think they're on. An email "verified" by a tool that only checked the syntax. The AI didn't fail — it faithfully acted on garbage.
Most AI outbound doesn't have an AI problem. It has a data problem wearing an AI costume.
The layer underneath the machine.
I build the full AI outbound stack — agents, enrichment, sequencing. But the part I go deepest on is the layer everyone skips: whether the data feeding it is even true.
Not "more fields" — fields that are current, sourced, and right. The difference between personalisation and embarrassment.
Freshness, coverage, and verification treated as ongoing infrastructure — not a one-time list scrub.
Acting on signals that actually mean what you think they mean — so the AI's confidence is earned, not assumed.
I'm working this out in the open.
I'm not here to sell you a finished system. I'm here thinking through a problem I believe the market is getting wrong — publicly, daily, including the parts I'm still figuring out.
Every weekday I publish what I'm seeing: a teardown of a failure mode, a framework in progress, a contrarian take on where GTM teams are misallocating effort. Over time it's adding up to a way of thinking about the data layer that I haven't seen written down anywhere else.
Got an AI outbound motion that isn't converting?
Nine times out of ten, the bottleneck isn't the AI — it's the data underneath it. If that sounds like your situation, I'm happy to compare notes.