The reasoning, a gigantic code base means infrastructure and tooling investment will obviously pay off. It probably even means you get one or more dedicated resources of this sort. Whereas a small to medium sized codebase might bump into some of the same issues as a larger code base but not justify such investments.
Do you have any extra writeup to suggest?
A good next step would be reading the 2016 ACM paper "Why Google Stores Billions of Lines of Code in a Single Repository" [1] then reading a recent HN discussion [2]. That has a ton of good links.
[1] https://cacm.acm.org/magazines/2016/7/204032-why-google-stor...
- Yes, it is a monolithic application architecture. There are distinct frameworks (e.g. GUIs, DBs, distributed compute, pubsub, lazily evaluated graph, reactive graphs, etc) designed to be used together in a unified way based on a global object store.
- A 150 person platform dev team writes these core frameworks and dev tools and runs the SDLC infra.
- Then the several thousand developers in business teams build applications for their particular needs.
- When the platform team sees businesses building their own solutions to a common need, it will productionize that as a new core framework for all business to use.
- In Python terms, there is a relative small number of core classes, and very many application-specific subclasses.
Lots of companies successfully manage far larger Python codebases.
We have a 35M LOC Python codebase with 2500 active developers making 25000 commits per week and continuous deployment globally of new code.
(I gave a talk on it at PyData London in April: "Python at Massive Scale")