~/kettlebuild/about
About
Kettlebuild is a small build-engineering practice. Most of the time that means me, Theo; on larger pieces of work I team up with one or two experienced freelancers I have worked with for years.
What we do
We work with software teams whose builds or pipelines have become slow, flaky or hard to trust. Typical work looks like this:
- Auditing a CI setup: measuring where the time goes, drawing the critical path, and writing down what to change in which order.
- Introducing or repairing build caches, with keys that hold up under scrutiny.
- Making release artifacts and container images reproducible.
- Moving a growing repository onto a task graph, so that a change only rebuilds what it affects.
- Pairing with the team's own engineers, so that the result stays maintainable after we leave.
Engagements are usually either a short assessment of a week or two, or a few weeks of hands-on implementation. We don't sell a product, we don't resell CI capacity, and we don't take on-call duty for someone else's pipeline.
Background
I have written software for about fifteen years and spent most of the last decade on the build-and-release side of platform teams. That is where I learned that a slow build is usually a measurement problem first and a tooling problem second. I'm happiest somewhere between a compiler flag and a YAML file.
About the notebook
The articles here are written from practice. They state what we are confident is true, prefer relative claims to impressive-sounding numbers, and get corrected in place when we're wrong, with a dated note saying what changed.
The name comes from the old line about a watched pot never boiling. A watched build seems to work the same way.
Contact
Questions about an article, corrections and enquiries about work are all welcome. We read everything that arrives there.