Wednesday, October 19, 2005

You'll Work on Crap, and Like It

So I find more and more that if you are a capable developer and can think your way through normal problems, your reward is often that you get the crappiest assignments. Very rarely is there ever anything interesting and/or fun for me to work on at my job. In the few instances that there is something meeting this description it is usually given to someone less capable because they can't seem to handle some difficult task we have to do during the iteration. Who gets the tasks that no one knows what to do with? Why, that'd be me.

I think this is bad from a personal standpoint of course, but I also think it hurts the product, the company, and the other developers over the long run.

It hurts the product because if you regularly cannot give a majority of assignments to developers because it is "too hard" for them then you obviously have inferior developers on your team. I know there are exceptions to this--some people are domain experts or just much better at different parts of the technology or maybe the developers are still being trained on the product. Hopefully you're not having to train them on the technology--that means you're hiring / retaining the wrong people or that you pay so little you can't attract good people.

It hurts the company in multiple ways. Not only are you putting out a crappier product but you're either boring or angering your competent developers. No one wants to work with people that can't do their job. Plus, since they're getting the crap detail 90% of the time, the good people are typically not getting to work on anything exciting. Let's face it, developers like to work on cool things (almost as much as they like to refactor code). That brings us to our next point of how it hurts the developers (and the company at the same time).

It hurts developers because they're unhappy and unfulfilled (poor bastards). If I know that my tasks every iteration are 1) do the programmatic grunt work these other morons can't figure out and 2) "mentor" the morons (also known as watching a group of retards try to hump a doorknob) so they can work on something easier/more fun (but get paid close to the same amount) then I'm not going to be a happy camper. That makes your good developers a little more likely to quit. We established that you can't hire or retain the proper people in the first point and therefore are unlikely to be able to replace them with another good developer.

Now you begin a long downward spiral of technical incompetency and non-innovation in a long, boring maintenance cycle of a crappy product--at least until you have your next IT revolution (happens every 6 years or so, I think). If you're making money it means you can buy smaller, more nimble companies that are working on cool stuff and suck the life out of them too.


Post a Comment

<< Home