Saturday, December 23, 2006

Why promote the good developers? Just pay them more. It's worth it.

There is an interesting trend I've seen in my days as a Big X consultant as well as a full-time Project Manager. We are running way low on good programmers. This is a result of several things:

  • The general dumbing down of America. Video games, instant message and e-mail (among other things) have created much shorter attention spans and lower work ethic. This causes us to have less smart people.
  • IT careers and programming are not sexy anymore. For those smart young people that do exist, they no longer want a career in IT. I think this article described it best. Basically, our funnel is drying up because there is no longer the intrigue or challenge perceived in development and IT, as there once was. In other words, "kids today view managing computer environments as boring and tactical."
  • There is a language barrier for some foreign programmers. Number 1 and 2 causes a US shortage that is now being filled by talented foreign developers. I believe foreign programmers will fill the gap in the next 20-30 years. However, there is still a language barrier (for many), preventing a complete fulfillment of the gap.
  • We promote the good ones.

Of these four, the typical manager has immediate control over only #4.

In my experience, good programmers rarely make good managers and architects. I would also contend that many would prefer remaining programmers. However, there is also a shortage of good managers and architects so organizations feel compelled to fill these roles, as well. But here's the rub: If you promote good programmers who are required to manager and architect solutions that mediocre developers will create (since we promoted all the good ones), then the whole project, program or IT organization will fail or have severe challenges.

What's the solution? There are a couple of them:

  1. Make sure the promotion of the programmer is in-line with the individuals desires. When discussed with the individual, make sure compensation is removed from the equation (see next bullet). Does the individual want a different role/promotion because they desire it or because they desire to make more money? The answer to this question is the only on you need, assuming you are capable of bullet #2.
  2. Pay your best programmers and analysts well. The GE model for employee recognition works with developers and analysts: Concentrate most of your time, attention and money on the best ones, at the expense of the bad ones. Why give even a cost-of-living increase to a poor employee, when you could provide that money to a good employee? You want a bad developer / analyst to leave the organization in order to make room in the budget for the next good one.

Remember, if you promote your best developer you just lost your best development skill. One could argue that doing so allows that individual to mentor, train and coach others making the whole team more productive. I disagree. Most of the developers I've met in my career are terrible mentors, trainers and coaches -- just as they are bad managers and architects.



Post a Comment

Subscribe to Post Comments [Atom]

<< Home