Uncle Bob Martin:
Is the software industry trying to write the script for Hamlet by hiring a million monkeys to bang on keyboards? Perhaps we should rethink that strategy and hire one bard instead. Perhaps, instead of hoards of novices, we need a small team of professionals.
This very thought — that there are just too many permanovices in the development world, especially in the .Net world — is what originally drove me to find smaller and smaller companies to work for, now ending with me only relying on me for success in my work.
Every time I've found myself in a long term lead position for developers, I always made it a point to do code reviews early and often, do lunch & learn-style mandatory post mortems for all my developers (not just the project team) when a project had finished, and hold monthly internal-user-group style meetings on some development topic.
My point is that I wasn't just the guy on the team that had been doing it longer; I took the time to mentor my team from the most junior dev all the way up to the dev I'd trust to take over for me when I was out. I took the responsibility to do what I could to make sure my developers wouldn't just become proficient workers, but have the ability to become proper mentors themselves when they wound up in my position.
True mentorship in software development has been lacking for ages — so long that we have developer leads that have never been properly led themselves. If this sounds a lot like the effects of bad parenting... you're not very far off.
Now, the software industry is reaping the *ahem* benefits of all this shoddy leadership, and I wonder if there's anything we can do for the bad lead devs already in the system. my first impulse is to compartmentalize them, refuse to to hire them, such that they find jobs leading developer teams with such high turnover that the effect a lack of proper mentorship has is mimimized. That sounds harsh, but let's face it, a lot of these developers are already at home working for companies like Accenture that'll hire 50,000+ this year.
Let the proper software be written by the little guys, and let the enterprise guys spend their moneypiles on crap; they won't notice the difference, I promise.
Now, to convince governments to stop hiring these companies...