Should you build or buy software? A question asked by many-a-DevOps engineer and IT manager. And for good reason – getting your monitoring solution right can make or break your customer experience – and therefore, directly affect your retention rates and revenue.
Often, it’s easier to opt for a quick, off-the-shelf solution during early stages. Later, it might be necessary to look for a monitoring solution that’s more robust, requires more implementation time, and monitors your growing infrastructure. In this post, we cover five primary decision factors when considering whether to build or buy software.
- Evolving needs
Your needs will evolve
Before we talk about budget, timeline, and the competitive advantages of building or buying, it’s important to talk about the evolution of your company’s needs so that you can weigh the pros and cons through the right lens.
As your company grows, so will your monitoring needs. You’re going to add new pieces to your infrastructure as your customer base (and their needs) grows. Tech from today will age, and in a few years, you’ll need some other tool, software, or update to get the job done right.
During early stages, you may want your engineers to focus on building the product and its features. Early-stage companies are focused on the must-haves and ignore the nice-to-haves. An early stage company will probably choose to invest in a solution that doesn’t have all the bells and whistles – they opt for what meets their immediate needs and price point.
Then as your company grows, you’ll have more time to experiment with building your own solution. For a more mature company, the nice-to-haves become must-haves. As your company evolves and as your consumers’ needs evolve, so to must your monitoring solution.
If you look at the chart above, you can see that when it comes to monitoring, organizations start with a focus on availability – that’s priority number one. As they grow and mature, they consider other aspects like latency, third-party components, benchmarking, KPIs, and understanding their competitors. Read more about this hierarchy here.
So, as we dive into the pros and cons of building vs. buying, remember that the stage of your company, whether early or mature, will play a significant role in your decision.
Building software is super expensive. If you go the build route, you’ll either use the time of your internal development team or outsource a big, expensive project to a firm (which will cost you hundreds of thousands, if not millions of dollars).
Buying is likely the more affordable option. You might pay a high installation fee, but even that fee, on top of the monthly/yearly recurring costs, will leave you paying much less than what you’d pay to build your own software. Plus, a bought solution is much faster to implement, which brings us to our next major decision factor.
Building your own custom monitoring platform will require months, if not a year or more of your company’s time—depending on how many developers, designers, and product team members you dedicate to the task.
You can’t only think about the time spent on the project; you must also consider the time NOT spent on other things—like fixing bugs, building new product features, updates, etc. Can you afford to spend less time on your own product? This is a critical question for both early-stage and mature companies.
How much time can you devote to maintain your new monitoring solution? It won’t fix itself once it’s built.
How long will your current engineering team stay with your company? Every company has turnover. You need to consider that you’ll have to train new engineers to manage applications that previous engineers built.
Buying a solution will mean a much faster implementation period. You’ll be monitoring your infrastructure as soon as the onboarding process is complete. Plus, if you purchase a SaaS solution, the maintenance comes with it. You won’t consume your team’s time with maintaining your monitoring solution. Instead, they can focus on fixing any issues that your monitoring software detects.
A custom monitoring solution is going to be as complex as it is thorough, and you don’t want a skimpy monitoring solution. The more complex (and it’ll be complex) the more time and money you’ll need to invest.
Before you decide whether to build or buy, you need to be aware of every piece of your infrastructure. You can’t only focus on web performance; you need to implement monitoring for DNS, CDN, cloud providers, third parties, and geographic locations of your customers.
If you’re going to build, you need to include each piece in your design. If you’re going to buy, make sure your chosen platform will monitor everything you’ve got.
A bought solution might not have every feature you’re after – but if that’s the case – you can look for something that’s open source and that integrates with many other products, so you can customize your purchased product.
What’s the advantage of building?
If you’ve gotten to this section of this article, and you’re still leaning in the direction of building your own solution, then you need to ask yourself one final question.
What competitive advantage does this huge time and money commitment give me?
If there is no competitive advantage – no edge over the competition for more sales, faster MTTR or MTTI, a better product than your competitor, etc. – then you probably shouldn’t build your own solution.
Takeaways for building or buying software
There are a few pros and cons for both building and buying.
- It’ll cost less to buy
- Buying is also faster
- Buying may or may not suit the complexity you need to monitor your infrastructure
- Make sure there’s a competitive advantage in your decision to build
Remember, as your company evolves and as your customers’ needs evolve, so to must your monitoring solution. Keep customer experience top-of-mind when you’re deciding whether to build or buy.