The Gartner Group reports that only 32% of Java developers have “genuine knowledge.” That doesn’t surprise me — many developers are terrible. The article basically gets turned into a press release for some crappy modeling product, so there’s no reason to bother reading it. The real problem is that most companies are completely are unable to differentiate between developers with “geniune knowlege” and those that just suck. Therefore both compensation and hiring are completely screwed up. This is one area where offshoring only makes existing problems worse. It’s hard enough to hire top notch developers who are local to a company — trying to hire good developers who live twelve time zones away is nearly impossible, and that’s true whether you’re looking for individual developers or companies that do custom development.