No excuses. Code ownership is important. Sometimes it works for a team, sometimes only for individuals.
But not having to submit to core teams, architects and self-proclaimed experts of all kinds is a blessing.
I now work for an organization that discourages code ownership, and it struggles on many fronts:
1. core teams are dysfunctional
2. people find niches and stick to them
3. top talent is leaving, although pay is good and business creates real value for citizens
4. there is virtually no horizontal communication
5. mediocre ones rise to the level of their incompetence and infest the lives of others
6. and so on and so forth...
And I think the root cause of all this is lack of individual (code) ownership.
I’ve had exactly the same issues but because I couldn’t change anything without getting approval from 16.5 code owners on every PR submitted. It’s a real pain if you start modifying your coding for ‘least code owners hit’ instead of ‘best architecture’.
I like how my workplace does it -- there are rigorous codeowners and usually you only need approval from 1-2. if you do need approval from 5+, you can request a select 'super' codeowner review which will approve it for all.
I think core teams being helpful or harmful really comes down to the individuals.
The problem is at this level, most orgs don't have anyone to really judge or contest competency, so they hire the salesmen rather than the doers and when they don't, they tend to cheap out and just get inexperienced people.
Logically it makes a bunch of sense, though.
Why rebuild yet another platform? Why is your central platform bad? Usually it's not self-service, sometimes it's because it's built in cumbersome ways, other times its because it actually enforces good standards on you rather than just giving app your apps admin.
It's difficult for the person who hires the core team to differentiate between those complaints, unless they themselves both have the technical competency and the empathy to really understand the problem. They usually don't.
Point being, done well, it's great, but most folks can't do it well.
No excuses. Code ownership is important. Sometimes it works for a team, sometimes only for individuals.
But not having to submit to core teams, architects and self-proclaimed experts of all kinds is a blessing.
I now work for an organization that discourages code ownership, and it struggles on many fronts:
And I think the root cause of all this is lack of individual (code) ownership.