How can your early stage startup use technical debt to survive and thrive? How does technical debt in young startups look and where does it come from?
It’s hard to avoid technical debt completely but you can manage it and use it to your advantage. Let us have a look how technical debt is created in startups and how you can keep it in check even when your company is in hyper growth.
The paradox of success
The most common way for startups to create technical debt is ironically the very thing that makes them succeed: A validated idea. You build things and test them out. Most ideas don’t stick. You move on. Until suddenly you have something that people really want and things spin out of control. That hacked together throwaway prototype is so sticky you can’t afford to lose your momentum. There is no time to rebuild it. You build upon it. That’s your first piece of technical debt – your prototype turned MVP.
The right kind of technical debt
The successful prototype sounds much like a eulogy of failed startups but it doesn’t have to be. Up to this point your technical debt is manageable and it’s enabling you to stay in business. You have turned your throwaway prototype into a bridge loan to get to the next milestone. You can use it to close the next funding round or spend money on customer acquisition to grab a foothold in the market.
Paying the interest on your technical debt
If you keep funding your success with debt it will catch up to you once one of two things happen. Either your growth will slow down or your technical debt has accumulated and development slows down. Both lead to you struggling to pay the interest on your debt. So it’s vital so reduce your technical debt before it spirals out of control. Here is a strategy to do exactly that.
Balancing the short term with the long term
When you build out your product you will come across technical debt. At this point don’t work around it but work through the technical debt. You need to understand the risk your technical debt carries and not get lost in the short term opportunities ahead. As a lead engineer or CTO it’s your responsibility to advocate maintenance work as a Must have, not a nice to have.
Unfortunately this ties the faith of your startup’s technical debt to one single person – you. To mitigate this we can try to bake it into the organisation’s behaviour by designing a process which balances the short term and long term thinking.
Manage technical debt through your product
When you build something new you should commit to do two things with it: Either you remove the feature if it does not bring in the expected results or you iterate on it. Axe any code before it turns into a liability or grant yourself the time to fix it and redo it properly. This strategy is effective because when you build a new feature you know the least about it, so even if you tried you probably couldn’t build it completely right. But once you’ve released it you have learned a lot more which will help greatly paying back that technical debt.
With this commitment the burden of fixing technical debt is not solely on you anymore. The product side is now your party in crime. However, in an early startup that probably just means two people instead of one. Once your organisation grows you need to ensure this attitude survives.
Culture can beat technical debt
When your company grows you want to fight technical debt before it gets out of control. Unfortunately the rapidly changing structures in a fast growing startup are a great breeding ground for technical debt.
You can try to establish specific roles like architects and lead engineers and processes like code reviews to fight your technical debt. But an engineer can’t manage technical debt unless the organisation enables them to. You need to create a culture which balances the short term with the long term thinking. A culture where engineers can take pride in their craft and not have to be the bad guys who say No all the time. Here are some hints how such a culture could look like.
Do less but do it well
Instead of getting trapped in a fear driven culture focus on your strengths. What makes your startup stand out from the competitors? Hone that skill. This is important to cut out distractions. It also keeps the technical debt at bay because you’re not racing from one feature to the next.
Celebrate your engineering
What your startup celebrates and rewards is what it creates more of. So if you only celebrate sale numbers and growth rates but none of your engineering accomplishments you end up with stunted engineering. So celebrate the engineering solutions and put the engineers in the spotlight. They are behind the scenes of product too often.
Hire the best and train them
Your technical debt is rarely caused by just bad engineering. But it can be part of the problem. Great engineers can avoid many forms of careless technical debt. You should leverage their skills to keep the growth of your technical debt in check. We all want to hire the best engineers. That’s easier said than done. But you can work with what you already have. Invest in training your engineers the best you can. This not only avoids technical debt but greatly improves the satisfaction of your engineers and their retention.
What makes startups successful is often the root of their technical debt. If your startup struggles with technical debt it’s important to note that this is neither a death sentence nor something to be ignored. Use it wisely and give your organisation room to tackle it so your startup can continue to thrive.