The problem for most information jobs is it's very hard to measure performance. Basically, I don't know how long a particular task should take, since every task is so different. It's very easy to notice when a guy on an assembly line is slacking.<p>But, if Tom takes 3 months to complete a new feature/analysis and turns in reams of code/analysis, there's no easy way for me to tell if he was super-productive and finished 6 months of work in 3, or if he over engineered a solution and stretched a month's work into three.<p>Even worse, Tom doesn't even know how productive he is. He'll think that whatever solution he ends up with is the best possible.<p>Code reviews, pair programming, etc. all work to alleviate this information black hole. But they just end up stratifying information workers since, over time, workers will rise to better companies in accordance with their competence. And this will just worsen the information disparity. If most of your coworkers are at the same level of competence as you, no one will be able tell you how good you really are.<p>Incidentally, based on anecdotal evidence, I believe this stratification will start at the bottom and work its way up. And that it is now about 25% complete. I've actually visited a company whose core business is sorting (mailing industry), where not a single employee had a reasonable understanding of Big-O notation, any standard sort algorithms, or any standard threading techniques. I've visited other companies (healthcare industry) that have over a million lines of VB6 (and they like it!) with no plans to transition for at least a decade. Another does most of its work on IBM Mainframes (VSE), and in spite of constantly running up against the limits of the platform, had never even heard of or investigated z/VM, LPARS, or Hipersockets (they thought I was making stuff up when I started to tell them about how all these features would make their lives easier). They scare away most decent programmers, and people who become decent run away. And, all the engineers at these places think they're great.<p>Anyways, done ranting. I just finished interviewing around the country (eventually found a great company), and was really surprised by the fact that companies with dozens/hundreds of programmers apparently didn't have one good programmer.