Technical debt could be restricting your business in ways you may never have imagined. Have you ever asked your 'tech guy/gal/team' for something and they said it will take weeks to implement for what seams like a small change? Do you wish you could move your business into a new market, but your systems or website either can't or are too slow to adapt? Your business may be suffering from technical debt!
For those that have not heard the term before, lets quickly recap on what Technical Debt is (from Wikipedia):
Technical debt (also known as design debt or code debt) is "a concept in programming that reflects the extra development work that arises when code that is easy to implement in the short run is used instead of applying the best overall solution".
You can think of technical debt as the 'baggage' your tech team needs to wade through whenever they want to do something new. Whenever you ask for a new feature or to improve an existing tool, Technical Debt is the thing they have to work through before they can even begin working on the feature you asked for, every...single...time!!
It is not just a problem for your IT team
Don't be fooled from that description that this is a problem for your IT team. You yourself might be contributing to the problem.
Lets look at the part of the definition above "when code that is easy to implement in the short run is used". Whenever pressure is applied on your developers to deliver something quick, they inevitably will need to take shortcuts to deliver it. This will mean you tech team will implement code which is easy to write to allow them to meet the short deadline. Easy and short are never great words to use if you are hoping for something that will work reliably over a long period of time.
Code written in this way will also mean it will be difficult to maintain, meaning when you ask for something again, the last piece of Technical Debt you have contributed too is compounded with all the 'baggage' the team already has, making each request that little bit harder.
Technical Debt will cost your business money
Hopefully that has your attention! But it is true, there is no doubt with this, technical debt costs the business money. That cost could be a direct cost i.e. as your technical debt grows so does your head count of developers to manage the debt, or it costs you indirectly in limiting your business growth, as your current developers spend more of their time maintaining and less time innovating.
Either way this debt has a cost to your business whether you can easily see it or not.
How you can limit technical debt in your business
The bad news is, technical debt is impossible to 100% be rid of. But it can be limited to the point of it having very little impact on your business.
The simple answer is to throw more staff at it, although this will help and your number of developers will impact your potential innovation and growth, it is not the best long term solution to handle technical debt. The solution only needs to be a small change, that change is time.
Give you developers that extra bit of breathing room when it comes to requests, give them time to figure out the best solution. Give them time after the launch of a new feature to tidy up the code they have written, to write tests against the code (if they haven't already) to make sure future changes do not break the code they have just written. Give them time to look at the systems you already have running and remove or replace the problem areas.
The small amount of extra time given at this stage will save you a multiple of that time later down the line. But make it clear that this extra time you are giving them is to manage technical debt and not working on new features.
Your developers will work faster not slower
Although I am asking for more time for your developers, this does not mean your development department needs to work at a slower pace, in fact by removing your technical debt you will actually increase the pace of your developers, they will be able to become more agile in their approach to delivering solutions for you.
An effective team of developers will have the agility to experiment in new areas and deliver features fast, this can be achieved by ensuring your business adopts Lean practices, but that is a subject for a different post.
I have talked about technical debt for your developers and tech teams, but where else in your business are you paying a 'debt' for not implementing the correct solution or process in the first place. How long does it take to bring on-board a new customer, does invoicing a customer involve too many steps, do customers have to phone to get status updates taking up your staffs time? I ask you to think, how much of your staffs time taken up on tasks that, with a little work, could be shortened to give your staff more time to innovate and help grow your business?
This post was originall posted on LinkedIn by me https://www.linkedin.com/pulse/business-owners-technical-debt-crippling-innovation-growth-morledge