Reimagining the Buy vs. Build Process
One of the most fundamental questions a tech executive must answer is, should we buy or build our software solutions? On the surface, this seems like a pretty straightforward question, but it can get complicated in a hurry.
The basic line of reasoning works like this: Is there a commercial solution that meets my needs? If so, I should probably buy it, because why would I reinvent the wheel? That would be dumb. On the other hand, if I have a unique need, or I want to create a differentiated customer experience, a custom solution may be the way to go.
Whenever I’ve been involved in buy vs. build discussions that’s typically where it starts. However, there are a ton of caveats and additional factors to consider.
Custom development capability
Just to make “build” a viable option, you need a decent development capability. Small companies don’t always have this, but most enterprises do. Are your developers trained in the latest techniques, languages, and development methodologies? Do you have an agile/product practice established? Do you have a user experience design competency? Do you have secure development practices?
If you can answer “yes” to these questions, you are in a good position to consider the “build” option. If not, then you may have to pick among several buy options.
Cost
Another factor that always comes up is cost. You may assume that buying commercial software will always be cheaper than “reinventing the wheel” but often, that’s not the case. It’s important to consider the Total Cost of Ownership (TCO). The salesperson for the vendor may provide their own estimates of that, but you should do your own analysis.
It’s too easy to focus on the software licensing and implementation costs alone and forget the incremental cost to run, maintain, enhance, and upgrade. I often hear statements like “It’s SaaS, so the incremental recurring support costs for internal staff should be zero.” That’s never the case. It may be low, but it’s not zero.
You may be wondering at this point, philosophically, how could it be possibly cheaper to build something yourself than buy it? That seems to defy common sense. How could a company make money selling you something for a higher price than it would cost you to do it yourself? That sounds bananas. Well, I agree in principle, but in practice, I’ve seen it time and time again. Always do the math.
Bad commercial software
I hate to say this, but you all know it’s true. There’s a lot of really bad commercial software out there. I mean really bad. It’s easy to be hard on our internal development staff and look sideways at our homegrown software solutions, but have you seen the commercial software that companies pay good money for? Some of it is an absolute heap of trash. I won’t name names, but you can all think of many examples. Yes, many of these companies are still in business… for now.
I think a healthy skepticism is always warranted when evaluating commercial software companies. Here’s a bar they should all be able to clear: Do they live up to the standards that you set for your own internal developers and custom solutions? If they do, great. If not, please weigh that heavily in your decision. You aren’t just buying a shrink-wrapped product, you are forming a long-term relationship with another company. It’s worth figuring out if you have compatible quality standards before you decide.
Portfolio management
Most of the buy vs. build decisions get made in a vacuum. Someone has a need and a budget for a discrete capability. Make this decision 1000 times, and you have a massive portfolio of various commercial and custom solutions to manage.
Without overall strategic guidance, this can get unwieldy in a hurry. So, in addition to the factors I’ve already mentioned, you should consider: “What am I trying to strategically achieve in IT, in the business, and in this overall portfolio of business capability?” It’s a powerful question, and it should carry a lot of weight.
Integration
When I talk to enterprise technology executives around the globe, there’s a common challenge we’re all working on. To do big, enterprise initiatives, we need to integrate the data and functionality of disparate systems across the landscape. This is a very tall order. In my experience, some software companies make this easy, and some make it nearly impossible.
Unfortunately, this wasn’t something you thought of back when you bought it 10 years ago, but everyone is dealing with it now. While you can’t change the past, you can influence the future. When you buy commercial software, figure out how easy it is to integrate with other systems.
What is commercial software?
You all probably think about commercial software as a complete, full-stack solution. It has a user interface. It has an application engine. It has a database. It runs self-contained and does everything you need.
For the reasons I stated above, I think that paradigm is going to slowly change. Fortunately, the latest technologies have also changed to enable this shift. Some commercial software companies are starting to pick up on it, and I’m loving every minute of it.
Allow me to cast a vision of what’s possible:
You just need commercial data. You don’t need the app and the interface that comes with it. You can subscribe to that data, and get it right in your data lake where you need it.
You need application logic. You don’t need the interface. You can consume the API endpoint and surface the functionality in your application.
You need a user interface. Not the whole thing, but just a piece of it. You can integrate a micro front end right into your existing user experience.
The role of a technology executive is shifting. It’s no longer just about buy or build, then implement and run. We build enterprise cloud-based systems, woven together through modern data and integration systems. We partner with modern like-minded tech companies who offer systems and services explicitly designed to be consumed and integrated in this fashion.
This is why we migrated to the cloud. Not just run more efficiently and flexibly. But to elevate and modernize our entire way of building, buying, integrating, designing, and delivering enterprise technology solutions.
The lessons learned from decades of buy vs. build decision-making still apply but there’s a whole new way to get it done.
Read this article on my blog site or listen to it on my podcast🎙️