What we replaced
Yallo Group's recruiting and outbound stack ran on three contracts: HubSpot for marketing automation, Apollo for outbound sequencing, and Vincere for the ATS. Combined annual cost: roughly USD 6M across the group entities that used them. None of them were broken. All of them were rented.
The brief from Sumeet was specific. Build the replacement inside the group. Use AI where the unit economics actually flip. Ship working software, not slides. We had eight weeks.
What we shipped
By the end of week eight, the new system — internally called the Yallo Intelligence Hub — was running in production. The numbers:
- 35 screens spanning lead intake, sequencer, ATS, and reporting.
- 8 weeks from kickoff to first production traffic. Working screens were live in week 3.
- 15,824 LinkedIn contacts classified by an agent that scored them against the personas we sell into. The classifier replaced two outsourced researchers and runs continuously.
- 5 specialised agents doing the work the SaaS stack used to: outbound sequencer, contact classifier, ATS triage, campaign analytics, and a CIO-research agent that drafts the first paragraph of every cold outreach.
- 1 human on the build — me, with Sumeet reviewing weekly. Claude Code did the heavy lifting on the implementation; the architecture decisions stayed with us.
The team that operates it is now larger than the team that built it. That is the point of handover.
What we learned
Three things I did not expect going in.
One — the agents are the cheap part. The expensive part is the data plumbing: getting the right context to the agent at the right time, in a shape the model can act on. Two weeks of the build were data. Six weeks were everything else.
Two — replacement does not mean re-creation. We did not rebuild HubSpot, Apollo, or Vincere. We rebuilt the workflows those tools were used for. About 40% of the features in the SaaS stack we replaced were features nobody at Yallo ever used. We did not port them. They were paying rent for nothing.
Three — eight weeks is real, but only because the scope was honest. We were not migrating ten years of CRM history. We were standing up the workflows the business actually runs on, today, on owned infrastructure. The honesty about scope is what made the timeline real.
The saasinator perspective
The lesson generalises. The SaaS contracts that look unmovable are mostly carrying features your team never used. The replacement project that looks impossible is one workflow at a time, against your real data, in your environment. The honest scope is the unlock.
What it cost
The internal build cost was under 6% of the annual SaaS spend it replaced. The payback was inside the first quarter of operation. Owned, transferred, no per-seat tax — and the workflows now improve every week instead of waiting for the vendor's next release window.
If you are sitting on a renewal for a similar stack, the conversation worth having is not whether replacement is possible — it is which workflow you would test against in a two-week pilot. That is the diagnostic.