Building at Uber Scale
summary
Describes moving Uber Android off slow, global checks into the build pipeline with custom static checks (error-prone, checker framework, lint/checkstyle extensions) and a bootstrap Gradle plugin so new repos get correct CI by convention. Regex and style checks drop from ~5 minutes per run to a few seconds via calling jars directly, caching changed files and parallelism — reduced checks from 5 minutes to seconds — reclaiming ~8 hours/day for 100 devs and enabling a 500-module monorepo. network cache with Buck/okbuck speeds large builds.
AI-written summary · about
chapters (15)
- 0:00Intro
- 2:16A scalable solution to my mailbox.
- 3:45Overview of scaling knowledge and builds
- 5:23Disseminating knowledge
- 6:40The build system and anti patterns.
- 8:21Enforcing patterns
- 10:17The impact of small defects on large systems
- 12:10Providing railings
- 14:57Pattern detection and enforcement
- 16:24Static analysis and computer code review.
- 18:49The relevance of speed in scaling build systems
- 20:48Achieving performance and keeping up with scale
- 21:55The checkstyle tool.
- 24:07Build systems, speed and Okbuck.
- 25:36Considering solutions at scale.








