I think that another related issue is that it's rare for more experienced developers to have the skill or the interest to teach what they know to a less-experienced developer, while at the same time carrying their own workload with often a brutal schedule. And then a lot of more-experienced developers have large skill gaps themselves that become more evident under the stress of trying to do two+ jobs at once. If everyone is relatively experienced, chances are someone else can quietly fill in the gaps in your work and no one notices. But if the only other person working in the same space _can't_ do that, well then everyone looks like crap. Or you have the skills, but you don't just rock them out enough you can train someone while doing the thing.