Martin Fowler: Cheaper Talent Hypothesis
martinfowler.com
martinfowler.com
No matter how bad you are, as long as you're consistently churning out code, in whatever language, enough work is being done that the project moves ahead. It doesn't matter who does it, and at this level of quality it doesn't matter who sits down to work on it (this is huge to anyone in charge of staffing the department).
It's a model that seems to have evolved organically inside the corporation, rather than as some anti-programmer conspiracy, but certainly smart executives at Microsoft and the banks have recognized it for years.
If ThoughtWorks doesn't use this model, and it benefits them, why are they more expensive? If you're paying less overall for talent, you can increase sales by charging less for the same product. When you save on production costs you don't raise prices to celebrate. His evidence only contradicts his claim.
If you amend his blog post to say, "well...you pay more for a higher quality version of the same thing", then what he's saying isn't news to anyone, and his old thesis becomes wrong.
[Software that works 97% of the time and software that works 99.9% of the time look very, very different at the code level. The user, however, can't tell the difference. More to the point, they won't pay for it.]
On projects I've observed, companies like this placed one or two of their best people on the project early, as a loss leader. These did good work, which enabled the sales people to then bring in a larger number of considerably dimmer (but highly billable) light bulbs. That's how the profits are made - land and expand. It seems to take a while for clients to figure this out.
What about lower pay as a cause of lower productivity?
Also, poor leadership can play a big factor in software development productivity.