Managing code across multiple repositories at scale impedes developer productivity, comes with a cost of duplication of tooling, processes and dealing with breaking api changes in non atomic change-sets. At Uber, the Android codebase moved from 100+ repositories into a single monolithic repository. This massive migration was done while ensuring VCS history is preserved, breaking API changes across repositories are mitigated, build tooling and infrastructure are scalable and developer workflows are minimally impacted. In this talk, Gautam will deep dive into why the decision was made, the tooling needed to support it, how it was executed and the developer productivity wins that came as a result.
I lead the Android Developer Experience Team at Uber. I am very passionate about tooling, infrastructure and build systems for building android apps at scale.