Engineering Leadership

Engineering Leadership

When Should You Buy vs Build in Software Development

๐ŸŽ Notion Template: Buy vs Build included!

Gregor Ojstersek's avatar
Gregor Ojstersek
Oct 30, 2024
โˆ™ Paid

Intro

This is probably one of the most talked about topics when developing software.

Every organization, from small startups to big enterprises is asking themselves this question regularly.

Iโ€™ve been asked 2 times last week about my opinion on this topic. And weโ€™ve broken it down and come to a conclusion to both.

And today, I am sharing my opinion and experience on this topic with you!

This is an article for paid subscribers, and here is the full index:

- What actually buy and build mean in Software Development?
๐Ÿ”’ A lot of the things that we are building are combinations of both
๐Ÿ”’ Should you build customizations to something that you bought?
๐Ÿ”’ Should you buy additions to something that you are building?
๐Ÿ”’ To buy or to build, that is the question
๐Ÿ”’ ๐ŸŽ Notion Template: Buy vs Build
๐Ÿ”’ Buy vs Build example: Choosing a Design Library
๐Ÿ”’ 1. Assess the importance of the 5 main criteria
๐Ÿ”’ 2. Find at least 2 buy options
๐Ÿ”’ 3. Assessment
๐Ÿ”’ 4. Conclusion

What actually buy and build mean in Software Development?

As our picture at the top of this article represents, buy means that we are buying already a pre-made solution that we can use immediately. Either internally in our organization or in our software.

There can be many use cases for that and some of the common ones:

  • CRM System like Salesforce

  • Task management like Jira

  • Design System like Material UI

And build in our case means that we are building something ourselves โ†’ we are the ones responsible for maintaining it.

Some most common cases for building it ourselves are:

  • Website

  • The core functionalities of our product that we are building

  • The administration application that our operational team uses

A lot of the things that we are building are combinations of both

A good example is the Website. We can potentially use WordPress which gives us many pre-made tools to make it easier for us to build.

And then we can use paid plugins instead of building certain functionalities ourselves. That saves us time and effort in exchange for money.

The same goes for our product or any internal application that we are building. We can buy certain parts that are already made and use them.

If we flip the view a bit, we can also have a combination of both in our CRM system like Salesforce. Salesforce allows us to add customizations to it. And thatโ€™s something that needs to be maintained on our end after we create them.

And is it smart to do that? Well, we will go straight to that next!

Should you build customizations to something that you bought?

Letโ€™s talk about the use case we mentioned above: CRM system. Buying it is a smart choice. We get a lot of functionalities that we need for our business to function, which would take us a long time to build them ourselves.

But what about adding customizations?

We should avoid adding customizations unless we really need to have them.

And if we do decide to create them, we should minimize them as much as possible.

The reason is that as soon as we build the customizations ourselves, we need to maintain them.

And that means maintaining them through system updates and versions + we need to remember and understand how we made the customizations so that we can make adjustments if needed.

And that goes for any case: Task Management System, Design Library, API Platform, etc. the mindset should be the same.

Should you buy additions to something that you are building?

This post is for paid subscribers

Already a paid subscriber? Sign in
ยฉ 2026 Gregor Ojstersek ยท Privacy โˆ™ Terms โˆ™ Collection notice
Start your SubstackGet the app
Substack is the home for great culture