Joel Spolsky wrote an article in Inc. Magazine about rewarding developers. He called attention to the difference between intrinsic and extrinsic motivation. Intrinsic motivation is what drives you regardless of the reward you get for doing so. Extrinsic motivation is some sort of compensation tied to the things you do. He postulates that “extrinsic motivation displaces intrinsic motivation”. In other words, if you give developers bonuses for certain types of behavior, it may sap their underlying desire to get things done.
This was a very thought provoking article. Like all other developers, I think I am a top notch one. As such I expect some extra rewards from my employer. Maybe everybody else on the project thinks the same way. What is an employer to do in such a situation? And even when some developer does shine and seems to deserve something extra in return, is it right to give them that big bonus or some other rewards?
I will say that I have received a lot of bonuses in my career. And when the bonus was missing or embarrassingly low, I was not a happy camper. That being said, a low or high bonus never seemed to diminish my desire to write and maintain software. This is my intrinsic motivation. I like write coding. Strangely enough, I even like debugging tough software challenges. I also think it is a better setup when I get lots of money for doing so.
Does that mean I am the exception to the rule? Or perhaps the development team in general suffers if I get a good bonus. It might also be the case that extrinsic motivation does not also mask the intrinsic one. This topic definitely warrants more thought. At the end of the day, I am going to be doing a good job and will enjoy doing the work I have chosen. The only question seems to be whether I will get rewarded well enough for it.
P.S. Just found out today that my company is springing to pay for a certification of my choosing. And there are no limits on the cost. Yee haw.
Newbie Gets Confused
-
A relatively younger developer got tasked with doing some performance tests
on a lot of new code. First task was to get a lot of data ready for the new
c...