Technical Debt: The Silent Killer

Explaining the underlying cause of most bad software and the reason it's difficult to replace

Jamie Robinson

Founder of Mashoom and a mechanical engineer. Passions include teaching, questioning the status-quo and working too hard.

Written

5 min read

There’s a lot of talk about disruptors in the market, and we imagine the risk of a maverick approach coming along and wiping out all that went before it. Of course, it’s possible for that to happen, we can all think of an example or two. The reality is that this dramatic disruption is probably not the greatest threat to a product in the market. Instead, there’s a silent killer in the software world: technical debt.

What is technical debt?

Like any kind of debt, this implies something is building up and will need to be paid back (or addressed) at some point in time. And just like commercial debt, if that payback or address goes way overdue, bankruptcy ensues. In the same way, technical debt piling up may lead to a “game over” situation in the marketplace.

Technical debt typically happens in either of these two ways:

  1. The world moves on; your existing code and technical infrastructure will become outdated – so there’s a scramble to catch up. And in this case, usually an easy quick-fix development is chosen over a more robust reworking of your solution. Think of this as the multi-band-aid approach.
  2. New features get added here and there – which is normal in any software development lifetime. However at a certain point, the underlying code needs to be revisited. There’s only so many new bits that can be piled on top of an existing and ageing base, before it becomes clunky and collapses. Think of this as piling more and more luggage onto a wheel-barrow and still expecting that wheel-barrow to be an effective means of transporting your towering cargo.

Neither of these 2 points are usually well understood by non-technical people. So it’s hard for many businesses to spot the accumulation of their own technical debt – they rely heavily on their own CIO / CTO to monitor and flag when it’s time to clear the debt and start afresh. And hope that they can articulate the need for the strategy and budget approvals needed to do so.

Clearing technical debt by refreshing product development takes time and resources. And if the market share is still looking good, then where is the urgency?

What compounds the problem is if the business has a recognisable and trusted brand in their market segment. They may continue winning business even if their solution is not (anymore) the best one. Why? Because people buy what they feel is safe – it’s risk management.

That’s what mostly keeps the competition at bay – especially the competition from younger, sexier start-ups who may have better technical solutions but not yet the brand clout or market presence to challenge the goliaths of their world.

Who gets caught up in it?

From an external perspective, tech debt is tricky to spot but it affects many businesses: older companies as well as younger start-ups, large organisations and small.

The bigger companies usually carry technical debt because of legacy system. These are systems that have been used for a long time, often designed in-house. Time has moved on and they haven’t been updated under the manta of “if it isn’t broke, don’t fix it” or “we will get to it later”.

Any company could inherit technical debt by purchasing software solutions that seem like a good option – usually because they are tried and tested brand names or hip start-ups.

You may think that tech companies would be less at risk than the rest because by nature they should be staying up to date with technology. However, many tech companies are heavily laden with technical debt either because they have grown really quickly and haven’t been managing this effectively.

Of course tech companies become large tech companies, who have start falling into the same trap: not keeping up to date on their own products. The difference is that these products are still being sold out there in the market; it’s not just themselves they’re harming.

Why does this matter to small businesses?

Whether you are reading this article as a software product business or as a consumer of software solutions, technical debt is a topic that should be on your radar when evaluating your options going forward.

Software is either an enabler for your business, or a liability. It is critical to know how ready any software is to grow with your business - whether it be your own product that is out in the market, or a software that you are considering using within your own business.

So how is it the silent killer?

Sales figures may be masking the seriousness of the situation for some time, but overheads both in terms of time and money will start to increase. When people are working with ill-fitting software solutions, they will spend more time fighting the software or working in parallel processes (like keeping a side excel sheet) than creating value.

You cannot get out of a massive technical debt hole easily nor quickly. It will hurt getting out, but even more so to ignore it. Of course the best solution would be to avoid getting into debt in the first place, which is perhaps an idealistic notion.

What you can do is be very aware of this issue, make sure you place your trust in companies that will keep software up to date for you.