We stopped asking our client to explain their own system.
Reading the code instead of interviewing people cut the client's discovery time by ~80% — from ~16 hours a month to 2–4 — and still landed 88% of changes right the first time.
A financial-services firm had to keep changing a 25-year-old, five-million-line core almost no one there still fully understood, on a fixed fee and a hard deadline.
Understanding the system is the hard part — not changing it.
A 25-year-old core is a system no single person can hold in their head. The people who built it have moved on. The documentation drifted from the code years ago, and at five million lines no team can read the whole thing. The running system is the only complete, current record of what it does.
So every change starts with the same problem: work out what the system already does, well enough to change it safely. Get that wrong and the gap shows up late — in UAT, or in production. On a system this old, it's easy to miss something — and the thing you miss is often the thing that matters.
On a system that moves money, the danger is the code no one remembers.
Its flows move money and carry regulated messages. A missed entry point is not a cosmetic defect — it can break a payment or a payout on live client money. And the risk rarely sits in the code that looks complex. It sits in the code nobody thinks about anymore.
Reading the code surfaced exactly that: a missing step in a money-movement flow that would have mis-stated a balance on a system of record — latent, invisible to anyone working from memory, caught before it ever ran. And it wasn't alone.
What memory told us
Nothing on the left was wrong — just incomplete.
What reading the code found
Exo Discovery reads the system before we ask anyone about it.
Most discovery is guesswork with a project plan: weeks of workshops asking people to describe a system from memory, then filing the gaps under "assumptions." On a 25-year-old core, memory is the least reliable source there is — and the code that's actually running, the most reliable one, goes unread, because no team can read five million lines in the time a scope allows.
That inverts the stakeholder conversation. Their experts used to spend the hours below teaching us the system. Now they spend them checking a map we've already drawn — and deciding what to change. We don't arrive with questions. We arrive with answers to confirm.
of the client's scarcest people's time — spent deciding, not explaining.
Senior stakeholder time, per month of scope.
One loop, run for every scope.
A new scope stood up in about a week — it used to take several. The engine did the reading; the client's hours went to confirming and deciding, not teaching. Each answer fed straight back, and the map re-ran.
Because the current-state map is built in days, not months, a client can put a date on the calendar before scoping is fully done. The part of legacy work that used to hold everything up no longer does.
Exo Discovery maps scope across a vast system quickly and completely, but it doesn't turn up knowing the domain. The judgement calls and the hardest edge cases still come from the client's experts and ours — now over hours instead of weeks.
Carrying a system you can no longer safely change?
Too large to hold in one head, too costly to get wrong — the first step isn't a rewrite. It's knowing, for certain, what the system does today. That's where realfast starts. Talk to us.
Anonymised · a financial-services firm. Delivered on a fixed fee. "A month of scope" = a month's worth of scoped delivery work.
Take this case study with you
Save a clean, print-ready PDF to share internally or send to your team.