Fri 26 Jun 2009 02:28:18 PM PDT
Productivity Paradox 2.0?
Auren Hoffman points out that, thanks to free libraries and tools, companies are able to do more software engineering and build more stuff with fewer people, but the salaries for those increasingly productive software people haven't kept pace. (Rands explained: "It’s this pile of high-value, well-maintained code that is helping shrink the average size of the engineering team because it’s allowing us to focus less on writing new code and more on integrating existing code to get the job done with fewer people and in less time.")
Another way to put it is that you can look at an IT project as made up of two complementary goods: code and maintenance programming. If the price of one good falls, thanks to open source and the price pressure it puts on the whole industry, then the other good's price should go up. Software company stock prices are on the way down, reflecting the lower value of a drive full of source code, but where are all the pay raises for programmers?
We used to have a productivity paradox of increasing IT spending but no productivity to show for it. Now we have more programmer productivity but without the increased pay. Auren suggests two possible explanations: offshoring and decreased need.
Yes, IT employers in the USA have an indentured servitude program in the form of H-1B visas, and yes, there's some shake-out of code monkeys if not every project has to implement every little piece. But still, more value per software developer year should mean higher wages, even if developers have to give up on constantly reimplementing the same stuff. And the H-1B program is full enough that for most raise-seeking programmers, replacing you with an H-1B employee isn't a credible threat.
Other possibilities: in most cases, the employment market for software developers is a Market for Lemons. Badly informed employers won't pay more for a value-creating developer than for a code monkey. If that's the problem, then developers who contribute to open projects and can show their contributions accepted upstream should have an advantage, just from the signaling value. "Hey, if he were a bozo, would his name show up so much in 'git log' on example.org?"
Maybe programmers just don't negotiate well. If that's the problem, we should see substantially higher salaries for less negotiation-averse programmers, such as the people who have to work both for a company and with an upstream project.
I don't know. I think we're in the process of moving from high-value software brands and mostly anonymous hackers to a system more like professional sports, where both franchises and individuals have brand names and revenue.