Home / Companies / Buildkite / Blog / Post Details
Content Deep Dive

How Uber halved monorepo build times with Buildkite

Blog post from Buildkite

Post Details
Company
Date Published
Author
Michael Belton
Word Count
2,876
Company Posts That Month
2
Language
English
Hacker News Points
1
Post removed?
No
Summary

Uber faced challenges in reducing monorepo build times and providing flexible, scalable Continuous Integration (CI) for thousands of developers. They launched a Go monorepo using the open-source build system Make in combination with Go's go build. Later, they upgraded to Google's Bazel, which allowed them to optimize their CI workflows by understanding how each target is built and how they relate to each other. By 2022, Uber's Go monorepo was the largest code repository at Uber with over 50 million lines of code, 500,000 files, and 3,000 engineers working on it. To support safe and fast changes, they built a system called SubmitQueue to keep the main branch green while landing thousands of commits per day. They also replaced Jenkins with Buildkite for dynamic CI, which allowed them to define their builds dynamically using scripts from their source code. This led to significant improvements in developer happiness and productivity, as well as better visibility into build events and metrics.

Trends Found in this Post
Trend Post Mentions Total Month Mentions Posts Companies MoM
Developer Experience 3 284 150 84 -32%
Observability 2 1,314 247 97 +26%
Platform Engineering 1 220 57 37 -27%
Real-time 1 2,587 688 208 +9%
Use This Data

Use this post, company, and trend context to find content marketing opportunities, perform competitive analysis, or address product feature gaps via the Plushcap MCP server or the Plushcap API.