The Moderately Enthusiastic Programmer
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?"
I don't get this psudo-nerd bragging right. I've worked jobs I hated and had dreams about them, too.
I'm 40. I love what I do, I love building websites and I love doing front-end development. Do I live and breathe it? No. I go to work, work on great sites, and then go home for the day and enjoy my evening doing non-coding things.
If you don't eat sleep and breathe their corporate paradigm at all times you're not the person they're looking for. They don't want you to forget that they own you, even when you're not physically at the office: your personal work belongs to them, your future employment opportunities (non-compete) belong to them, your personal activities (social media et al.) belong to them... And they wonder why people get disgruntled.
I feel this way about the current codebase I'm working on right now, but they only give me the nerf-type of weapons, so no one needs to worry.
God, schmod. I want my monkey man!
I like software development. But when I go home, I do other things than write more code (write/record music, write/shoot/direct/edit short films, cook foods, breed fish, exercise/martial arts, spend time with my SO, etc). Apparently, to some developers, this means I don't take my job seriously and I shouldn't be in the industry because I'm not spending every moment living and breathing code. I don't even own a github. And frankly, if that's the expectation, I'd rather not work in that sort of environment.
If you were me, you'd be good lookin'. - six string samurai
People will do things for love that they won't for money, including endure abuse, or attempt the impossible.
much of left-wing thought is a kind of playing with fire by people who don't even know that fire is hot - George Orwell
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.
I spend 8 hours a day loving what I code in c++. When I leave work I generally focus on my hobbies like writing news for competitive gaming. If I leave work with a problem unsolved sometimes I'll think it through while I'm driving. Long story short, I love code development at work and couldn't imagine a job without it. That's always been enough for my employers.
So, when managing, I'm always looking for passionate developers. Here's why:
Where I work, there are no grunts. There are no people who mindlessly grind out code. We're not building yet another website: We're solving hard problems, and we want everyone to contribute. To contribute with value, you need to not stagnate in one technology for half your career. You need to be well-read about software. And while we work very few weekends, sometimes there are longer days (like anywhere).
When I mean I'm looking for a passionate developer, I'm looking for someone who cares about their craft, not just someone who shows up to close bug tickets and collect a paycheck.
This sig has been enciphered with a one-time pad. It could say almost anything.
Honestly, most managers would be clueless as how to deal with a passionate programmer.
The meetings, conference calls, the coding conventions, the documentation, making hard choices that hurt the deeper beauty of the finished product. This is poison to the passionate programmer. Other people doing substandard things to her code. This isn't ok to do to someones passions. It would be like letting a person bring a pet to work, and the staff kicks it at a whim.
They want people who pretend to be passionate. But really their looking for employees that want a paycheck, and a good portfolio when they leave.
I think the summary nails it. Employers are mostly looking to exploit their "human resources" anyway they can to make a buck. That includes grinding your passion to a pulp why they reward themselves to the fruits of that hard labor. Everyone should stop pussyfooting around and just learn to not feel bad about calling spade spades.
Is to just establish a culture that rewards going the extra mile with more money. If a developer helps develop business, cut them a commission check comparable to the sales guy. If they have a reputation for rapidly solving customer problems, throw them a bonus.
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.
...but when i do...i prefer to do it with passion.
stay passionate my friends.
My God can beat up your God. Just kidding...don't take offense. I know there's no God.
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.
Proverbs 21:19
Managers and HR want only the best coders, they solve this by the following:
Taking 10+ random and duplicate hour long interviews of which the person must pass all with flying colors
Must be really good at puzzles, because programming is soo much about pulling novel tricks out your ass on the spot
"He" must fit in with our culture and be cool and hip
And lets not forget paying them:
Be willing to be paid in free fruit and soda or pay us to work here because we are an awesome fashion subscription next big thing and women buy anything
OR we are a post IPO social company with a 200 P/E ratio and we will give you a wheelbarrow full of our stock options
OR he must have wet dreams about coding elaborate medical billing systems, because oh yeah that is the boring shit we actually do
Anyone with any lick of coding ability is passionate about programming. This is equivalent to hiring an artist to draw logos and saying they must be passionate about art, of course they are, or they wouldn't be an artist.
Compare that to other "less creative" positions... The average call-center person is probably not passionate about call centering.
Consider this:
public String getSum(int numA, int num2) {
if (numA == num2)
{
return "" + numA*2;
}
return ""+(numA + num2);
}
If that was painful for you, congratulations... you are more passionate about programming than 99% of people are about their job.
What they're saying they want is people who will happily be in the office 100 hours a week, plugging away and barely stopping to eat.
In other words, it's a red flag, and I'll pretty much reject out of hand a contact from a company that makes a big deal about it.
I am officially gone from
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.
Corporate speak is full of nonsense code words use to mean things other than what they mean. Job postings are nearly the thickest.
"Need Passionate Self-Starter who is a rock-star team-player who wants to change the world!"
This stuff has been nonsense since before I was born.
-josh
A healthy passion for something includes a well-balanced diet of other activities not related to your passion. Any place wanting to hire otherwise is only going to get a sociopath. That said, it's frustrating and time consuming to get a pile of resumes where most are such an impossible fit, they could not have possibly read the posting. You tend to get a little "over specific" next time you list just to weed out more of the static.
Join the Slashcott! Feb 10 thru Feb 17!
The meme "be passionate about something" always bothered me, because beyond it's intended surface implication that working hard towards a goal produces results, it suggests that satisfying one's passions is a worthy goal -- i.e. the purpose of life is self-satisfaction of one's own passions.
Then I researched the etymology of "passion". Passion comes from the Latin passio which means "suffering," which is why Jesus' suffering leading up to His crucifixion is called the "Passion of Christ." Jesus did it for others, not for Himself.
Over the centuries, the meaning of the English word "passion" morphed into meaning suffering due to desire. Thus, "passion" is in some sense its own antonym, in terms of serving self vs. serving others, when comparing the modern definition against its Latin root.
This ambiguity is being exploited by these hiring companies. Because the word "passion" hides whom one is serving, hiring companies are hiding that what they really want you to do is suffer while serving them.
Most of the code that I see exhibits what I can only describe as a kind of aggressive indifference.
It's not just that they don't care.
They *totally* don't care.
And they're going to make sure you know it.
And suffer for it.
After a while, dealing with this stuff is just depressing.
Especially if you do care.
I love sanitizing telephones. I dream of sanitizing telephones. I enjoy sanitizing telephones. I find high quality telephone sanatization deeply satisfying. I feel the same way about helping others sanitizing telephones so they can feel proud. Please hire me so I can buy food and shelter.
I saw a big change happen in the industry, while I was briefly at Microsoft.
My manager, and Microsoft in general was more about delivering a positive message, as opposed to having a positive message to deliver.
The problem with that is, if you encourage everyone to do it, they eventually begin doing it even to the company and not just the customers.
"How is that new version of windows going?"
"It's going great!!"
And we all know now, it was terrible, horrible, full of in fighting, self promotion, bad decisions.
"How is that new web site that all America will use, and a presidency depends on?"
"It's going great!!"
See the pattern here?
You really want passionate developers? You are an idiot if you do. As a boss, I did not want surprises, and to me the worse thing in the world a company could do was sell something that was broke. Companies today do not seem to share that philosophy. Consumers tolerate crap and beg for more. So, I guess it really is not just the companies to blame.
slashdot troll = you make a compelling argument I do not like the implications of.
Perhaps this "passion" stuff is just standard bullshit which is not really expected.
A few jobs ago, I worked for a company which had a job opening. They posted an ad for the job, in which they described the ideal candidate as someone who was deeply "PASSIONATE" about their work. However the position itself was in accounting--specifically, in payroll. Obviously nobody is passionate about payroll. Nevertheless, they asked each interviewee if he was "passionate" about payroll, and each candidate answered that he was.
If you want to paint a barn, you hire a painter. If you want to decorate the ceiling of a cathedral, you hire an artist who is passionate about her work. The painter will usually have more predictable working hours and make enough to support a family. The artist is the one who will be remembered :-)
Time flies when you don't know what you're doing
I like coding. I don't love it. I have a wide variety of interests in my life, such as family, movies, reading about other topics.
I have met a very few coders who are really all code all the time. And you know what? I find them insufferable.
A person should be well rounded and have many interests.
Democracy Now! - your daily, uncensored, corporate-free
In my experience when a company says they want someone "passionate" what they mean is that they want someone willing to work overtime on a regular basis. Secondarily, they want someone who doesn't question overtly stupid decisions.
Just do what you're told and be enthusiastic that you have a job.
What I look for when hiring someone is someone who likes programming. Who wants to get better at doing it. Who wants to work with other people who like programming and want to get better. Someone who treats their work like a craftsman.
I think a lot of these job ads are so over the top because the folks doing the hiring have no idea what they want in a developer. Somewhere along the way someone wrote a blog post on somewhere site that talked about hiring folks who have a passion for their work.
However at the end of the day, do you want to hire a zookeeper who doesn't like animals? an accountant who hates math? a lawyer who can't stand the courtroom? No you don't. You want to hire someone who goes in does an 8-10 hour day and at the end of it says, "I'm proud of what I've done. I can't wait to do some more of it tomorrow".
I think moderately enthusiastic would be just fine for most position. What I don't want is someone who views the job as a grind or a bore. I will fire you for a bad attitude. Fake enjoying it until you actually do :)
Better hurry up while supplies last!
Taking guns away from the 99% gives the 1% 100% of the power.
Did you think that those personality surveys pushed by MBA's for gas station attendants wouldn't reach Engineering?
We did those at work and school and the programmers did fit into a couple of predictable buckets. It was fun to watch one manager say this test is wrong, my observations would put you into a different bucket.
This is not to say a person must be in one of the predictably buckets to do well at a particular job, just that there is something to these tests. Some people with certain dispositions find some jobs more attractive than others.
The problem is, being passionate about code, doesn't have anything to do with being able to code. Just how much you enjoy your profession (Without the added benefit of pay).
Passion is buzzwordish and an overstatement. However the better programmers that I have known over the decades have been those who have a genuine inherent interest in programming. They will read about software development, learn new languages and write some program on their own for nothing more than their own amusement or curiosity. Those who have never written any code outside of work or school tend not to be the better programmers. When someone uses "passionate" I interpret it as distinguishing the former from the later. Granted there may be time periods where those interested in programming may not have the free time to do so, like when they have a new child. However when free time and circumstances permit I've seen a little reading and coding creep back in.
That said, my first job out of college was to take a custom designed board for an embedded system that the hardware guys just got working and to write its firmware: a kernel, its drivers and software that would load and host a C-based application. I don't know if "passionate" would apply but as someone who likes assembly language and low level programming I was pretty damn excited and really enjoyed my day to day work an awful lot. I suppose a buzzword compliant manager could have described me as "passionate" although I would have sued different words.
It doesn't mean "live and breath" like it is worded IMO. You should love what you do and be happy (most of the time) to be at work though. I get very frustrated when working with people that have the opinion: who care's? Good enough it runs and passes unit tests. Refactorablity/beautiful code is a "nice to have". Business has a value on all metrics of a implementation of course but a lot of things are determined by giving a damn/having put in effort to learn new skills and thought to actually apply them in your work. When creating a generic solution would be just as performant and time consuming to implement but you don't bother because that wasn't in the feature description and isn't the way you learned how to do it 10 years ago in school and you can't be bothered to learn something new, you fail.
Part of being a professional is applying your special skills in the best interest of the client even when they might not be able to properly articulate all the intricacies of what they want. You need communication skills to get them to nail down exactly what they want as best as possible then you need to apply your judgement to make the best choices you can (as determined by their best interests). If you don't care you might as well be an if/then/else monkey because you add no extra value.
On the flipside of the issue: your employer shouldn't expect to dictate your personal interests: as in why are you spending 10 hours a week riding a bike when you could be using it to work on FOSS projects and learn stuff you can use here? Work is work, home is home. You should have passion at both and both will likely have some overlap but how much work blends into life isn't their business (though the opposite is since they are paying you for that time).
Indeed. I work any amount of hours in order to do a good job--no a great job--and I enjoy it. I consider myself passionate, and good luck competing with me. Most do not have the ambition.
I object to power without constructive purpose. --Spock
I know a lot of people are suggesting it is just a way to find people willing to work extra hours or put in their own time, but I think it might actually be something much simpler and less sinister, an arms race in adjectives.
How do you describe people who are into coding. Well, you can say you 'like' programming, but then the next person says they 'really like' programming. Well, now it sounds like they are more of a programmer, so you up your description to 'uber-like' programming, which then others do to seem baseline. This sets up an expectation in both reading and writing resumes regarding how one describes perfectly normal levels of caring about your work, with increasingly extreme imagery being used because everyone else is doing it to, and anyone who doesn't get into the race looks unenthusiastic in comparison even if just a year ago the same description would have looked good.
You also don't have a life. Good luck trying to recapture your youth when you're a burnt out middle-aged husk.
What some employers want are Stakhanovites. Most don't really want "failure is not an option" types, who want off-site backup systems, fail-soft recovery, a Q/A organzation with the authority to delay deployment, expensive testing tools, automatic code analyzers... Most don't want programmers who polish their code until it's beautiful, like MIT students are taught.
All of this stuff is merely emotional inflation. These days you can't just like something, you've got to love. Likewise, if something displeases you a little, you are said to hate it. Personally I find these extremes: black or white with no middle ground to be rather childish - like TV villains who are only bad, or heros who are only good. It might work in programmes where you only have 1 hour - or rather: 40 minutes + advertisements to introduce, flesh-out and conclude a story, but real people aren't like that and adopting TV-style dialog into real-life is misleading.
So to say you "love" programming is pointless. I'm sure people are drawn to some aspects of creating new software (though doing the documentation and the testing never seems to be those aspects) and occasionally actually like the feeling of creating something. But is that love? No of course it isn't. Love is (break out the violins) all-conquering, an emotion you would go to extreme lengths to preserve and protect.
If you really did "love" coding, you wouldn't have to be paid to do it. Maybe that's what employers are really looking for.
politicians are like babies' nappies: they should both be changed regularly and for the same reasons
I like solving problems and my (usually system) software development and system administration tasks provide those kinds of activities. I'm rather good at them and get paid pretty well for my knowledge, experience and services. I always strive to do the best job I can do *and* the best job that can be done. I'm a professional. But outside that? If I never saw another computer again, that would be fine.
I have 27+ years experience on just about every kind of Unix platform known, from PC to Cray-2 (I know specifically that I have not used AUX and AIX) and many Windows systems. I routinely use about 10 programming languages. Those things are not me, just what I do. I'd rather spend my time being passionate about my actual life - and eventually keeping my last promise to my wife, 8 years ago last month, that I find someone else and be happy with her. (I'll get on that soon, Sue, I promise.)
Computers are a pain in the ass. Spend your time loving some one/thing else.
It must have been something you assimilated. . . .
Who ends up writing these descriptions? The programmers? Their team lead? The architect? No. They just provide the job requirements.
It's your HR staff, your middle and upper management. They come up with corporate statements like "Engage our customers and employees with passionate, best of breed solutions and lead the mindshare" and that jumble of words has real meaning in their world. Now when they issue a statement, they're going to be asked things like "Does this grow our mindshare? Can you put a metric on the net 'passion' of this business decision?" This leaks through into their job descriptions among other places.
You've probably been exposed to this phenomenon before and come away confused; this world is about 90 degrees away from the norm - just enough suck you in with familiar words and phrases which only reinforces the alien nature when they're used to mean something totally other.
You ever get the question in an interview, "Where do you see yourself in 5 years?" - that comes from the same mindset.
Look at it from a business standpoint: If your company makes great sprockets, and you consistently make a million dollars in sprocket sales ... you've failed as a business. The metric isn't how much you make. It's not even how fast you make it. It's how fast you increase the rate you make it. So when they hire execs, they want them to say "in 5 years, I want to be the division manager of the newly created south pacific department, that I've built from the ground up" - or something. They don't want them to say "Valued for my professionalism, expertise and domain knowledge, doing the same job I've always done." That means they're somehow broken, that they just don't "get it."
You'll probably note that when they bring in non-administrators, those folks don't ask those questions unless they have no idea what they're doing hosting an interview. On the other hand, if the majority of your company is focused on high pressure sales - real estate, auto, etc - you'll be exposed to it more and more, even in support jobs like IT, and even from other engineers.
This is just one of those cases. If you're not in sales, marketing, middle-to-upper management, it's usually safe to ignore the parts of the job description that don't relate to your actual job. They likely have nothing to do with it.
There's already a decent tradition in the social sciences examining the role that emotion increasingly plays as a resource to be allocated in economic systems. Affect becomes labor, across industries (not just software programming).
And yes, there is more than an Orwellian whiff about this. But it is what it is—companies hire great attitude, drive, belief, positivity, team spirit, etc. In several contracts I've been involved with, companies actually had metrics for positivity vs. negativity in meetings, communication, and so on, and this was a part of weekly evaluations. They want to see your Facebook page. Everyone knows that it matters whether you "present" well. People with a "great outlook" and "enthusiasm about the company" are routinely promoted over those that are more competent but perhaps dour. In fact, supremely-competent-but-dour is the butt of jokes (as Slashdot's conventional wisdom is already aware).
There is nothing more personal than one's emotion and affect; it is perhaps the most human thing about us in our day-to-day experiences, and the most individual. But more and more, it's a metric to be evaluated, a "property" of yourself as a system that must be managed to remain compatible with the company. To some extent this makes sense in an increasingly rationalized world—what's in your head is a black box. Your interactive style and self-presentation on a moment-by-moment basis are effectively your API. So efficiency dictates that a certain predictability, compatibility, and growth-oriented, team-oriented set of assumptions will be valued, and thus, ought to be "implemented" by you as the manager of your own API.
At the same time, what good is a world in which nobody can have a bad day or a personal opinion on anything? In which your bank balance is directly correlated to your ability to feel the emotions that your boss has outlined for employees in the company handbook?
Is it really so great to live in an efficient and productive world that is ultimately lacking in what Hannah Arendt called humans' intrinsic "natality," the ability to do and feel something new, something individual, something that is an emergent property of the extremely complex phenomenon that is the self?
It's a bummer. (And of course, this very post is precisely the kind of post that they warn you about in the popular press, in articles about how "what you say on the internet will always be there" and future HR managers might exclude you for a position because of it, i.e. because of your negativity and clear lack of cooperation with basic emotion-and-opinion suppression culture.)
Of course, one group is exempt from these restrictions: the wealthy. They can say what they want, since as a matter of power relations, they are central in the system. Others (with less money) must amend their emotional style to be compatible with the rich, the powerful, the CEO, the venture capitalist. These latter people get to say and feel whatever is on their mind or in their gut, unlike the rest of us. And, irony of ironies, they are broadly applauded for it, no matter how extreme, atypical, or mundane the positions. The rest of us would simply be fired.
STOP . AMERICA . NOW
Some comments and views here... Some people won't like, :). Some management theory thrown into the mix too.
First, performance is driven by a mixture of ability and motivation (google two-factor performance). The ability is (relatively easily) measured and difficult to fake. Motivation is intensely personal and very hard to measure, motivation is very easy to fake. When interviewing or selecting staff, you look for people who have an overt demonstration about the motivation. The want for passion is a call for an overt demonstration of motivation.
Second, the barriers to entry for the software world is very low, professional accreditation isn't needed and generally isn't need to be renewed. This leads to a very inconsistent and bumpy collection of development skill. How do you sift through this? You look for the developers that show a strong and overt interest. They should at least be average, if not strong. If anyone could be a building architect, you would look for people either with a name and a track record, or you would look for someone that is always building models.
Third, the software world has a lot of contributors, but few leaders (either management or technical leaders). With few anointed or emergent leaders, you don't have the basis for leading teams. The emergent leaders are hard to spot initially. So again you look for overt passion and opinions. These will be uneven leaders (tech depth, not necessarily mentoring, no best practices).
These three represent the primary gaps in the industry that I see that makes the fallback position is to look for people who show passion. The theory is that passion has to be present and you can shape other deficiencies. Of course the paradox is that these people typically have such a strong opinion that the shaping is difficult or impossible.
Soft skills are fun ! :).
I hear you. Back when I was looking for a job I had similar problems.
I'm a chemist. I've spent years studying various types of chemistry. Chemistry is something I do--sometimes in the lab with actual chemicals, and other times on paper when I'm thinking about what to do in the lab. So naturally the word "chemistry" will be part of several phrases on my resume, and will be used in search engines to find matching jobs.
Now, you've had problems with touchy-feely HR people demanding that you be "enthusiastic" or even "in love with" you chosen work. But me? I got a crapload of irrelevant "matches" based on the word "chemistry".
Apparently this same school of touchy-feely HR thought gives me a 99% false positive rate on job searches, because everyone is looking for someone "with the right chemistry to join us."
Attention HR people: You expect a certain amount of professionalism from me if I'll be working for your company. I expect the same from you. Quit writing job descriptions like you're planning to use them as an OKCupid profile.
These descriptions rarely say anything about the employers expectations of the employee. They are intended to attract a pool of qualified candidates.
Just as some job seekers have trouble finding work because they have trouble setting themselves apart in businesses with a large pool of applicants, some businesses have trouble finding employees because they have trouble setting themselves apart from a large pool of potential employers. In order to attract applicants, they try to use more appealing language since a lot of applicants are looking for job satisfaction rather than something that simply uses their skills.
Programming software is a means to end... that end being huge stacks. Want my eyes to light up about programming? Want me to do hop on my desk and do the dance of joy for programming? Then add a few more 0's salary and a few more days to my PTO. Do that and I'll be happy as a clam and program 'till my fingers wear down to nubs.
Hope is the currency of fools
It's worth noting that regardless of how passionate you are about your work and job, your company will fire you in a hot second if it serves them best for even just the next minute.
It must have been something you assimilated. . . .
I interviewed, scored well technically and got along with everyone in both interviews. I interested them. I didn't get the job. The reasoning? They wanted someone that spent their off-hours doing development work.
At the time, I was disappointed. They were doing interesting stuff, like streaming video over satellites using the .NET framework. I was a budding mid-level then. I would have been a cheap developer for them. I would have learned quite a bit as well. What I understand now, however, is that they probably wanted to know if they could overload me with work. They were likely looking for someone who was willing to work evenings and weekends, without the extra pay.
Looking back, I'm glad that I did not get hired. I value my free time, and I do not spend it in complete passionate pursuit of development. I read about stuff every now and then, and do some home projects, but I find that I'm far more useful at work when I haven't been focusing on the same stuff at home.
You need to restart your computer. Hold down the Power button for several seconds or press the Restart button.
.
I'd want programmers that are driven to write quality software based upon factual reasons, not emotional ones.
In fact, the last thing I would want in a software engineering department is someone who is overly emotional.
Are (were) these people "passionate" about programming?
http://www.fastcompany.com/281...
I don't know; I wasn't there. I think they were passionate about how their product turned out, but passionate about writing code?
I've known people that were passionate about their "product". They were great to work with when they had a good idea and they got their way, and hell to work with when they had a bad idea, whether or not they got their way. Match one of those up with a boss that has no bs filter, and, well, now you're not having fun anymore.
Another thing about that sort of question. I do believe that a well-run company would look at the psych profiles to see if applicants (and existing workers) are a best fit for their kind of job. But from what little I know about industrial psychology, it is generally worse than useless to just openly ask people that kind of question with one exception. That exception is if the job requires a bs artist or sociopath such as sales.
Anecdote: The best programmer I ever knew was highly productive - one of those people who would sit motionless for 10 minutes and then write nearly perfect and documented code for hours as fast as anyone could type. I mean like 10-20 times as productive as the next best programmer in the shop.
This person would not work after five PM or Saturday except under greatest duress. (Why me? Make the slow people work late; maybe they can catch up.)
This person was a perfectionist about everything but passionate about coding? Oh hell no.
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.
"To those who are overly cautious, everything is impossible. "
for vegetables!
1. Passionate about programming.
2. Passionate about programming this in particular.
I'm in general passionate about programming. You cannot easily stop me from programming. I do it habitually and constantly.
Doesn't mean I particularly care about any given task I'm working on. What it does mean is that I have the level of competence that comes from doing a thing you love for >20 years, which is valuable in its own right. If I'm feeling sorta under the weather and I work five hours before I say "screw it, I'm not feeling like working on this", I am still gonna produce better output from that work day than someone who doesn't care about programming will produce from working ten hours because they're obsessed with their job. ... actually, the biggest improvement I've made in my work in the last decade was learning to recognize when I am just Not Getting Traction, and just walk away. Yeah, I'm "working" less, except that the rate of stupid and easily-avoided errors has dropped enough to more than make up for it.
My blog: http://www.seebs.net/log/ --- My iPhone/iPad app: http://www.seebs.net/seebsfrac/
When I was out of work recently I had to do dozens of IQ tests as a part of job applications. Eventually I got good enough at the tests to land a job. I must have a really impressive IQ now!
http://michaelsmith.id.au
While it has never been more important to be passionate, there's not so much to be passionate about. ...fewer of us have much influence over how to do our daily tasks than before...even though we're regularly told by our employers, our business magazines and our television software adverts that work is a place of exploration and fulfillment.
From [a study on UK supermarkets] on 'The realities of leadership': 'Almost every aspect of work for every kind of employee,
from shopfloor worker to the general store manager, was set out, standardised and occasionally scripted by the experts at head office.'
So, what is left for managers to manage? Primarily the answer is 'people management': motivating, beginning with 'getting the day started' meetings they concentrate on meeting targets by, as one manager put it, 'ensuring they (staff) are motivated, trained, they're quick to do the job, and hyped up, and they're going to go out there and deliver'.
Excerpted from the book "Talk Normal: Stop the Business Speak, Jargon and Waffle" by Tim Phillips
Now, after 30+ years in technology jobs, I'm pretty jaded. About the only time I get passionate about programming anymore is when I'm doing something for either myself or a friend or coworker. The saddest part is that the stuff I program for coworkers usually isn't part of my official job. S-I-G-H.
Cheers,
Dave
They that can give up essential liberty to obtain a little temporary safety deserve neither safety nor liberty.
Ben
I don't want people who go home after work and continue to work on their (coding) projects. Neither do I want people who think that working 100 hours a week is productive. It's not. I want you to work 40-50 hours a week (depending on workload) and aside of those 40 or 50 hours I'd prefer if you don't even touch a computer. Ok, tough luck with the kind of nerds we are, but the very last thing I want you is to go home and do the same you do in here. Go home and relax. Unwind. Recharge your batteries. Get outside and check whether grass is still green. Or meet up with friends and get drunk if that's more your thing.
It takes 3-6 months for someone in my team to be a fully integrated member. It is rather complicated to get into the flow and essentially I pay you for nothing in those first 3 months you're here. Worse, I'll most likely lose the productivity of at least another one of my people because he needs to hold your hand. The whole shit IS that complicated, and no matter how "good" or "experienced" you are, we're dealing with a lot of shit here that is hard to simply learn from a documentation. And that's even aside of all the clearance crap where we have to physically cart your carcass to a place to prove that you're really you and that you're supposed to get access that swallows quite a bit of time as well.
And the VERY LAST thing I need is that after 6 months when I can FINALLY start using you, you drop out with a burnout. Any kind of tenure under 2 years is most likely costing us more than hiring you got us. And while we certainly are in a rather unique position, it's not that different from most other jobs where programming is an important aspect. It takes time, and depending on the complexity of the project it can take a LOT of time, until a new team member is at a sensible efficiency level. Every new guy not only is unproductive the first time, he also takes away time from an experienced member who is needed to teach and explain.
Hire and fire is deadly in the programming area. And companies either learn that fast or they will eventually perish.
We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
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.
I find people who are that "passionate" about code to be annoying. I mean...wow...have some perspective. Be passionate about your family. Be passionate about justice. Be passionate about music. Be passionate about doing quality work (including when your "work" is coding). But I don't get the infatuation with programming per se.
What it really means is management will take advantage of you to preform all sorts of activities outside or your pay grade without any additional compensation.
Management has gradually beaten whatever passion I had out of me. There are still times when on principle about some topic or another I find myself becoming passionate again, and I have to actively remind myself not to care.
Passion is buzzwordish and an overstatement. However the better programmers that I have known over the decades have been those who have a genuine inherent interest in programming. They will read about software development, learn new languages and write some program on their own for nothing more than their own amusement or curiosity. Those who have never written any code outside of work or school tend not to be the better programmers.
Writing code for your own amusement without any purpose in mind is not a very logical way to spend your time. In many cases being a logical person that doesn't go off on unproductive tangents is a huge boon to writing good code. Only considering programmers that code in their free time is a little like only considering car mechanics that cruise the strip in their free time. Engaging in related activities in an unproductive way is hardly something you want your employees to be doing on the job.
No one said anything about people who devote all their spare time to programming. Only those who have never devoted any spare time to programing were mentioned. I'm just stating a correlation that I observed over decades that those who were the better programmers also tended to be those who read about software development and did a little coding on the side when they had the spare time, when they were at a point in life where they had some spare time. Some of these very same programmers who did a little hobbyist coding on the side are also people I have been scuba diving, camping, rafting, etc with. Others had various indoor hobbies that they also indulged in. But occasionally they all did a little reading or coding too.
The reason passion matters for developers is the speed at which our industry changes. For someone working if a field with fewer changes than ours, going to school and learning how to do the job can be enough. But for a developer, staying qualified for the job requires a commitment to continually better yourself. You have to read up on the newest technologies, trends and methodologies on an ongoing basis...and most employers aren't willing to have you do it during work.
This is why they're looking for people who passionately love developing. Those are the people that spend half their time away from work hacking on personal projects where they're free from any constraint around technology selection or architecture that might be imposed at work. What you're looking for is someone who views writing code as almost a form of play. That's what they mean by passionate...that intrinsic motivation that doesn't need to be cultivated, because companies are terrible at making employees grow their skills and even worse at monitoring those changes in employees....it's just simpler to screen for it in the interview process.
"Don't blame me, I voted for Kodos!"
Sometimes I feel like my fire hose of passion is directed into a black hole of greed. Every passing year I keep turning up the pressure and getting nothing more in return. In fact, less.
The well will run dry one day.
WALSTIB!
In the sushi world we have a word for passionate chefs... It's 'shokunin' You'll find in Japanese dictionaries that it's defined as 'artisan' but the connotation implies so much more. A shokunin comes to work and does the same task every religiously. Relentlessly trying to improve his technique. He cares only for perfection. Where other people see 'work' he sees 'duty.' He wipes his knife clean after every cut. When he cooks rice he removes or adds half a tablespoon of water at a time to ensure the amount of water is correct. He sharpens his eyes over years and carefully learns to identify and pull parasites from fresh fish, making them safe to eat. He cooks perfect folded eggs in a square pan never allowing it to burn at any place and ensuring each layer is evenly folded and cooked. He takes no breaks until the last customers is served. He works because, more than money, more than fun or pleasure, he desires to be better. Not only does he practice the physical techniques, he sees socializing with the customers over the counter as a skill to be practiced. His conduct and comportment do not waiver inside or outside of the restaurant (his temple) At my restaurant I may hire an average sushi chef to make rolls or to prepare fish in the back. But the person I hire for working behind the bar, unless he's my personal apprentice that has learned to work the way I had to, I would only hire a shokunin. When he works there he represents my business and my restaurant and I know he will outside of work in his daily life as well. Passion is important. But I would never pretend to say that passion was required for the easier and less formal jobs, some people just need a paycheck and as long as their work is good, I can respect that. The person who's responsible for putting a face to the company must be a master.
The Blade Itself
I still have the very first Apple Developer CD. I wasn't a registered developer then I found it in a used music store! It has an audio file on it with a radio ad that Apple used to play around Silicon Valley, seeking to attract engineers. Something like "Work for Apple Computer and you can change the world!" I don't doubt that Apple changed the world, but note how many job board posts you see from companies claiming that they'll change the world. In some cases the founders are being unrealistic, in some cases they're trying to pull the wool over the eyes of potential applicants. "Work for PHB Inc. and you can change the World!"
Please mail me URLs of software employers.
Meanwhile the guy coding up his own game engine nights and weekends burns himself out, arrives with a fried brain, and your project suffers.
I am not referring to people who spend all their evenings and weekends on some personal project. I am referring to people who had used some of their spare time, when they had some, to read something development related or to do some coding.
Sometimes this was done precisely because their day to day work was insufficiently challenging. One guy I knew was working on a legacy project that was pure C. For fun he spent a little time learning smalltalk. He was also someone I occasionally went scuba diving with. We met at his house early one morning for a dive, double checked our gear and loaded it into his truck. Before driving to the beach we called a dive shop as soon as they opened. We learned that the conditions sucked. We unloaded our gear from his truck and I spent a couple of hours geeking out as he showed me some smalltalk. Different hobbies for different days and different moods.
When I refer to some after hours coding I am not referring to any great or grand projects. Just a little indulgence in curiosity or amusement.
I also think that the more challenging home project helped preserve this guy's morale at work. Made the less challenging day job more tolerable, his itch was getting scratched elsewhere.
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
I'm not saying a complete lack of ever having had an after hours coding project is a career killer. I am just noting a correlation between the better programmers and those who on occasion when circumstances permitted had indulged an inherent interest in programming.
"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."
How is that not passionate?
Anywho, I feel like everyone who is bashing on the desire for passion has just become so jaded in a Dilbert-world that it's just ripped that passion out of them.
Here's my stance though - I'm a huge fan of the passion criteria. It's not the only thing we're looking for but it's a major component. Why? Because we can always train technical skills. Personalities we can't really tweak too much. We need tinkerers, people who like solving problems, who can be geeks like the rest of us. This focus has created a really awesome culture here where innovation is more than some corporate buzzword for more money. We actually just want to make cool shit because we think it's cool. We're all compensated just fine for our efforts. What's awesome is being able to say "what if we..." and being able to find someone who can get as excited to work on this as you are. Now, this is a quality we all look for within our teams so it's not JUST some management demand - and maybe this is what the difference is?
[T]he most important emotional stance to have with respect to code is to care about the people who will depend upon that code
Sometimes a low uid does signify wisdom, this is one of those times.
And did you exchange a walk on part in the war for a lead role in a cage? - Pink Floyd.
You're not really talking about the same issue my post is. My post was referring to the idea that relatively small raises aren't that big a deal for people; e.g. the $50K I talked about.
As for your $1M figure...you'll probably get max $650K of that $1M after taxes. Pay off the house and car, that's maybe $500K left? You going to life the rest of your life off $500K? As the sibling poster said, if you want to really retire off a windfall you'd better have several million that you can invest, then live off the interest.
I swear to God...I swear to God! That is NOT how you treat your human!
Because of course slogans are where it's at. Not a decent laptop to replace my old one which stops every 30 seconds because it can't handle the antivirus and other bloatware that corporate has dumped on my current laptop.(In all seriousness there's no reason to not give the developers decent machines since giving them shit machines only frustrates us and makes us develop more slowly with more mistakes.)
Did you know 80 to 90% of the moderators on slashdot wouldn't recognize a troll even if one dragged them under a bridge.
If i would start to dream of my work, the i would change the job. I love coding/solving simulation problems. I am pretty good at it, and i dont give up once i decided to solve a problem. Because i like to do the best i can. But i would be fucking scared of a company which ask me to be "enthousiatic" about my code.
I don't have a need/desire/ability to hire coders, but I do hire people for other jobs. I honestly don't give a damn if they have "passion" for doing what I need them to do. What I do is try to be open about what is expected, which is to complete projects correctly and on time, while not bringing personal drama into the work place. I am friendly enough (I think) and I want them all to succeed and have a good time, and if work is enjoyable, so much the better, but what it comes down to is if you do quality work, you continue to be paid for doing it, period.
I don't need employees who double as cheerleaders, just competent people who take their jobs seriously and come to work ready and willing to work. After all, it is work and most of us won't do it without reasonable compensation. If my dad taught me one useful lesson about work it is that your employment need not (perhaps should not) define you as a person, and it should certainly not run your life. I suppose if you are passionate about painting or something and can support yourself solely via that, then passion is in order, but if you are working for someone else it is a little crazy to have a 24x7, job-first mentality.
This is a hacked account, for which the owner can not be held responsible.
Good coders don't kill projects/products. Management that promises twice as much in half the time kills projects/products.
Even if developers get it done on time, you can be sure it will not be cost-effective to adapt or maintain the software as needed,
so death / outcompeted will come soon anyway.
That said, I would settle for truly competent developers over passionate ones. It can be hard to keep passionate ones focussed on the company's product, especially if their most fundamental ideas about it are turned down. They will find another outlet for their creativity in that case.
Competence is essential however, and is very hard to find, perhaps everywhere outside of Silicon Valley's insane salaries.
In my experience, a development team is like a volleyball team. One mediocre coder working in there and the whole team drops the ball. Because you can't recover from bad code in your project. Switching metaphors, bad code is cancerous. Not only won't it do the right thing, but it will solidify into an unchangeable lump, and it will weaken everyone else as they struggle to save the surrounding tissue through heroic measures.
Where are we going and why are we in a handbasket?
Golden showers are the new free laundry service.
according to Dan Pink: http://www.youtube.com/watch?v...
"RSA Animate - Drive: The surprising truth about what motivates us --- This lively RSA Animate, adapted from Dan Pink's talk at the RSA, illustrates the hidden truths behind what really motivates us at home and in the workplace. Watch the full lecture here: http://www.thersa.org/events/v... "
Maybe asking for "passionate" programmers to do mundane tasks is a sign of supply/demand issues for programmers? So, perhaps many employers think they can demand more and more from a large number of programmers? That may be made worse by our overall mainstream economy continues its death spiral of lower wages leading to lower demand leading to lower wages etc.? Contrast with how things were like in the 1970s when there were very few programmers: ..."
http://en.wikipedia.org/wiki/C...
http://www.columbia.edu/cu/com...
"It must have been about 1973. Life at IBM was good, and I was busy doing whatever it is that engineers did then. Suddenly, in the life of our project, something came up that called for a computer program that did not exist, and I was asked to create it. My boss knew I'd never written a program before; not unusual since in those days there were very few engineers who knew how to program.
Of course, that was back when more companies were willing to invest significantly in employee education and career development... Back when US labor was stronger politically and before trickle-down neoliberal economics, deregulation, offshoring, H1Bs, and lowered taxes on the wealthy and corporations became popular ideas (even though ironically the US economy overall has gotten worse and worse for more and more people the more these ideas are adopted). Still, there are always exceptions of organizations or parts of organizations (like "skunkworks") that embrace the ideas Dan Pink talks about.
A 21st century issue: the irony of technologies of abundance in the hands of those still thinking in terms of scarcity.
...tell them whatever lie will serve me.
They just forfeited any claim to my respect and are now prey.
"This post is an artistic work of fiction and falsehood. Only a fool would take anything posted here as fact."
No. Money is about number six.
The saying is: you join a company, and leave a manager.
That's what got me out of the industry.
If it takes 10000 hours to achieve mastery, you're looking at 3-5 years of full-time work. From 1980-1985, I went from "what's a computer, Dad?" to knowing everything that was going on under the hood of a PET/Apple/C64/6502-based machine. From then to 1990, I got to know the PC very well, but not down to the bare metal. From 1990-2000, it was Win on the side and Solaris/UNIX/Linux. Somewhere between 2000-2010 I noticed the rate of change was accelerating beyond my ability to keep up. The lifespan of stdio.h was measured in decades -- and although Java and Javascript have had similar lifespans, nobody codes down to that level. It's all framework-of-the-year, and nothing seems to have a lifespan longer than 2-3 years. Competency is easy, but before you've reached mastery, the technology you were trying to master has been deprecated before you get close.
My solution was unorthodox. I threw up my hands, quit the industry, and will slowly draw down my savings over the next 20-30 years to master a few things that interest me. I probably haven't even found those things yet, but for the first time in my life, I have all the time in the world.
Not a single company will profit a whit from whatever I end up mastering. That's their loss, not mine. I will put a bullet in my brain before I go back to working for a living.
I had planned a game night with friends I had not seen in a while, last Friday night. I was looking forward to seeing them and even talked about it with one of those friends two days before the game night. But on the evening in question I was programming so obsessively that I completely forgot it. Only remembered the next Saturday morning. So I guess I am a passionate programmer. Still not happy about it.
... Human Ressources types are paid for to think of. Make sure the employees do not sell only their times, but make sure they sell their souls. I hate this shit. I never got a job were a HR guy was on my job interview, and I don't think I missed much there.
I've been at a "passionate programmer" e-commerce company for over 10 years. Their definition of "passionate" (of which apparently there are many) is a developer who doesn't simply convert a request into code, but who will also think intelligently about the larger (difficult) business problem and focus on it. When your client says "Build me a proprietary streaming video server," the ordinary programmer starts taking specs for it, whereas the passionate one asks to learn about the business problem being solved. Then you learn that the video server is for playing instructional/motivational videos for the salespeople. So the real business problem is an unmotivated sales force, and a "video server" is not necessarily the only solution. Now you can have a discussion about other solutions.
I'm sure some readers will immediately jump up with counterexamples and pessimism... how the other person won't want to hear about your alternatives because they're threatened, etc. but I have been living this life now for 10+ years at the same mid-sized company and it's real. And yes, I am paid well for it, and so are my direct reports. And no, I rarely need to work evenings or weekends, and neither do my direct reports. And we all get free food. And the company is consistently profitable.
From all the vitriol I've been reading here today, I get the impression my company is extremely rare. Guess I'll stay for another 10!
people will surround it with strange chants and offerings. We need to remember that programming looks completely alien to most people. It's a lot easier to quantify a job when you can imagine actually doing it.
Unlike in Capitalism, you need to be a highly skilled wage slave to get/retain a job in Globalization.
Casteism
Bonus targets are set by level and there are equivalencies between engineers and managers. My manager classification corresponds to a Staff Engineer (which I was, prior to becoming a manager). Bonus targets are a percentage of salary, and my salary is only slightly higher than the rest of the team (though, again, my salary hasn't really gone up much since I switched to management). There is a concerted effort to ensure that the pay structure and career path doesn't force people to stop being engineers. An engineer maxes out at Fellow, which is a VP-level equivalency. The bonuses are really pretty transparent and it's the same for managers and engineers, everyone knows their bonus target percentage, salary and then the formula takes into account company performance, BU performance and the rating that the manager submits based on his/her own assessment and peer reviews. The bonus targets for each level aren't made public, but once people get bumped up once or twice, it's pretty easy to extrapolate.
The one area where there is an almost complete lack of transparency is in equity awards. The annual equity awards are based on two manager ratings, only one of which is shared with the employee. The other rating, retention, focuses not on how indispensable, how hirable and how likely to leave an employee is. This is kept secret because it could encourage counter-productive employee behavior like threatening to leave and siloing (trying to horde knowledge of a particular component rather than sharing it with coworkers).
Is that what you were looking for?
"Don't blame me, I voted for Kodos!"
I think this job description of "passionate" is HR department and executive bullshit, meaningless fluff intended to discourage skepticism. How many people would dare to hire someone who is the opposite of a team player, whose attitude is "Prove to me that you are not full of Bullshit"? Damn few, even though many operations, including some of the most famous could use a BS monitor, someone who is skeptical, someone who challenges assumptions and decisions. There aren't enough skeptics. least of all among the VCs and investors. I'd love to kick some asses in tech,
I think the "passion for coding" jargon in job advertisements is also code for "we know we're crappy planners, so we will probably have you working extra hours on an architecture with modules that will ultimately end up unused or completely reworked."
http://www.youtube.com/watch?v...
Were that I say, pancakes?
Well there is a sad, veiled message in this, having experience this in the top IBs on Wall street. ' We expect you to work 11-12 hours a day. (have no life). and if you do go back home, try to show your interest by programming at home too,whether its java, or C++. Even read all the books on C++ 11 , though most of them don't use it. many interviewers actually ask what you program at home (since you have to love programming). A lot of them expect or require you to be a programmer 24/7. ' For a senior programmer with 10+ years experience the expectation it practically eat, sleep, code/fix issues. It also has to do with the greatly reduced headcounts after 2008. Programming at highly paid jobs isn't a job anymore, its your life. At that rate you don't have a choice - you dream code.
This seem entirely relevant, enjoy. http://www.ted.com/talks/simon...
all your life are belong to us.
Star Trek transporters are just 3d printers.