Learning to ‘just say no’
Plenty of tech companies face the same dilemma; how to 'productise' their legacy software solution so they can scale it through cloud-based technology and ultimately satisfy the difficult questions all future investors or acquirers will inevitably ask. While the easy answer may be to start again, that's rarely an option. No CTO worth their weight would recommend a greenfield rewrite, and more importantly, doing so often just perpetuates a cycle that never solves the core issue.
Before getting involved in technology, Paul Kearney was in the military. Our first non-executive AitemologistTM Paul says: "I once found myself in a minefield in Afghanistan. The nature of minefields is you only find out you've entered them when you hit a problem. Or should I say, mine. At that point the battle drills say reverse out slowly but combat, much like product development, rarely accommodates textbook solutions. In this case we were within range of enemy forces and my only viable option was to move forward as quickly as possible."
If your legacy software solution is servicing the bespoke requirements of multiple clients, then you're probably facing two types of debt:
- Technical debt will already be familiar to you, as your CTO probably complains about it at every opportunity. While the solutions are painful, a well-executed cloud migration programme should (in theory) get you to a better place in a reasonable timescale.
- The second type of debt is more insidious; it's called ‘Product debt' or more simply, ‘YES debt.' YES debt is endemic in practically every tech start-up as these companies respond to the dramatically different needs of multiple clients. The net result is your nice, neat, logical start-up software acquires all sorts of additional appendages and fast resembles something built in Frankenstein's lab. Or to borrow the technologists' term, a ‘Frankenstack.'
AitemologyTM co-founder Luke Thomas explains: "A Frankenstack is a mishmash of hardware, software and bespoke requirements, the performance effects of which are catastrophic. Piecing together DIY systems architecture to support bespoke customers means your core product is no longer optimised. Instead, your databases slow down, your security is at risk and your path to cloud becomes opaque."
By settling for a Frankenstack, software start-ups continue to promote heavy customisation of their off-the-shelf products to meet a client's needs. They become grounded, lacking the time, budget and/or skills to re-platform their application into a more SaaS (software-as-a-service) version that can continue to support old and new customers alike.
So, what's the answer? While saying YES to every client adds to the technical debt and ongoing maintenance pain, the real problem is leadership. The only solution is to define the product roadmap and just say NO. While turning down business may feel counterintuitive, in the early days this downtime will help leaders establish a product-led strategy, plan their cloud migration and truly SaaSify their offering. Short-term revenue will undeniably take a hit, but in the long run these start-ups stand to benefit from the new, strategically targeted, NO culture. Reaping the rewards of reduced maintenance and new customer acquisition costs is reason enough.
Paul concludes: "I often think about that day in the minefield when I'm faced with difficult decisions. An obvious aspect of leadership is making judgement calls, but you need to consider every aspect of the long game. YES debt is the easy short-term option, but it's counterproductive to productisation. It gets you moving quickly but the next time you hit a mine, it may be the last."