MVP: 7 Mistakes Every Founder Makes
An MVP isn't the simplest possible product — it's the fastest possible learning. Confusing the two costs time, money, and sometimes the entire company.
Read articleLegacy systems don't fail overnight — they extract a silent toll on productivity, talent, and lost opportunities. Quantifying that cost is the first step toward action.
When people talk about "legacy systems," most managers think of one thing: risk of downtime. But there's a far subtler — and far more expensive — cost that no dashboard shows.
It's the invisible cost.
How much of your team's time is spent working around system limitations instead of creating value? How many meetings exist to compensate for what the tool should do automatically? What's the turnover rate among engineers who can't stand working in a codebase that grows like spaghetti?
These numbers don't appear in the P&L. But they exist.
"Performance isn't a feature — it's the foundation. When the foundation cracks, everything built on top starts to crumble with it."
In a recent consulting engagement, we mapped +38h per month spent by a 4-engineer team just synchronizing data between two systems that should never have been separated. That's almost a full work week per month, thrown away.
Every time a developer needs to understand a business rule buried in 3,000 lines of undocumented code, the clock is running. Every manual deployment that takes 2 hours instead of 5 minutes. Every production bug that requires an emergency hotfix on a Saturday.
What isn't your team building while fighting fires? Every sprint spent on maintenance is a sprint that didn't deliver new value to customers. Slow systems delay decisions, and delayed decisions carry enormous costs in competitive markets.
Good engineers have choices. Nobody wants to work in a codebase where every change is an archaeology project. The cost of replacing a senior engineer — recruiting, onboarding, lost context — easily exceeds 3× their annual salary.
The result: $56k/year in invisible cost — before any production incident.
Not every legacy system needs to be rewritten from scratch. The decision depends on three factors: volume of needed changes, size of the problematic codebase, and the team's ability to sustain technical debt while delivering value.
Often, an incremental migration strategy — the "strangler fig pattern" — solves the problem without the risk of a full rewrite. You isolate the most problematic modules, create clean interfaces, and replace them gradually.
The key is to stop treating invisible costs as inevitable. They aren't. They're a choice — usually one that gets more expensive every quarter.
No spam. A biweekly newsletter with what's worth reading about engineering, product, and business.