I just ran across this article on how consultants (mis-)measure productivity in software development.
http://www.joelonsoftware.com/items/2006/11/10b.html
Sad to say, I couldn’t agree more with the article. I started my career as a software engineer, and I’ve met very few people who understood what software is or how to measure it. When it comes to measuring productivity of software development, give it up entirely. The best software engineers can be 100x to 1000x more productive than merely “good” engineers, if you measure productivity as debugged-line-of-code-written-per-hour. If you measure ability-of-code-to-meet-business-goals, the best engineers can be ten thousand times more productive or even more. Much, much more.
The problem is that software is the codification of a business process. The best engineers take the time to understand the business, so what they codify can meet business goals. People Express airline ($1Bn in sales in year 2) went out of business, according to its CEO, because their reservation software had constraints that kept them from strategically changing their pricing. If their original programmers had understood the link between their software and the business, a single design decision would have had multi-billion-dollar implications and saved the business. What would the productivity be of the engineer who made that connection?
Similarly, the best managers understand that software development is, itself, a business process. The engineers hired, their skill sets, the languages they use, etc. all affect the speed to create, deploy, and support the software. As it is, I’ve only seen one manager (an ex-engineer) who understood the connection enough to use a specific programming language for business reasons. He made a couple hundred million from that decision, by the way… (It was Paul Graham of Viaweb. Read about it here.)
So if you’re a manager, take the time to understand the strategic implications of who you hire and how you have them design your product.
If you’re a programmer, you might be amused by learning to connect your coding with the business implications so you can save your company two billion dollars. But unless you work for the manager in the previous paragraph, don’t even expect anyone to understand your contribution, much less appreciate it. Even if your manager “gets it,” expect at most .01% of the bonus that she gets. Sadly, the business world is built to reward them, not you. (You can find the Harvard Business School admissions office by clicking here.)