I’ve been a part of several ISV failures and there were several factors that they all had in common. A common factor with most of them was the leaders didn’t understand software design and development. They didn’t understand the costs, timelines, or the impact of constantly changing requirements.
In my career I’ve seen countless entities going through some of the same challenges, all struggling to break out and get recognized, all trying to catch lightning in a bottle, all trying to find that angel investor who will make all the struggle worth the effort. If you’re going through the journey, here are some of the gotchas you should be watching out for along the way.
Leadership doesn’t understand software design and development. You have a great idea for a new software product. You hire an old college friend who needs work and says she knows HTML, PHP, JavaScript and MongoDB. She tells you that she’ll need an additional developer and 3 months to design and write the app. After 4 months you still don’t have a working app, so you decide to switch gears and hire a professional development shop. Your costs quadruples overnight and they can’t use any of the existing code base because they’re a DotNet, React, and SQLServer shop. You decide to throw in the towel and move onto another idea.
Constantly changing requirements. You’ve worked in the industry for years, you know the processes like the back of your hand. You see a gap in the market for managing customer records. You put your development team on it to begin working on a prototype. They’re producing good code, but during every review you remember another process and data field that you forgot to tell them about. The project goes on seemingly forever and by the time its getting close to completion you realize what you’ve developed is the same as every other product on the market, there’s no differentiation and your chances of gaining market share are slim and none.
You didn’t bother with Design and jumped right into coding. Your development team is inexperienced, but cheap. They want to get right into coding a Minimum Viable Product (MVP) as soon as possible. They code for 3 months straight without any reviews and zero feedback. They deliver the application but the workflows are all wrong, functionality is either missing or incomplete, and there whole segments of the data structure missing. You share your feedback and the development team tells you they’ll need another 2 months to make all the changes and they won’t be able to add any of the other required functionality during this time. You’re over budget so you need to let 2 of the developers go. The timeline now extends out to 4 months, and you’re out of money.
Versioning – Your main client wants enhancements. You branch off your main development stream and begin building a custom version to meet their needs. Another client wants some additional customization and integration with their corporate branding. Now you have three versions of the product. Every update to the core app needs to be done in three places and you find yourself needing to hire more developers to maintain all three versions. The downward spiral begins.
Legacy Licensing Models – Business has been steadily falling off. Growth has stalled and customers have communicated that they no longer wish to manage all the hardware, databases, patches and upgrades required to use your software. Moving to the Cloud and a SaaS model might require years of development, and the business can’t survive that long without new revenue. You discount the product to help mitigate the cost of the hardware and other support products. There’s still no growth and you now have to decide who gets laid-off. You estimate you have about 6 months left before you shutter the business.
No Go-to-market strategy – You found a niche in the AI space and developed an impressive business model. You begin making the rounds for your Series A funding. Your friends and family are the primary investors at this point, they believe in you, but they’re not wealthy and really need a return on their investment. You manage to develop a solid product, and the feedback is fantastic, but you haven’t made a sale. You’ve invested in Google and Facebook ads, you’re spamming every email in your contacts list, and you’re now resorting to cold calling random companies in your vicinity. No one ever buys the product and your friends and family stop sending you cards for your birthday.
Cash flow – You have the billion dollar idea. Big companies are going to love it and eventually want to buy it. You’re going to build in the Cloud. All your designers and developers get accounts. You’re using DevOps, Analytics, API’s and spinning up virtual machines like they’re coming out of a Pezz dispenser. Costs are expensive, but manageable at first. Then the monthly Cloud bill starts to increase, incrementally at first and then things start to go parabolic. You’ve got wholesale failover and DR environments running without a finished application deployed. You then discover that two of your developers have been spinning up VM’s for crypto mining. Game Over.
The fix for most of these scenarios is actually pretty straightforward. It’s experience. You need people on your team who have been through these challenges before and can help you prioritize your time and your investments. Avoid these mistakes by developing a plan early in the innovation process. Get feedback from people who don’t have skin in the game and you may be able to avoid most of these pitfalls.