Technical Debt, Obligation and Independence
I am convinced that saving costs while running a startup is an undervalued skill. Unless actively managed, costs will quickly bloat out of control and sink a startup. Developers often talk about technical debt, but there’s an equally dangerous phrase I call technical obligation. Technical obligation also has an equally dangerous side affect, financial obligation.
Technical obligation in a startup is when a startup relies on various pay-as-you-go services as a solution to their technical problems.
Technical obligation in a startup is when a startup relies on various pay-as-you-go services as a solution to their technical problems. This usually takes the form of a SaaS product. While the SaaS product solves immediate technical problems and needs, the startup quickly finds that it is difficult to function without these services — they have acquired technical obligation.
Identifying Technical Obligation
When I was CTO of Simplecast, I had two main responsibilities to worry about. 1) Make sure that the infrastructure could handle exponential growth and 2) keep costs from increasing exponentially with that growth. Simplecast’s infrastructure at the time was extremely heavy on costs and far from being cost-effective. Despite everything being built on a great platform and full of great features, those features came at very a high price.
In addition to the current cost of servers, there needed to be added at least another $300/month worth of servers to handle the traffic they were receiving at the time. To make matters worse, the infrastructure in its current condition was trending toward an additional $1,000/month for growing with the expanding user base. RSS feed endpoints alone were handling over several million requests a day.
Despite user growth, revenue was still overshadowed by the disproportionately high server costs . Doing the work of fixing the core problems was not an overnight job, nor was it something that could have been accomplished in a week. There was significant technical and financial obligation to the server infrastructure (and the companies providing it) in a way that was hurting Simplecast’s overall revenue.
It should be noted that not all technical or financial obligation is bad. In the case of Simplecast, a different server infrastructure solution was needed. They needed a system that wasn’t going to cripple them financially, both at their current and future volume.
Reducing Technical Obligation
The situation that Simplecast was experiencing is a familiar problem startups encounter once they hit their growth phase. Startups have to be scrappy and fast. Startups are severely underresourced. Decisions have to be made between paying for the easiest and quickest solution or moving slower to build a cheaper one. Slow usually doesn’t win and those free SaaS plans are oh so enticing to a startup.
Unfortunately, once a startup starts growing, they graduate from the free or cheap plans to something that suddenly doesn’t make sense in relation to the revenue they are bringing in. Like Simplecast, they suddenly find themselves in the technical obligation phase. This is an extremely dangerous place for a startup to be. They don’t necessarily have the financial resources to scale appropriately with their current solution, but they desperately need the traffic.
How can a startup mitigate this unfortunate position they put themselves into?
Pre-planning - Most of the time it’s extremely easy to take a little bit of extra time to plan for costs and how they will increase with growth. There’s a middle ground that can be struck between quick and easy (and eventually expensive), or slow and cheap. Of course, if a startup is moving so fast that they don’t have time to plan, they’ll inevitably make poor decisions around how their technical obligations will or will not grow with the company.
Proactivity - Similar to technical debt, obligations are a known “thing” that will always exist. The wisest startups are those that consistently carve out time to deal with technical debt and obligations. Like weeding a garden, the longer you put off fixing things, the harder it is to fix them.
Outside Help - While Simplecast was fortunate to have people that could solve their technical obligations, not all startups are that lucky. This is why it’s extremely important for a startup to enlist the help of people who have the knowledge and experience for evaluating and solving the technical problems a startup might face.
The Road Ahead
While a user might not ever know or care about what has been done with a startup’s infrastructure, they will most certainly “feel” it. A better foundation means a faster and more reliable service. A cheaper foundation means that costs won’t have to be passed on to the user. Both the users and the startup win.
If you are in need of someone to help you reduce your technical obligation shoot me an email as I can help you!