Sorry, there is a quote from the article:
"Kudos to other members of the Source Control team — Alex Sadleir, Wesley Li, Adam Murray, Matthew Chhoeu — who work on improving git performance at Canva"
So I assume 5 people working specifically on Git performance ;-P
Usually it is considered good proportion to start with to be 10% to work on a Developer Productivity and it should increase to 15% as company grow.
But regarding source control it really depends on the approach: if you are on polyrepo - then 0 is enough. If you decide to write you own source control system like Facebook or Google, then maybe couple of hundred engineers full time until the project is finished :)
If you don't have a couple of hundreds engineers who would write a custom file system for git (Microsoft), or who would take an existing source control system and nearly fully rewrite it (Facebook), or who would write a custom source control system from scratch (Google, Yandex, etc) DON'T USE MONOREPO.
Otherwise you are risking to end up in a situation when hundreds of your engineers have to spend tens of minutes every time they need to simply push their code changes.
Google did not need to write their own SCM to reach the scale mentioned in the article. Off-the-shelf Perforce served that company well enough when it had tens of thousands of engineers and millions of files. They had 11 million files in a monorepo with one 256GB machine which most of you would consider a bare bones desktop computer at this point.
Of course, you shouldn't start a project from 10 repos. But the downside is while you live in a single repo all the tooling get tuned to work with a single repo. And then there is no way to go multi-repo when you need to.
There is no point in making any argument with someone who has the conviction of their religion behind them. Followers of the monorepo religion are no different.
But that's what those responses are all about: git doesn't scale, so don't use it if you need scale.
If there are no tools that scale available, then change the approach so you don't need face this scaling problem at all.
Canva engineer here: we do compatibility checking of interservice contracts (Proto) to ensure that gradual deploys are always safe and can always be safely rolled back.
Sure, and what next?
So considering that on big projects CI/CD may take up to an hour (in one of my projects it took 4 hours) the feedback loop would be great
One of the nice things about using Bazel is caching builds, avoiding rebuilding parts of the monorepo that are completely unaffected by someone's changes.
So I assume 5 people working specifically on Git performance ;-P