One for all, all for one: The Journey to Android Monorepo at Uber
summary
Uber migrates 100+ repositories into a single monorepo over 2–3 months while preserving Git history, shrinking checked-in files to ~75k and repo size to ~350–500MB. Build system switches from Gradle to Buck via OkBuck to keep incremental builds fast; API compatibility is checked with JAPICMP; a submit queue prevents broken master; static analysis rollout uses NullAway. Result: support library updates drop from months to days, 800 migration diffs opened, ~45k commits merged, developer discovery and refactors become immediate.
AI-written summary · about
chapters (11)
- 0:00Introduction to Android monorepo
- 6:35Why switch to monorepo
- 8:19Challenges of monorepo adoption
- 12:34Preparing for migration
- 15:00Merging repositories into monorepo
- 17:28Rollout and cleanup
- 19:15Migration statistics and results
- 21:22Developer impact and benefits
- 25:15Keeping master green with submit queue
- 27:20Current limitations and future work
- 30:00Q&A








