Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
Programming

The Moderately Enthusiastic Programmer 533

An anonymous reader writes: "Developer Avdi Grimm posts about the trend throughout the software industry of companies demanding that job applicants be 'passionate' about programming when hiring into ordinary development jobs. Grimm says, 'I love code. I dream of code. I enjoy code. I find writing high quality code deeply satisfying. I feel the same way about helping others write code they can feel proud of. But do I feel 'strong and barely controllable emotion' about code? Honestly? No. ... I think some of the people writing these job ads are well-meaning. Maybe most of them. I think when they write "passionate" they mean "motivated." No slackers. No one who is a drag on the team. But sometimes I worry that it's code for we want to exploit your lack of boundaries. Maybe it's fanciful on my part, but there's a faintly Orwellian whiff to the language of these job ads: excuse me comrade, I couldn't help but notice that man over there is not chanting the team slogan with sincere revolutionary conviction.' Is it realistic for employers to expect us to be passionate about software we're hired to build? If they're looking for the head of a major product, then maybe it's warranted — but for everybody, even the grunts?"
This discussion has been archived. No new comments can be posted.

The Moderately Enthusiastic Programmer

Comments Filter:
  • Well You Know... (Score:5, Interesting)

    by TemperedAlchemist ( 2045966 ) on Friday January 31, 2014 @03:07PM (#46122229)

    What management actually means by, "We want people who are passionate!" means that they live in a fantasy world where truly passionate people will come work for them for meager pay, lousy benefits, and an average work environment. It's the ultimate delusion of entitlement. Because why should talented people settle for them?

    There is good management. But most of the time you see poor management who blame their own inadequate and incompetent leadership abilities on their employees. Many seem to look at subordinates as nothing more than a monkey there to churn out code -- like it's such an inconvenience that they have to deal with actual humans who have like, squishy innards that need nourishment and rest.

    Add it to the list...
    "Fast paced work environment!" We're understaffed.
    "Opportunity for advancement." We have a high turnover rate.
    "Flexible hours!" You'll never be able to predict the next week's schedule.

  • Build Mastery (Score:3, Interesting)

    by Anonymous Coward on Friday January 31, 2014 @03:11PM (#46122293)

    Mastery and Passion go together. Without Passion, Mastery will not result.

    I've been writing code since the '60s. I'm still the best in any team I join. When I'm not, I refactor, relearn, rebuild, etc. my skills. Then I'm the best again.

    This doesn't diminish the other dimensions, but this is where it's at. If you're not passionate, you won't think about it night and day, and you just won't reach that level of Mastery.

    Nor will you gain the satisfaction from having done so.

  • by wcrowe ( 94389 ) on Friday January 31, 2014 @03:13PM (#46122305)

    I think this is being read the wrong way. There is a huge demand (sometimes real, sometimes perceived) for coders out there. Companies feel like they need to attract coders who, in most cases, already have a job. A lot of these coders are in jobs that are not very challenging, and/or they have bosses who are like the PHB in Dilbert. Basically, a lot of coders are unhappy. Their jobs are tedious and they don't get recognition for doing good work. By using words like "passionate" employers are creating the illusion of a job that will be more challenging and exciting than whatever job the coder is currently in. In reality, businesses could care less whether you are "passionate" about coding or not, so long as you can get the job done and you are halfway competent they're okay. There's nothing really Orwellian about it. They're just trying to use language that will catch the attention of potential candidates.

  • by Akratist ( 1080775 ) on Friday January 31, 2014 @03:18PM (#46122375)
    Truthfully, there are a lot of jobs which basically require a person to show up and write competent code according to decent instructions, then shut it down and go home for the day. There are some jobs which require a high, if not manic, level of commitment to the job, because it's difficult, the tech is hard to work with, the requirements or deadlines are insane, etc. A high-performing coder is going to get bored at a 9 to 5 maintenance job...while an average code is not going to be able to take on the latter kind of job, but will do fine at maintenance. I worked for several years at a place that was a start up with a lot of big dreams and long hours, then it basically folded and I took a job which is a 9 to 5 maintenance job. When I get out of here for the day, I go home and start coding for fun, while keeping an eye out for the next high-pressure, high-demand gig. I get bored in this kind of environment, and so do most of the people I used to work with at the start-up. It's just about the right person and job and not some latest buzzword or ideal about who a candidate should be.
  • by Dracolytch ( 714699 ) on Friday January 31, 2014 @03:26PM (#46122449) Homepage

    I work for an academic non-profit, been there about a year. Happier here then I've been anywhere else in my career.

    The salaries are on the low-end of competitive. However, there is a point at which more money no longer truly motivates me, and I passed that years ago. Now, there are other cultural things which do motivate me. They include:

    I'm not the only person who's at the top of their game. It's nice to be able to really learn from others.
    I get to go home on the evenings, and the weekends.
    I can work from home when it's practical.
    I don't have someone hawking over me.
    I have a large amount of freedom to execute the work in a manner which makes sense to me (This is why people who care about their craft are important!)
    I have interesting and very difficult problems to solve.
    The problems I solve aren't just about lining someone's pockets with money. There's more purpose here.

    There are lots of places that survive off of hiring mediocrity, and have controls/standards in place to help hedge that (Extensive code standards, technology restrictions, other bureaucratic controls). Some people are VERY comfortable with that level of constraint. In those kinds of places I have quickly grown frustrated and unhappy. Of course, those places that survive off of mediocrity ALSO think they want passionate developers... But very often they don't really, they just want people who will work super extra hard but not ask questions nor challenge the system. It's up to the candidate to distinguish between the two.

  • Re:What about me? (Score:4, Interesting)

    by JoeMerchant ( 803320 ) on Friday January 31, 2014 @03:46PM (#46122701)

    Depends on where you go, I've seen age-ism cut all four ways, for and against me, in my 20s and in my 40s.

  • by uncqual ( 836337 ) on Friday January 31, 2014 @03:54PM (#46122765)

    I think you nailed it.

    Money is a great demotivater. You certainly can demotivate someone who is passionate about a job by underpaying them - even just a little bit of underpaying can be disastrous.

    However, money is not a great motivator for people passionate about a trade or skill except, perhaps, in special circumstances where that trade or skill is money oriented (banking/finance for example). In fact, trying to motivate someone by significantly overpaying them can backfire because they may become fearful of losing their job and returning to "market rate" and having $50K less a year to spend/invest. In a field like software development, you don't want your employees to be too motivated to "keep their jobs", you want them to be very motivated to "do their jobs" well -- and sometimes that means telling the project manager that "Nope, we can't/shouldn't do X in time Y because if we try, it will suck" or telling their manager "The weekly Aggregated Project Control Summary Assessment Review Status Inventory Process is taking me two hours a week to complete and I think it's a complete waste of time - please explain why this is of benefit".

    Most great developers I know would work for free if their modest needs were provided for and they could do what they love to do. Of course, what one developer loves is different than what the developer in the next office loves. It's the responsibility of management to figure that out and assign work/guide the project to best "exploit" (in a positive sense) the strengths/weaknesses and passions of each developer while also giving them assignments that allow them/urge them/require them to expand their scope and horizon -- esp. for less experienced developers who are more likely to benefit.

  • by icebike ( 68054 ) on Friday January 31, 2014 @04:10PM (#46122899)

    Everybody seems to think the maker for programmers revolves around game development or writing yet another version of some cockamamie scripting language. They look for people who can create the next Doom game engine, or re-write the current one to drive and assembly line or something.

    Then they hire these people to keep an in-house accounting system running, or do maintenance on some software product that they sell, and (far less frequently) to design and build something totally new.

    The guy reading every new text about programming and fiddling with every new programming language will sooner or later end up using YOUR project as a proving ground for HIS passion. Soon you have an maintainable mess, and he moves on to another job.

    For most work in this industry (any software industry), pride of craftsmanship is worth a great deal more than passion.

    I quite frankly don't care what he does on the weekends, and the fly fisherman will arrive back at work Monday morning more refreshed, and with fresh insights (there is a lot of time to think while waiting for fish to commit suicide). That vexing problem and that horribly complex chunk of code will end up being well handled and properly structured, simplified, before it is actually written, and documented, and tested, because the pride of authorship won't allow anything else.

    Meanwhile the guy coding up his own game engine nights and weekends burns himself out, arrives with a fried brain, and your project suffers.

    Not saying that a healthy interest in programming techniques and after hours involvement in coding projects are bad. Just that they aren't actually necessary for a long and successful career, and aren't always going to be all that helpful to the employer, and the employer should be looking for traits more suitable for the job at hand.

    If that job involves new game development, or writing new code to drive your computerized plant automation system, you probably want an experimenter. If the job involves security issues you want the paranoid. If it involves inventory or money or scheduling or sales or bean counting you want the guy that writes the cleanest code.

    One size doesn't fit all.

  • Re:Well You Know... (Score:4, Interesting)

    by RobinH ( 124750 ) on Friday January 31, 2014 @04:12PM (#46122915) Homepage
    "Fast paced work environment!" actually means that we change our specs a lot, even up to the hour before delivery, and we don't want you to complain because we're "fast paced"! :)
  • Re:Dreaming of code? (Score:5, Interesting)

    by Anonymous Brave Guy ( 457657 ) on Friday January 31, 2014 @04:15PM (#46122935)

    Actually, that's (proven) not true. Money only works up to a (surprisingly low) point.

    Yes. Moreover, it's one of those issues that tends to be either neutral or bad: being perceived as underpaying is a big black mark, but being perceived as paying the going rate is just average and doesn't earn extra credit. On top of that, it's a relative measure, as employees are comparing with their peers at their current job and with what they could achieve elsewhere if they switched jobs, not with some absolute scale where paying $X is stingy but $Y is fair.

    For a typical software developer, paying at or slightly above an honest market rate will go a long way to attracting and retaining decent people. It's a job, and they want to pay the rent/mortgage, look after their kids, take the family on holiday, and so on. Once they can do that, bonuses and profit share schemes and stock options and the like are all generally welcome, but sometimes it's more because they recognise the contribution the employee has made and the value of their work than because of any particular amount of money involved.

    It seems strange, but it's often just as important or even more so that employees receive genuine compliments from peers and managers when they deserve them. Yes, they're just doing their job, but they're doing it well and no-one likes to feel their hard work is taken for granted. An honest appraisal that recent performance was good, or a sincere offer of support if some things need working on, goes a long way.

    Even dumb stuff like a "meaningless" job title bump so it's the same as others in the industry with similar skills and ability can make a difference. I once worked with someone who only had a few years of experience out of university but who was smarter and more productive than average, and he left a role that was otherwise OK just because this didn't happen. The employer's HR department had a strict system where effectively your job title was tied to years of experience with very little flexibility. The developer was worried that his CV was starting to look underpowered if he wanted to move on later, because he still didn't have "Senior" in front of his job title when in most places he would have by then. He jumped ship for little more than a bumped title, and the previous employer lost one of the smartest guys I've ever worked with because HR's computer said no. Coming back to the original point, I think he actually took a slight pay cut to make the jump, too, which puts the money vs. recognition thing in perspective.

  • Re:Dreaming of code? (Score:3, Interesting)

    by easyTree ( 1042254 ) on Friday January 31, 2014 @04:17PM (#46122953)

    I see a lot of job ads and 'enjoy' deciphering recruiter-speak.

    For instance "Excellent Opportunity" invariably means "shitty pay - the only way is up."

  • In my experience (Score:4, Interesting)

    by stox ( 131684 ) on Friday January 31, 2014 @04:18PM (#46122961) Homepage

    The fastest development comes from a group of motivated individuals who are almost all the same (ie. background, experience, language preference, o/s preference)

    The most robust development comes from the most diverse teams.

    Rarely does fast = robust, or vice versa.

  • by bored ( 40072 ) on Friday January 31, 2014 @04:47PM (#46123199)

    The first time I saw that, I thought it was a cold idea.. It filters out the people who can't code and don't have little hobby projects to sharpen their skills.

    Then I got thinking about it..

    My git hub account has like 1 thing on it, my sourceforge has 3 or 4 abandoned projects (a couple with a fair number of downloads too). And I have dozens and dozens that never made it to the see if anyone else can use it stage.

    What does that tell a potential employer? I can't finish projects? Well that isn't what happens at work, I do the fun stuff and I trudge through the boring parts of supporting and maintaining it too. That is why its work...

    Now I have a family, and that seriously eats into the time I have for hobby projects (especially if I work 60 hours), leaving what? The time I'm at work? Unless your google working on a hobby project at work is a major NO NO.

    So, really what are they getting from your github account? That your unemployed and have time to spend maintaining an open source project? That you don't have a family life, or instead of working 60 hours at your job you work 40 and spend 20 hours on a hobby project?

    In the end, I'm betting most of the people who have large active projects on github that aren't their day jobs, don't actually make very good employees.

  • Re:Well You Know... (Score:4, Interesting)

    by tompaulco ( 629533 ) on Friday January 31, 2014 @04:50PM (#46123231) Homepage Journal
    At my office it is "We're okay with you coming in late so long as you put in 12 hrs each day and show up no later than 8 and leave no earlier than 6."
    Seriously, you get no leniency whatsoever if you were up until 4 in the morning working on an unreasonable deadline. If you are not in first thing the next morning, you get a talking to. I've gotten in trouble for not resolving an issue within an hour when it was sent by e-mail at 6 in the morning. I can't leave my phone next to my bed because the binging and bonging goes on all night long. I can't tell the difference between a production down e-mail and one saying my expense report status has changed, so I am supposed to look at my phone every 15 minutes all night long whenever it dings at me.
  • Re:Dreaming of code? (Score:5, Interesting)

    by curunir ( 98273 ) * on Friday January 31, 2014 @05:21PM (#46123495) Homepage Journal

    It seems strange, but it's often just as important or even more so that employees receive genuine compliments from peers and managers when they deserve them

    Yep. I work for a Fortune 100 company and one of the surprises when I moved to management was that the budget for salaries is actually 110% of what developers think it is (i.e. if you added up all the salaries that developers think they make, there would be an extra 10% left in the budget.) That last 10% is intended for managers to dole out as awards, which can be taken either as bonus pay or in grossed up gift cards. It was explained to me that the company found that employees were happier making the same overall amount when a portion of the pay was doled out for something they did well. That attachment to a job well done made the pay more meaningful to them than it would have been had it simply been added into their paycheck. And the encouragement to take the money as a gift card also helped associate the company with the spending of discretionary money, which is something that people find pleasurable.

    The whole thing was an interesting look into how HR departments are using psychological research to help retain valuable employees. I'm still not sure exactly how I feel about it...on the one hand, it's deceitful that this is being done without employees realizing it. On the other hand, it's making them more happy in their jobs. It's almost like a doctor prescribing a placebo pill...if the patient gets better, does it really matter that it's actually due to a psychological phenomenon?

  • by Cederic ( 9623 ) on Friday January 31, 2014 @05:35PM (#46123653) Journal

    I'm sorry. I like programming. I like people giving me difficult problems to solve and giving them working solutions. It's fun. It's creative. It adds value. It gives me a sense of accomplishment, repeatedly.

    Because I like programming I also want to keep getting better at it. I learn because I enjoy learning, and because it means I can solve even larger problems even more effectively.

    I don't see the working day as a slog that I have to get through, I see it as a lucrative hobby. It's fun. If it wasn't fun, I'd go and do something else.

    Is that passion? I don't know. I'd rather employ a programmer with that perspective than one that sees it as a more comfortable alternative to chopping down trees all day.

  • Re:Dreaming of code? (Score:5, Interesting)

    by KingOfBLASH ( 620432 ) on Friday January 31, 2014 @06:15PM (#46124053) Journal

    Well, sort of.

    I once had a job that paid twice what I make in my current job. It was so horrible (I was on call 24 hours a day) I referred to it as "selling my soul" when people asked me what I did. I got the big raise because I told them I was quitting, and I literally was the only one who could (or would) do the work.

    I ended up quitting and finding a job with more reasonable hours that let me come home and actually be happy.

    Money is a funny thing.

    If you make too little of it, you'll be unhappy. Even if the job is nice, if you are underpaid enough, you'll be miserable.

    But, on the flip side, just throwing money at people will not make them happy. If my old boss had addressed some of the quality of life issues like getting called on to do work at midnight on a friday night, I might have enjoyed the job and stayed. There was no real reason I needed to field calls at midnight except upper management in a different time zone wanted to be able to wait until the end of their day to give me a call.

  • Re:Dreaming of code? (Score:4, Interesting)

    by ranton ( 36917 ) on Friday January 31, 2014 @09:16PM (#46125329)

    The difference between $100,000 a year and $200,000 a year isn't really that much, particuarly when you consider how much disappears in tax.

    To quote another poster, that is SO not true. But not because of keeping up with the Joneses, or greed, but because there is a very apparent difference between $100k and $200k.

    It is the difference between being able to have an upper middle class lifestyle with a single breadwinner, or needing two earners. It is the difference between good schools, and the great schools where half of your kid's friends are going to Ivy league schools. It is the difference between still making sacrifices in your budget, and simply having everything that a middle class person would want (two weeks of traveling per year, a new car every five years, a 3500+ sq ft house, saving $100k per kid for college, etc). Someone with a $100k salary can still get any of the things I mentioned, but someone with $200k can get it without sacrificing any of the others.

    As someone with a family income in between these two figures, I can tell you that every extra $10k per year makes a pretty big difference in our budget.

He has not acquired a fortune; the fortune has acquired him. -- Bion

Working...