About

Welcome to build.engineering.This little site aims at centralizing ideas, observations and resources around the topics of build systems and build engineering.Build systems (and related topics) are something I fell in love with at some point in my career – see this retrospective for context – and I’ve decided to centralise a few things in a dedicated place.
It’s still a work in progress, so please check back regularly! 😊
In the meantime, you can check out:

May your builds always complete swiftly. And correctly.

Why Build Engineering?

A 2018 Gradle blog post titled “The Challenge of the Build Engineer” sums it up concisely. Let me quote verbatim the three excerpts which entirely capture my perspective:Build engineers are becoming the key to success for any software producing company.Companies that rely on software to run their business might find themselves at a competitive disadvantage (and even out of business) if they do not aggressively optimize developer productivity.In many industries, there are engineering disciplines dedicated to the practice of making production efficient and effective, such as chemical engineering and industrial or process engineering. They have their own degrees and are much respected within their broader field. Build engineering is of similar importance when it comes to the production of software. The software industry is at the beginning of this realization. It is a very exciting time to work in this area!This is still entirely valid.If you’re curious about build engineering in general, or are just wondering what build systems are – welcome!

A drawing of a tree with roots and leaves representing a 'build tree' and more generally the build-engineering discipline.

Build Systems Illustrated

While I was squeezing build related things out of my mind, mostly in text form, I also began experimenting with doing some illustrations.My tendency to procrastinate won out, and suddenly I had a bunch of drawings on my hand.So I decided to add a little bit of written context to them, and Build Systems Illustrated was born.Publishing an illustrated primer booklet about build systems was not the first thing I had in mind when buying the build.engineering domain, but it turned out to spontaneously become the first thing that is ready to be shown.If you don’t feel like buying it, check out my media feed on Twitter or the What is series on the j3t.ch blog: you’ll find some drafts and many of the illustrations shared over there.Happy building!

A schema illustrating how a build system is not much more than a glorified composed program. It takes configuration, code and dependency identifiers as input, calls a dependency manager and then a compiler in order to produce an executable.