Who doesn’t like “plug-and-play” software that meets all the requirements (and folds our laundry too!) right out of the box?
But as we all know, this is rarely the case for enterprise software applications and platforms. Many companies face the common conundrum — should they build a custom solution or buy a third-party product, then build upon the existing framework?
This isn’t a decision to be taken lightly as it can have lasting impacts on your operational efficiency, ongoing costs, bottom line, and more. Feel like you’re stuck between a rock and a hard place? You’re not alone! We have helped many clients navigate the “build vs. buy” dilemma and here are some insights from the trenches, as well as our recommendations, to help you make the right decision.
“Build” refers to designing and developing a software solution from scratch, often using in-house resources. Most companies build custom software when they can’t find a third-party solution that meets their highly-specific requirements or integrates with their existing systems.
“Buy” refers to purchasing a third-party solution and often building upon the framework or platform to meet unique requirements, add functionalities, or integrate with existing systems. In today’s “there’s an app for that” era, there’s a “close enough” solution for tons of common problems. As such, buying a software solution to use as a starting point has become an increasingly cost-efficient approach.
Many factors affect the decision between building or buying. Here are some key considerations:
Is your challenge common in your industry? If it is, you can probably find many out-of-the-box solutions to build on. If the problem is unique to your company or falls within edge cases, then a “build” route may be right for you. However, don’t fall into the “we’re a snowflake” trap! Many people think that their challenges are unique, but upon talking to experts, they realize that just a few tweaks to an out-of-the-box solution can cater to their needs while saving them a ton of time and money.
Building a customized solution requires more than the upfront investment. It also involves long-term technical expenses associated with hosting, maintaining, and upgrading the software — many of which can’t be accurately projected and can throw a monkey wrench at your budget. On the other hand, buying software or subscribing to a SaaS product may be more expensive upfront but it helps increase the predictability of your expenses and gives you more control over your operating budget in the long-run.
The sooner your problem gets solved, the better off you are. You should consider the implementation timeline, opportunity cost, and time-to-value when deciding whether to buy or build a solution. Often, buying eliminates most of the opportunity cost as it shortens the timeline and minimizes the resources required. Also, buying can significantly reduce your time-to-value, especially if you can identify a solution that integrates seamlessly with your existing system or can be installed as an extension of your existing infrastructure.
The biggest appeal of building software in-house is that it’ll meet all your specific requirements. However, the flip side is that you’ll become reliant on the developers who write the code. For example, it’s not uncommon for companies to be left with unusable code bases created by engineers who have left the company. Building a solution from scratch also means that you’re solely responsible for maintaining the software for as long as you use it — which can be particularly challenging and costly in today’s fast-changing digital business environment.
There’s no one-size-fits-all answer to “buy vs. build” and it’s often a conversation about balancing the risks of each option with its benefits.
While you can build a platform to exact specifications, maintain complete control of your data, and limit your reliance on a third-party provider, you may incur a higher opportunity cost, compromise the quality of the solution due to lack of specialization, and create a technical debt (i.e., having to fix bugs in the future.) Most companies also can’t achieve the economy of scale to justify the upfront investment and ongoing operating cost.
Buying a solution allows you to shorten the time-to-value, minimize maintenance costs or unexpected IT expenses, and take advantage of specialization and economies of scale because a vendor sells the same solution to many customers. However, you’ll likely forego some level of control. For instance, you’ll rely on the software provider for security measures and data oversight. If you subscribe to a SaaS product, you may be affected if the vendor increases the price or goes out of business.
Buying is a more cost-effective solution for most businesses, particularly if:
You don’t want to be reinventing the wheel when a Tesla zooms by, right?
That’s why, after working with clients from many different industries over the years, we find that a hybrid approach of “buying” certain existing platforms, frameworks, tools, and templates and then building upon them is often the best way to accelerate outcomes, lower ongoing costs, and maximize return without compromising the specificity of the solution.
Unless you have truly uncommon requirements, it’s generally more cost-effective to buy some underlying framework for your solution and build your custom solution on top of it rather than to build one entirely from scratch. Keep in mind that practically nothing is completely custom in today’s heavily open source driven tech world. There’s likely something out there that can get you 80% of the way to your solution, paving the way for you to invest in the remaining 20% to create your perfect, unique solution.
Ready to explore whether you should build upon an existing system or from scratch? Want to find out if you can increase cost-effectiveness by making a commercially-available platform work for your specific requirements? Get in touch to schedule a free consultation and our team of experts will help you explore your options to make an informed decision.