Software has long since lost its glory-days status. We’re not the go-to field anymore. Geeks are no longer revered as gods amongst humanity for our ability to manipulate computers. We get crappy jobs just like everyone else.
So, what is it that still motivates you to work as a software developer?
Is it your fat salary, great perks, and end-of-year bonuses? Unless you’ve been working on Mars for the past two years, I think Computerworld would disagree with you. We’ve been getting kicked in the nads just as hard as everyone else. Between budget cutbacks, layoffs and reductions in benefits or increases in hours, clearly our paychecks are not our primary source of satisfaction.
If money was our primary motive, right now we’d be seeing a mass exodus from the tech sector. So, if it’s not the money, then what is it that we hang on to when we get up each day? Are we really working for those options? That salary bonus?
Turns out, we’re kidding ourselves if we think that’s our real motive as developers.
The assumption: People perform better when given a tangible, and even substantial, reward for completing a task. Think bonuses, stock options, and huge booze-driven parties.
The reality: In a narrow band of actual cases, this is true. (And by narrow, I mean anything that isn’t a cognitive task, simple or complex, according to the research I quote below). By and large, the reward-based incentive actually creates poorer performance in any group of workers for cognitive tasks, regardless of economic background or complexity of the task involved. (Sorry, outsourcers…dangling the reward under your workers noses doesn’t help even when your home country is considerably poorer on average than Western economies. Yet another surprising finding of their research.)
I’m not making this up, nor am I just drawing on anecdotal experience. Watch this 18 minute video from TED and I’ll bet you’re convinced too:
Daniel Pink gave this lecture at the 2009 TED. It’s mind-blowing if you’re stuck in the carrot-and-stick mentality. And I’ll just bet, unless you work for Google, are self-employed, or extremely worldly, you probably are.
I’m not saying that to be mean or controversial. I’m saying that because this mentality has pervasively spread to every business, industry and country on the planet over the past 100 years. It’s not just software development, but we’re hardly immune from its effect.
While we’re not immune to the impact, we do have a lot going for us that gives us an advantage in stepping outside this mentality:
- Developers tend to be social oddballs and the normal conventions seem awkward to us. Social oddballs tend to question things. We don’t like what everyone else likes because, well, we’re nerds and we don’t think like sales people. Or accountants. Or athletes. We’re willing to try things others find weird because we’re weird too.
- Because we’re odd, we tend to be forward thinking and revolutionary in our approaches to workplace advancements. Think about the good aspects of the Dot Com era: pets in the workplace, recreation rooms with pool tables and ping pong, better chairs and desks for people, free lunches. Those innovations didn’t come out of Pepsi, Toyota, or Price Waterhouse Coopers, they came out of tech companies. Every one.
- In doing so, our weird becomes the new normal. Witness the output of the Dot Com era: Aside from the economic meltdown, how many companies now regularly practice some, if not all of those things we did back in the late 90s? (Albeit with more restraint, thankfully)
With that in mind, let’s take Daniel’s idea of the results-oriented work environment (ROWE) forward and create something new for the 21st century. It focuses on three important ideas, which developers already love and embrace:
- Autonomy
- Mastery
- Purpose
Autonomy: What developer out there doesn’t like to be given the freedom to do their own thing, on their terms, with their preferred hours, using their tools, environment, IDE, language, operating system and favorite t-shirt? Find me a single developer anywhere that doesn’t crave this kind of freedom and I’ll pay you $10. Seriously. Drop me a contact above. I’m good for it. Of course, you’ll search for the rest of your life and won’t be able to do it.
Mastery: Every developer on the planet wants to get better at what they do. We crave new knowledge like some people quaff coffee after a hangover. Fortunately, the side effects of getting better at development are far more benign than caffeine binging.
Purpose: Nothing is more tedious, horrific, or uninspiring to developers to work on projects that lack any real meaning in the world. Or lack any real direction. Or lack any substantial need from the company. In fact, you can probably point to the brightest points of your career all stemming from those projects that had the deepest meaning to you personally. Maybe the darkest points are those soul-sucking projects that you waded through because you were glad to have a job but desperately waited for things to improve so you could find a better job elsewhere. Preferably where soul-vacuums didn’t exist.
Google gets it: They already advocate the 20% time concept and (near-)complete workplace freedom. Atlassian gets it: They have the Fedex challenge where everyone in the company gets 24 hours to work on something they are interested in, with the caveat you have to deliver it at the end of 24 hours and you must present it to the company. Think those don’t create passion for the company? How about the Nine Things Developers Want More than Money? These points all touch on the same three basic concepts: autonomy, mastery, and purpose.
Does your company “get it”? If the answer is NO, what can you do right now to change your workplace to “get it”? And if that is too Sisyphean a task for you, how about starting your own company instead, that does “get it”?
That’s my challenge for you in 2010. “Make software suck less in the 21st century”
Good luck.
This sounds like self-justification to me. Sure I want all these things, but *in addition to* a decent salary and bonus, not *instead of*. Someone offers me a recreation room with a ping pong table or free lunch in lieu of a decent wage, I’m going to laugh at them and work elsewhere. Mind you, I’m also not a social oddball, and nor are most of the developers I have actually met in the real world.
Nice post. Did you ever have a hangover? Coffee makes it worse. Beer helps.
Recognition?
I agree wholeheartedly that we’re not just in it for the money – but who actually does a career just for the money and is happy about it? BUT all the good developers I know are still making a healthy wage even “in this economy”, especially when compared to their business counterparts.
I think the real problem is that people with no passion for technology or even inclination towards it decided to become programmers because it paid well. After all, the average salary was X and that sounds awfully good. Well, a programmer that isn’t passionate isn’t really worth that much, substantially less than a great developer and even less than an average one. So the whole average salary drops, or a significant amount of “tech” people go unemployed – well those people never should have come in the first place, they should have done what they are passionate about.
Yes it’s passion and mastery, but money plays a big role. As a mother, if I didn’t make so much as a developer, I would be more compelled to stay home (especially taking into account childcare costs) but I do work and it ends up being very lucrative for my family financially.
Well said!
@Everyone: Thanks for the feedback.
Yes, of course, I doubt any of us would be working where we are without fiscal compensation, but what creates real satisfaction in our jobs are those three things I mentioned. Money may be something we consider in taking the job, but it’s not necessarily why we stay. And if you say it is and you work in a bad environment, I’m quite sure you’re always on the lookout for someplace better–better treatment, better coworkers, better projects. But not necessarily better pay (I’ll posit that you’re willing to work for comparable wages if the environment overall is better)
Money can be had pretty much anywhere, including a fast-food restaurant (managers make a decent wage there–not IT decent, but average economy decent) but you’ll never derive satisfaction working there, and therefore, never have job longevity as a result. 😀
A nice 3. Purpose reminded me of some dodgy projects have worked on in the past. The company did the work as a loss leader with no push to get more work of the type after and the client wasn’t going to make any money from it, dodgy project that one
One thing I would like to point out is that this is not necessarily limited to developers.
There is a lot of research pointing to the idea that successful people that are most happy in both their professional and personal lives have three things in common:
1. autonomy
2. competence
3. relatedness
In the sense it’s used, competence is referring to mastery – being very good at something and improving your skills over time. I think a sense of purpose is closely tied to the idea of relatedness – you’re doing what you’re doing because it has a real effect on the world.
If you search for these three terms you’ll find a lot of articles relating these ideas to different topic areas.
My motivation for keeping going is getting back at all of the high school kids who picked on me and said I’d amount to nothing.
Money has little to do with it.
If I’m not mistaken, that would fall under “purpose”. 😀
Good post Dave, I agree with your points. There is a mistaken idea that money is all that any developer needs or wants, because when you ask most disgruntled developers what they want they will usually say, “more money”. But what they really want usually falls under your three points (autonomy, mastery, purpose). And, I like your 21st century challenge, it reminds me of Jeff Atwood’s recent post about the motto for Stack Overflow: “Leave the Internet better than we found it”.
Money is great! Nobody is building a better world with code, gimme the cash 🙂
Wonderful post!
@Russ: “Sure I want all these things, but *in addition to* a decent salary and bonus, not *instead of*. Someone offers me a recreation room with a ping pong table or free lunch in lieu of a decent wage, I’m going to laugh at them and work elsewhere”
Absolutely… and in Dan Pink’s book, he states that a business should offer a better than average wage in order to remove money from the equation. The relationship between money and motivation is not linear: too *little* pay (relative to needs and/or expectations, etc.) and it becomes a barrier to creative, inspired work (as your comment implies). But his point is that beyond a threshold, *more* pay is not tied to more creative or higher quality work.
Pinks’ recommendation for employee motivation (if I’m interpreting his book correctly) is for a company to find and exceed the pay threshold so that money becomes a non-issue (even a non-participant) for employee motivation. Only then can we use the elements most tied to sustainable motivation: autonomy, mastery, and the trickier-to-define “purpose”.
My personal takeaway from his (awesome) book: Give people freedom, flexibility, continually increasing learning/growth, challenge, and the opportunity to see a meaningful result of their effort.
Never thought of this. I thought the extra time was just for fun.
I agree fully with the ideas he is putting forward. It’s nothing new to a lot of us, but it IS to a slightly older generation. The generation who is currently middle management and above. Once they’re all dead, work will be pretty cool. Ha ha. Just kidding.
One thing I DON’T agree with is his comparison between Encarta and WikiPee. The internet, free collaboration, work your time on your own time for free model of business simply didn’t exist when Encarta was first conceived. They were making a product that was supposed to fit on a CD to replace the physical 26 volume set of encyclopedias that most homes had at the time. What will he try to compare next? The wireless telegraph and twitter? OMG! Why were morse code operators so stupid? They had 3 bits of information and twitter only has 2, but twitter like rules the world and junk.
Bad comparison IMHO.
I disagree personally, as I do not wish to go into defending sweeping generalities.
And I refuse to acknowledge any such generality as having any effect on my salary or bonus negotiations what-so-ever. Full stop.
Everything is negotiable. Those people writing the cheques figured that out a long time ago.
Starting your own company that does ‘get it’ will be an eye-opening experience as geek is suddenly facing commercial aspects. My suggestion for a soft remedy is to have a rewarding pet project: http://brainpicks.wordpress.com/2010/02/25/every-geek-needs-a-pet-project/
I think every human being wants those three things. Developers are not unique in that regard.
Hertzbergs two factor theory (job satisfaction and job dissatisfaction act independently of each other) is well worth reading:
Short version:
http://en.wikipedia.org/wiki/Motivation#Herzberg.E2.80.99s_two-factor_theory
Longer version:
http://en.wikipedia.org/wiki/Two-factor_theory
Thank you very much for this article.
I just changed my job because of point 2 and 3.
Your artice and Daniel Pink made me think about job motivation in a clearer way.
hehehe that’s soooo true 🙂 Thanks for the amazing article 🙂
I love it!