Buy vs build when it comes to dependency management

Published September 24, 2025

Recently I read on LinkedIn a post I can’t find anymore. I was looking for it again because I wanted to reply to one of the replies! Since I can’t do it anymore I am going to write it down here!

The post can be summarized to something like:

When I was a junior eng I didn’t like dependencies because they were hiding complexities I wanted to explore and learn from.
As mid level eng I loved dependencies because they allowed me to stay focused on my business and to go faster.
As senior eng I don’t like dependencies because they add a lot of uncertainly and complexity.

I think I see what he is saying, and I like the vibe! I worked for a lot in Golang and the mantra was to copy paste code when possible instead of importing dependencies to use a fraction of that. Well it was also good marketing since Go was pretty late into dependency management. But JavaScript with NPM is a perfect example about why conscious developers should be careful when importing packages. The price of a go get or a cargo add or a npm install is a lot higher than what you expect.

This post got a lot of replies and attentions. The one I came across thanks to LinkedIn algorithm was something like:

Let’s assume all the industries are thinking about you (the author of the post itself). Car manufacturing do their own bolts and knobs…and so on…

You see where this person is going. Reusability as the foundation for evolution.

I think they are both correct because those two points of view are complementary. Yes we need to be careful when we add new dependencies, we should avoid them if we can or for as long as we can. We need to analyze and understand what we are onboarding. All of that requires experience and skill so it is reasonable for a “senior” to feel ownership not only for the code directly written but also for the one injected from outside.

But since we are all here doing business I bet car manufacturing will make their own bolt if it makes their production more sustainable, cheaper and quicker. It does not so it is reasonable for them to build those.

There is a lot of technology behind bolts and knobs car manufacturing are not doing that not because it is too simple, or because it is not their business. They are not doing that because the market has a manufacturing process for those items that is nearby perfect, quick, repeatable.

This is why good software ecosystem provide a standard library that you can relay for such crucial parts. For everything else you can decide what makes more sense.

Are you having trouble figuring out your way to building automation, release and troubleshoot your software? Let's get actionables lessons learned straight to you via email.

Leave a Reply

Your email address will not be published. Required fields are marked *