Session Details
At Uber’s scale, guaranteeing an always-green mainline while processing hundreds of changes per hour across diverse monorepos, each supporting tens of business-critical apps, presents significant challenges, such as growing queues of pending changes, frequent conflicts, build failures, and unacceptable land times. These bottlenecks slow down development, negatively impact developer productivity and sentiment, and make Continuous Integration of changes increasingly difficult. In this talk, I’ll explore the design and evolution of MergeQueue—Uber’s innovative CI scheduling system that ensures mainline stability and production readiness for every commit. By harnessing speculative validation, build-time and change success predictions, and advanced conflict resolution strategies, MergeQueue delivers unmatched efficiency. It has reduced CI resource usage by approximately 53%, CPU usage by 44%, and P95 waiting times by 37%, significantly improving build reliability and developer velocity across Uber’s engineering ecosystem. These optimizations not only eliminate CI bottlenecks but also enable thousands of engineers to ship code rapidly and reliably, ensuring every commit is production-ready.
Key Learnings: