How To Hire Great Open Source Developers?
An anonymous reader writes "This is the first article I've ever read specifically about hiring open source developers, and how to judge their ability not just to code but to work with others. It's reprinted over at ITMJ [part of OSDN, as this site is] from a book by Martin Fink, the General Manager for HP's Linux Systems Division. Brings up a lot of good points, including how you need to make sure your open source people are developing things (on company time) that do the company some good, not just scratching their own itches. Fun quote: 'Discover what pseudonyms your candidate uses online. Look at the archives at SlashDot and other online locales. Does your candidate hide behind secret pseudonyms to trash other individuals? Is there passion without condemnation?'"
Entice them with prostitutes!
Oh shit.
I have been pwned because my
"Discover what pseudonyms your candidate uses online. Look at the archives at SlashDot and other online locales. Does your candidate hide behind secret pseudonyms to trash other individuals? Is there passion without condemnation?" Hmm, I dunno. Sounds like someone might get disqualified just the project-manager doesn't like their opinions. /. writes about more than just OSS you know.
It's articles like these that make me want to hop onto Seek and put up a job offer for OSS developers everywhere!
:(.
And then I remember I don't run a business
--
The last digit of pi is four.
Are you suggesting that unemployed hobbyists are all without decent skillsets?
Boss: What's your Slashdot screen name?
Employee: Anonymous Coward.
-Look lively. LOOK LIVELY!!! --Mr. Shmallow
This seems like it was written during the dot-com bubble. Quote from the article: However, that person may also have very clear expectations that the only projects they will ever work on are open source projects. This is simply not true. Being an open source developer is not a religion. It just means that you believe in the idea. There's absolutely no problem for an open source developer to make closed source for a living. And, more importantly, open source developers (and the comunity) has no beef with that.
Remember - we need to eat as well. While open source gives us satisfaction, closed source gives us our daily bread.
Underholdning.info
Bram Cohen (famous maker of Bittorrent) managed had his carrer boosted only because his open source project - Bittorrent.
His current employers saw his work and hired him on the spot...
+++ MELON MELON MELON +++ Out of Cheese Error +++ redo from start +++
Oh bugger that's me screwed then, he knows I always post anonymously on Slashdot!!!
Culturally, your engineers will struggle between their loyalty to the community and their loyalty to the company.
haha! they make them sounds like confused pets or something.
"Don't be too quick to introduce your Engineer to it's new environment, Engineers are not well known for adapting quickly to change!"
And after I've paid so much money for DVDs of women primarily scratching ...,uh, now that I think about it, that's in a slightly different context. Never mind.
Damn right law might limit restrictions. My time is mine. Not a company's, mine. That's the very definition of personal time. I am not employee #3877643 away from the office, I am a human being who does work for a company during certain prescribed times and under certain prescribed circumstances.
They might well have legitimate rights over what I can contribute, but certainly not when if 'when' is part of my personal time.
Cheers,
Ian
"Those who still haven't their stupid little IT jobs outsourced will get fired because of their /. Karma"
Damn, and I thought IT was cool... maybe I just have a great hobby and should stay away from IT...
I can't remember where I read it; maybe JoelOnSoftware? Do a google search for any employee, not just open source developers. -greg
-greg -> gakinsATInsomniaDASHConsultingDOTorg
My boss copied them into the source tree, but claims that he never made the connection between using my code and then later hiring me.
We have also met other IT people who just don't get that they are being paid to do something for the company rather then what they want to do.
In these respects proprietary programers are no different then open source programmers.
In case the author of the article hasn't heard it is an employer's market right now for programmers.
There is no reason for an employer to even go to the fraction of the trouble the article suggests.
Steve
Thank you, Captain Obvious!
+1 Insightful? Wow...
Only when I get mod points, duh. ;-)
When I am king, you will be first against the wall.
Of course, you should look for that in any programmer, not just open source.
Now, at the risk of feeding the trolls, I do take exception to this sort of attitude.
There are lots of talented out of work people, be they developers, programmers, graphic designers, musicians, teachers, astrophysicists, lawyers, actors... I could go on, but, you know, I don't really want to. People don't always get hired simply for their skillsets. I've said before that some of the most talented people don't get hired because of a lack of specific skills in other areas. People lose jobs, or lose bids on jobs/contracts, because they can't handle talking to "real people." Obviously that's not the only reason, but that's a big one. My father works for a school board, and there are people who would love to work as a teacher, but are terrible in social situations. On the flip side of things, we have programmers who are less than the most competent people in their literal field that don't get hired because they can't work with other people.
I for one know I wouldn't want to hire someone, regardless of their boundless talent, if they were a flaming dickhead.
"I'll be a killer whale, when I grow up"
-Wintersleep
Maybe check if they have read The Psychology of Computer Programming. It has a great section on 'ego-less' programming.
Net sa best, mar it koe minder
While this might be slightly overkill in the general case, it has helped me once to dig for info on a guy who was trying to get a position in my company. If I didn't do that, I would have hired a skilled programmer and a scientologist at the same time, a person who was totally responsible for at least one major legal conflict.
Just don't let the tin foil obstruct your line of vision. It doesn't really matter what does your applicant blog or do in his spare time as long as he is a fine fellow and a nice specialist.
___
On Slashdot, Russians comment on YOU!
When you watch somebody write code, here are some techniques that may be helpful:
0 00 73.html
Always reassure them that you understand that it's hard to write code without an editor, and you will forgive them if their paper gets really messy. Also you understand that it's hard to write bug-free code without a compiler, and you will take that into account.
Some signs of a good programmer: good programmers have a habit of writing their { and then skipping down to the bottom of the page and writing their }s right away, then filling in the blank later.
They also tend to have some kind of a variable naming convention, primitive though it may be...
Good programmers tend to use really short variable names for loop indices. If they name their loop index CurrentPagePositionLoopCounter it is sure sign that they have not written a lot of code in their life. Occasionally, you will see a C programmer write something like if (0==strlen(x)), putting the constant on the left hand side of the == . This is a really good sign. It means that they were stung once too many times by confusing = and == and have forced themselves to learn a new habit to avoid that trap.
Good programmers plan before they write code, especially when there are pointers involved. For example, if you ask them to reverse a linked list, good candidates will always make a little drawing on the side and draw all the pointers and where they go. They have to. It is humanly impossible to write code to reverse a linked list without drawing little boxes with arrows between them. Bad programmers will start writing code right away.
The Guerrilla Guide to Interviewing
By Joel Spolsky
http://www.joelonsoftware.com/articles/fog00000
> Can he/she give examples of contributions that were
> better than his/her own implementations?
Good way to sort out the "programming god in their own minds" geeks.
I don't know much about the act's details, but one thing it states is that a business can't require information which isn't required in order to complete a transaction.
Not exactly the same thing as this, but maybe there is something in the act which does more directly refer to this type of situation.
I've decided that employment agreements that define intellectual property rights and disclosure really don't amount to much. Every employment agreement that I've read always has language about disclosing "work related" inventions and the company's right to those inventions.
Developers that I've worked with tend to construe those paragraphs very broadly and sometimes get themselves really worked up over the possibality of their employer stealing their million dollar invention. The thing about that is that if a company and employee were ever to get in a legal spat over IP, then most judges and jurys are going to be able to see the dividing line.
The bottom line is to use common sense. If you're employed writing software to analyize widgets and you write a directly competing product on the side, then you obiviously have no case to say that it's not work related. On the other hand, most judges and jurys can see enough difference between widget analysis and personal accounting that they're not going to let a company sue you just because you wrote in the same language and used similar coding practices on your personal time.
Ha, ha! Nobody ever says Italy.
You bring up a good point there too, it's not always the worker's fault that they're out of work. It could be that damned employer, or the guvermint. But you know.
The thing is, there's a fine line between expecting an employee to be flexible and expecting an employee to work well beyond the call of duty. It's a bonus to have an employee who can work beyond that which s/he was hired for. However, it's becoming less and less a "bonus" and more and more a "prerequisite." Doing extra has become a requirement, for one reason: people are willing to do more. If work wasn't going so cheaply nowadays, you wouldn't have to do as much.
"There're fewer jobs out there, you gotta multitask!" Hmm. Sounds to me like a good equation towards getting people to do more work for less pay.. even if there aren't fewer jobs out there. But that's just tin-foil hat thinking.
"I'll be a killer whale, when I grow up"
-Wintersleep
(or whatever that Watchmen quote is)
'Discover what pseudonyms your candidate uses online....'
BS, I say. There are many reasons why people take nom de plumes and pseudonyms, but all come back to the fact that "-and I just wanted a certain level of anonymity". Not fullblown anonymity, just enough to make your online personal dealings disjoint from any sort of RL responsibilities you have.
There's a reason why you're not supposed to talk about religion, politics, and all that stuff on first dates or job interviews: because it's inappropriate (unless the job is, obviously, at a church, for a political party, etc.). Employees are expected to leave their personal lives at the door when at the job. But employers should feel peachy about betraying that same confidence?
When writing some free COM app or TPS report coversheet, what does an employee's view on gay marriage, Palestine, or the RIAA have to do with anything? And even if the employer was doing something as inoccuous as suggested in the article and just "seeing if they are passionate without compromise"... who here doesn't think they could find something they'd hold against you?
Candidates are looking for jobs, not friends. Neither should employers.
What is music when you despise all sound?
I once did this. I was interviewing a candidate for a job. He made the short list, so I googled him. Found out his pseudonym which he happened to use on /.. Some postings were consistent with some points on his CV, confirming it was him.
/. profile definitely wasn't the only thing that had him eliminated from the shortlist (he probably would have been cut anyway), it was a factor.
He also made a few posts about the technology we were chiefly hiring him to work with. The comments were rather negative (and against the broader view of the group he would be working in). I want people who can be passionate about what they do. No, I'm not just looking for "yes people" to maintain the status quo, but there is a certain base. Who is going to work harder and enjoy themselves more - someone who enjoys the technology or someone who doesn't?
While his
Read reviews of shopping cart software
Became a landlord of flathouse. Then your tenants will keep you living while you work on open source. At least, it works for me. Actually, I spent more time on playing games than on coding for past eight years, in-between fixing kitchen sinks and replacing light bulbs. The best effect is I got free 512k internet connection throught one of my tenant, just by allowing them to place a microwave antenna on the roof "for free".
And how to become a landlord? Get an excellent karma in real world first.
There you are, staring at me again.
No, programmers are programmers, whether they program proprietary or free software. However, when they code free software, you can actually see both their code, and how they intercat with other programmers on a project. This way, you can avoid the primadonas.
Getting programmers with both good coding and people skills are what this article is about. And given how widely different the skills of programmers are, it is hard to see how any trouble in the hiring process to get the best is too much.
You seem to miss the point of the article. The point was not to "bribe" programmers to work for the company by offering them to work on free software. The idea was that if the company wanted to contribute to some free software projects fpr strategic reasons, like HP does with various Linux related technologies, how to get the people who can ensure that the contributions are accepted. These people you find in the free software communities.
I want employers to research me. Please! This will be especially true after I've got my next project off the ground, which barring catastrophe should be before I'm job hunting again.
So many of you are padding your resumes (yes, you... knock it off!) that it makes it hard for me to get into the "interview" stack. I don't believe in padding the resume (and besides, if I padded it it would become downright unbelievable... yes, I actually do know those ten languages fairly well, even if I am just a recent college grad, am I supposed to claim 20? As it is there are already some skills I'm deliberately not adding because they're not really good enough to justify it), and I need some way to let you know that I really have the skills I mention.
For instance, I claim the ability to write coherently. Anybody can write coherently for the length of one resume, all that takes is the help of a friend. Get to my website and you'll see that I really can write even large, book-length essays reasonably well. You can find my code and download it.
If anyone's not going to hire me because of my opinions, which are mostly "ethics are good" and a general technolibertarian slant, then I don't want to work for them. (In my case, this is unlikely to be an issue, since my strongest opinions are "YRO"-type issues and all that really eliminates from consideration are surveillance technologies I couldn't work on anyhow. YMMV due to differing opinions.)
How else am I going to rise above all your padded resumes?
(I've heard that in my current job I was the third of three candidates after the final screening. Our resumes were virtually identical, but I was fresh out of college with a Masters degree (actually I had significant work experience, easily three year's worth of a full-time job, but it's hard to get over the "fresh out of college" stigma), while the other two had many years of industry experience. Fortunately, when they were interviewed, they bombed, because the resumes were padded, and mine wasn't. Padded resumes may get you interviews, but you should almost hope they don't get you a job; you'll be in over your head in no time if you're hired on the basis of one.)
(And a note: I can write, but that doesn't mean I give my best stuff to Slashdot or spend forever proof-reading my posts; why bother? I'm sure you can find errors in here. Save your sarcastic jokes; I'm claiming I can write, not write perfect rough drafts into a Mozilla text box.)
I've always considered that sentence a little ambigious... How did you define the ability to work with others ?
... thats not like playing in an football team !!
Is that the ability to understand and use API devellopped by others ?
Or, the wisdom to not rewrite all the code you consider bad ?
Or, the social skill to entertains good relations with coworkers ?
Or, the intelligence to query others when you're stuck on a problem?
The truth is, for sure, all at once... and i think i got all these quality to "work with others" but, in my job, i work alone 90% of the time...the analyst build the architecture and the designer make the template, then, i wrote the business logic, setup database and functionnality all alone.
I work with others, thats a fact, but i don't have and i don't need an "ability" to work with them!!!
Almost every time i see a job opening in IT, there is a mention about our "ability to work with others"... WHY??? we work alone the majority of our times
Is that so important ?
Or is that an obsession of managers who percieve all of us as chico-albinos-dungeon-geek that can't communicate ?
"Insanity in individuals is something rare, but in groups, parties, nations, and epochs it is the rule." - Nietzsche
One must always be willing to take pride in their work - not to do so is practically a crime in any line of work. But if you attach your ego to your work, you will never be able to handle someone else taking your code and, well, basically, take it apart & rewrite it if necessary - for whatever the reason happens to be - whether it's because the spec has changed, performance indicates that block of code, etc. If your ego gets in the way, your feelings will likely hurt you in the arena.
I tried to mention this recently in response to the article about open-source coding devaluing software development, but none of the moderators saw it.
Anyhow, as any law student knows, volunteering in the community is an absolute necessity. Many employers won't even consider you if you haven't done significant volunteer work during law school, and you're expected to do so during your career.
The computer industry should be no different. Pro bono work should be considered the NORM.
Let me prove myself on the job I'm hired to do and please leave my slashdot account, my credit score, my medical history, and my weekly garbage to myself thank you.
(And before you accuse me of being greedy, I do contribute to open-source projects in my spare time.)
I can explanate how to administrate your network. You must configurate and segmentate it, so it can computate.