NewBuildkite hosted agents. Check out the Q1 Release for the latest features, including managed CI/CD offerings for Mac and Linux.

Welcome to our collection of articles about modern software engineering best practices. The articles cover the lessons we've learned from building and operating the best DevOps tools on the market, from incident management and merge queues to security issues and adopting UUIDv7.

Want to see what we build? Head to our technical documentation.

Set of elements including people, handshake, checklists, and code, all leading into an element with a rocket ship and a 'success' check mark.

Keeping the agile in ‘agile engineering’

Being agile means flexibility. Let’s discuss engineering techniques for your team, using the Agile Manifesto as a guide.

Daniel Oakley

Daniel Oakley


Monorepo vs. polyrepo: How to choose

Which build pattern will work best for you? A breakdown of how to make the choice between monorepo vs. polyrepo approaches to CI.

Mel Kaulfuss

Mel Kaulfuss


Incident reviews: Looking beyond the root cause

Simplify, but don't oversimplify. Allow for nuance and complexity in post-incident reviews by using the Cynefin framework and telling stories.

Patrick RobinsonMichael Belton

Patrick Robinson and Michael Belton


Using GitHub's pull request merge queue in your pipelines

Learn how to get started with GitHub's merge queue in your pipelines.

Mel Kaulfuss

Mel Kaulfuss


Session IP address pinning for dual-stack IPv6

After introducing session IP address pinning, we noticed dual-stack users need to re-authenticate too often. Learn what we found and our suggested fixes.

Steve Hoeksema

Steve Hoeksema


Local privilege escalation: Fixing security issues in the agent

Security hardening can be a depressing rabbit hole. Join us for a humorous, educational adventure in the quest towards a more secure Buildkite agent.

Josh Deprez

Josh Deprez


Goodbye integers. Hello UUIDv7!

Exploring the tradeoffs of different database indexes; from sequential integers, randomly generated UUIDs, to time-based identifiers and the latest & greatest UUIDv7

Gordon Chan

Gordon Chan


Signed Git commits with Sigstore, Gitsign and OIDC

James Healy

James Healy


Reproducible Machine Learning with Buildkite

Andy MacKinlay

Andy MacKinlay

Abstract pattern of lines and bars

Reliability Review Q1 2022

Miguel Molina

Miguel Molina

Header image of an odometer nearing its max number. The label reads "Big Number Problems"

Avoiding integer overflows with zero downtime

Samuel Cochran

Samuel Cochran


Buildkite & ARM Revisited

Nick Rycar

Nick Rycar