The Wall of Technical Debt
25.02.2020 | 3 min read
We often hear about business leaders’ concerns about technical debt and particularly about how to manage it effectively. We know that just like financial debt, companies need to be wise about incurring tech debt, because, if accumulated over the years, it can lead to a number of problems. But, is it all bad news? And what can you do to stay on top of it as a business? We speak to Mathias Verraes, software strategy consultant, about the methods for managing technical debt, and his prediction for how AI might impact this challenge in the future.
1. “Technical debt” is a term that’s used to describe software design choices that turn out to be ineffective, poorly selected, or no longer valid. Why do you think “technical debt” can be so detrimental to businesses?
I don’t think technical debt is inherently bad. Business take out financial debt all the time, it’s a way to invest in something before you have the money. There’s a finance department that carefully manages debt, optimises if and how to pay it back, negotiates interest rates, refinances debt… Technical debt on the other hand is invisible. The CTO doesn’t usually know how much technical debt they have. There’s not even a good way of measuring how much debt there is or how much impact it has on the business.
If we did understand the consequences of each suboptimal design choice, we could be strategic about which debt to pay back when.
2. You came up with the idea of a “Wall of Technical Debt” – could you tell us a bit more about what this is and how it works?
The software industry needs to figure this out, but it might take decades. In the meantime, I like simple approaches that can be implemented by a single team during a lunch break with no need for approval. With the Wall of Technical Debt, you start measuring only problems that you run into, and you fix the ones that you run into repeatedly. Not based on gut feeling as usually happens, but based on empirical data.
The next part is the really fascinating one to me. When technical debt becomes visible, the team starts having conversations: “Should I spend an extra day cleaning up this code? Is it worth it, what’s the ROI?” Taking out or removing technical debt changes from being decided by individuals, to being a team negotiation.
3. What are the main things that usually stand in the way of reducing, or even abolishing technical debt in a business?
Definitely the lack of visibility. Sure, people put them in digital issue trackers, but that’s the equivalent of shoving it under the carpet.
There’s no shame in taking out new technical debt, because you are not your code. Technical debt is an investment, not a crime — unless you’re hiding debt, then you’re cooking the books!
4. Do you think the rise of new AI solutions will have an impact on the collective “technical debt” of businesses? How, overall, do you see this issue panning out in the future?
Right now there are tools that attempt to measure some forms of technical debt, change patterns, time spent on code etc. I’m sure there are a lot of opportunities to make measuring massively smarter with AI, and even fixing some classes of debt. AI could give a CTO good inputs to decide where to focus efforts. The strategy itself will remain a human decision for a long time though.
Looking for other business tips? Why not take a look at our recent blog posts on this subject:
Thirst for Knowledge: How Technology will Shape the Future of Education
How Navy SEALs Methods Help Us Run a Company
Looking for a team to support you with your digital project? Get in touch with us on email@example.com – a member of our friendly team will get back to you right away.
Photo by Austin Distel on Unsplash