The True Cost of Technical Debt
Technical debt isn’t always a bad thing, but without the right strategy and structures in place, you risk falling victim to the downsides technical debt.
In this article, we’ll explore the different types of technical debt, the associated costs and how to weigh up the risks and benefits of technical debt against your goal to develop an end product that doesn’t just meet the expectations of your users but exceeds them.
The types of technical debt
Technical debt is the time and associated costs of reworking a project that was typically developed with a limited solution.
We can categorise technical debt as unintentional, accidental or planned, depending on the circumstances and impact. For example, an app developed using the incorrect framework or without proper testing may result in significant accidental technical debt when the app is fixed or even redeveloped by another agency partner. We get a lot of businesses coming to us for a fix when this happens and it’s not great for the client or their project as it’s the worst kind of technical debt and can be the most expensive to amend.
Unintentional technical debt differs from accidental because we do expect it to an extent, but we put the precautions in place to account for it. Developing a complex solution is a learning process and will likely result in some level of accidental technical debt. The delivery team may identify new and better solutions as the project evolves, but through proper planning and strategy, they can implement required changes without challenging the integrity of the project or breaching the boundaries of accidental technical debt.
And finally, there’s planned technical debt, whereby we make careful and considered decisions in-keeping with a long term strategy, such as developing an MVP under pressure to meet a deadline or issuing a beta product to a small audience - more on that later.
Accidental technical debt: scaling your product
Avoiding accidental technical debt should be your highest priority if you intend to scale your product. You’ll find that the impact of accidental technical debt long outlasts the benefits of choosing the cheapest and quickest partner to develop your project.
When you have a problem that needs a complete tech solution, it’s not as simple as solving the problem and moving on. You need to consider your long term goals, even before writing that first line of code. How do you intend to scale your product? Who else could benefit from this project?
If you work with an out-of-the-box solution, there will always be a limit to its capacity, and eventually, you will feel the impact of this technical debt when the wants and needs of the consumer far exceed the solution you are able to deliver
For example, we worked with Elanders to develop a solution to their logistics problem caused by a system that was unable to handle increasing client demands. Elanders’ large-scale printing and logistics project involved the production and distribution of booklets for one of the UK’s most prestigious car manufacturers. At first, the technical infrastructure could deliver the required output, but as the years went by, the platform required iterative development and workarounds to increase capacity.
In Elanders’ case, the cost of accidental technical debt is two-fold. The cost of continuing to develop a product is one thing, but when that product is not to keep up with the growing needs of their client, the cost of making a mistake is even higher.
When developing a solution for Elanders, we took into account the current needs of their client and also the printing company’s future growth plans. Avoiding future accidental technical debt is about finding the balance between what works now, and what will continue to work in the future.
Accounting for unintentional technical debt
Bridging the gap between accidental and planned is unintentional technical debt. Even when the stars align and we have the desired timeframe, budget and brief to deliver our very best work, we still have to account for the occurrence (and resulting cost) of unintentional technical debt
New problems require innovative solutions and who better to explore these new solutions than our Associate Software Engineers? Bright-eyed and bushy-tailed, our associates are primed with the curiosity and ambition to delve into the power of new technologies, such as React. However, when you are exploring new languages and databases, you must account for the unintentional technical debt that comes with a learning process.
We can treat this as unintentional technical debt as it was not incurred on purpose (like planned) but also not the result of poor planning or budgeting, like accidental. Unintentional technical debt is like walking a tightrope, as we must balance the benefits of our appetite for exploration with the time lost to pursuing new and often less-trodden paths.
Planned technical debt: the good kind
When it comes to planned technical debt, the advantages of delivering a product quicker outweigh the cost of technical debt, and this is planned from the outset.
At KOMODO, we’re proponents of rapid prototyping and, in some cases, taking an MVP to market to fund future development cycles informed by valuable feedback from stakeholders and advocates.
Often in these cases, we work with businesses to deliver a quick turnaround under pressure - but even in the most time-sensitive cases, we don’t give in to the temptation of cutting corners or forgoing testing. It’s about properly communicating the strategy and determining key milestones across the desired timeline, all of which is vital to delivering a solution that meets the user’s needs.
In fact, when you’re working against the clock it’s more important than ever to invest in the right partner, who has extensive experience and allocates the time to testing, exploring a wide variety of solutions and always looking forward to the next stage of the project.
When you work with an out-of-the-box solutions provider on your digital project, you may save time and money at the start, but they are likely working to a designated end date so they can cash in the invoice and move onto the next one. That comes with variable risk and a high-chance of the types of technical debt we’ve delved into here, so it’s crucial to weigh these factors up in order to choose the right digital products partner.
Sign up to our newsletter
Be the first to hear about our events, industry insights and what’s going on at Komodo. We promise we’ll respect your inbox and only send you stuff we’d actually read ourselves.