If there’s one thing I see time and again in organisations striving for agility, it’s the silent anchor of legacy systems. These are the old, creaking platforms and applications that, while once the backbone of the business, now act as a brake on innovation. I’ve worked with countless teams who are desperate to move forward, to deliver new features, to delight their customers—only to find themselves tripping over the same old obstacles, time and again.
Let’s be clear: legacy systems aren’t inherently bad. In fact, the very word “legacy” is a bit of a misnomer. A system that’s been around for decades isn’t a problem in itself—look at Windows, for example. It’s been with us since 1985, and yet nobody in their right mind would call it a “legacy system” in the pejorative sense. Why? Because it’s continually updated, maintained, and improved. The friction is managed, the rough edges are sanded down, and the system evolves.
But most organisations aren’t Microsoft. Most organisations have systems that have been left to gather dust, patched and propped up, but rarely given the attention they need to remain fit for purpose. And that’s where the trouble starts.
Friction: The Silent Killer of Innovation
Every time you put something in the way of your engineers—an outdated API, a brittle deployment process, a database that nobody dares to touch—you add friction. And friction, in the world of software engineering, is the enemy of progress.
- Friction slows down delivery. Lead times stretch from days to weeks, or even months.
- Friction breeds fragility. Deployments become nerve-wracking events, with everyone crossing their fingers and hoping nothing breaks.
- Friction stifles scalability. The effort required to change or scale the system becomes so great that it’s simply not worth it.
I often compare this to the locks on your house or the alarm on your car. These measures don’t stop a determined thief, but they do dissuade the vast majority of opportunists. In engineering, though, friction doesn’t protect you—it just stops your own people from doing the right thing. Most engineers aren’t going to spend hours wrestling with a broken build pipeline or deciphering a spaghetti codebase. They’ll do what they can, but eventually, they’ll give up or work around the problem. And that’s when quality suffers, innovation stalls, and your competitors start to pull ahead.
The Real Cost of Legacy
It’s not just the engineers who feel the pain. Management feels it too, often in the form of endless approval cycles and business cases for “big investments” that don’t seem to deliver direct value to customers. I’ve sat in those meetings, trying to explain why we need to spend months refactoring a system that, on the surface, seems to be working just fine. The value isn’t always obvious—until, six months down the line, you realise you can’t onboard new users, or you can’t deliver that killer feature your customers are clamouring for.
The problem is rarely a lack of willingness. It’s a lack of understanding. If you don’t see the friction, you don’t see the need to remove it. And if you don’t remove it, you’re stuck.
What Makes a System “Legacy”?
Let’s return to that Windows example. The reason Windows isn’t a “legacy system” in the negative sense is because it’s actively maintained. People collaborate to remove friction, to keep the system moving forward. It’s not the age of the system that matters—it’s the attention you give it.
- A legacy system is one that’s no longer evolving.
- A legacy system is one where friction accumulates, unaddressed, until it becomes insurmountable.
- A legacy system is one that holds you back, rather than propelling you forward.
What Can You Do?
If you recognise your own organisation in this description, you’re not alone. But you do need to act. Here’s my advice, based on years of helping teams break free from the shackles of legacy:
- Identify the friction points. Where are your engineers struggling? What’s slowing down delivery? Be honest and specific.
- Prioritise continuous improvement. Don’t let systems stagnate. Make maintenance and refactoring a first-class citizen in your backlog.
- Communicate the value. Help management understand that reducing friction isn’t just “technical debt”—it’s the foundation for future innovation.
- Invest in your architecture. Modernise where it matters, but don’t chase shiny objects for the sake of it. Focus on what will actually remove friction and enable progress.
- Celebrate progress. Every time you remove a boulder from the path, acknowledge it. Build a culture where continuous improvement is valued.
The Bottom Line
Your legacy systems are holding back your ability to innovate, to shorten lead times, to improve quality, and to scale. You need to fix them—not because they’re old, but because they’re in the way. Remove the friction, and you’ll be amazed at how quickly your teams can move.
If you want to build a truly agile organisation, start by looking at the sand in your gears. It’s time to get out the sandpaper—and, if necessary, the sledgehammer.