Monorepo: please do
"Shared responsbility" is one of those ideas that sounds good on paper, but doesn't really scale terribly well in the real world.  As the old saying goes "when everybody is responsible, nobody is responsible".More to the point, as the author of TFA allows, once a system reaches a certain size, nobody can understand it all. At some point you have to engage division of labor /specialization, and once you do that, it doesn't make sense to have just anybody randomly making changes in parts of the code-base they don't normally work in.I'd rather see a poly-repo approach, with a designated owner for discrete modules, but where anybody can clone any repo, make a proposed fix, and submit a PR. Basically "internal open source" or "inner source"[1].In my experience, this is about as close as you can get to a "best of both worlds" situation. But, as the author of TFA also says, you absolutely can make either approach work.[1]:https://en.wikipedia.org/wiki/Inner_source