How Should You Interview a Programmer?
phamlen asks: "Having hired several programmers who haven't worked out, I'm wondering if other people have better success with interviewing techniques. Usually we have a two 'technical interviews' and a final interview. The technical interviews tend to be a combination of specific technical questions ('Is friendship inherited? How would you find out?') and algorithmic ('Given the numbers from 1-10 missing one number, how do you find the missing number?'). In addition, we essentially try to interview for: intelligence/performance. technical skills (algorithmic, etc.), and team compatibility. Unfortunately, we've been burned a couple of times by people whose performance didn't measure up to what we expected from the interviews. So I'm wondering if other people wanted to share their interviewing tricks - how do you find out if someone is a good programmer?" Surprisingly enough, we've done a series of these, so if you are interested in similar questions for sysadmins,
network engineers, or the one who will follow in your footsteps, then we've got it covered. We've also covered core IT questions as well. What special ways do you have of evaluating potential coders? How well have they worked out?
...if they answer "42", then hire them.
"Only in their dreams can men truly be free 'twas always thus, and always thus will be."
--Tom Schulman
/me closes the browser window
Interviewer: Who won the superbowl last year?
Programmer:
Interviewer: What do you do for fun outside of work?
Programmer:
Interviewer: Hmm. What do you look for in a woman?
Programmer:
Interviewer: Great then, one last thing we need to check...
Programmer:
Interviewer: Ok then, see you Monday.
Casca
If you're interviewing the programmer, you somehow got pushed up to management and are screwed already. :)
-JDF
How were you able to be so poetic yet completely vague all in one sentence like that?
Finally, math books without any of that base 6 crap in them.
Until recently, I would ask for their slasdot ID and then check their karma. I always assumed ability was inversely proportional to slashdot karma.
..for the most part. Most programmers with some sort of qualification can get your jobs done, unless your jobs require some amazing degree of skill. I probably couldn't write you out a bug free Quicksort first try, but I could certainly implement it in a real project.
And to be honest, most projects don't require skills nearly that nebulous. How many projects today are: get the data off the screen, validate it, then create the invoice.
The bigger question is whether they'll actually work hard on their jobs, or just play on SlashDot all day. And I don't know how to interview for that (and obviously neither do my employers).
.
Let's not stir that bag of worms...
Our 18-member team likes to have birthday parties every month, and we've got every month covered except September, so we've asked management to make sure our next hire has a September birthday.
Some example questions would be.
Which compiler do you prefer?
Complete the sequence. 2, 4, 8, 16, 32, 64
Are the voices in your head loud enough to disturb your coworkers?
"Have you ever thought about just turning off the TV, sitting down with your kids, and hitting them?"
He just got promoted to management.
Moon Macrosystems. Sun's biggest competitor.
Well, 10 minutes later, the president came back in the room, and there was a web browser displaying his creation -- a single sentence, "Hi Tim, I wrote a web page" in bold and italics. Up on the screen were other web browsers containing internet searches about basic HTML, as well as the output of "view source" from one of our web pages.
Three years later, this guy is still with us, by far the best customer service manager we've ever had.
I guess the point is, give the person a puzzle that you know that they have no idea how to solve, and give them the resources to figure out how to solve it, and see what they do.
- In Capitalist America, law violates YOU!
At one job interview, I was asked "What would you do if you found $2500 on the street?"
I said, with a shit-eating grin on my face, "I'd buy puppies for orphans", and was hired on the spot.
In any case, I think a good sense of humor is essential, if I was in a position to hire someone, I'd ask them to tell me a joke during the interview. You can learn a lot about someone by what they think is funny. An employee's technical ability can be improved as needed, but their personality is what it is.
-72
-Those who dance are considered insane by those who can't hear the music.
Manager: Who's that guy? Man he's rank! Somebody open a window or something.
Tech: We found him digging around in the trashcans out back, sir.
Manager: He any good?
Tech: His revision of the notepad program became self-aware about 45 minutes ago.
Finally, math books without any of that base 6 crap in them.
I usually ask if they contribute to open source. Then, if they answer affirmatively, I tell them they can telecommute, give them a design spec document, and give myself a bonus for saving 100 percent on salary!
I don't have anything against vegeterians either </in our "How to cover up a typo" series> ;))
[humor]
It is obvious that anyone with hiring expertise, such as human resource specialists, can most effectively hire potential candidates by insuring that they have MCSE (Microsoft) or Red Hat (Linux) certifications.
This removes the requirement for the interviewer to ask intelligent questions, and for the interviewee to provide intelligent answers, streamlining the entire interview process completely.
After all, how else is an interviewer going to be able to BS a potential candidate into believing they know what they are asking about, and how else is a potential candidate going to BS an interviewer that they know what they are talking about?
As Microsoft and Apple have been pushing for on the desktop for years now, it is time we removed the expertise and knowledge from the entire process altogether, thereby "enabling" and "facilitating" the hiring process.
[/humor]
The Future of Human Evolution: Autonomy
When you start to view it like that, it either becomes more obnoxious than it already is, or just plain funnier to see all those kids with wide eyes and wet behind the ears get all bent out of shape for their careers...
Remember, the worse he looks, the smarter he is.
I'm a frikin' genius!!
They do crossword puzzles.
With a pen, not a pencil.
Fascism starts when the efficiency of the government becomes more important than the rights of the people.
how many technical people do you know that are good at thinking on their feet?
How else do you count past ten?
Ooh, a sarcasm detector. Oh, that's a real useful invention.
Having hired several programmers who haven't worked out...
... or showered, or shaved...
1.
2. For myself, having hired several
bodybuilders who haven't programmed...
Considered harmful.
have your interviewee sit down at a machine with a random file of code open in some development ide.
then time how long it takes before IE is fired up to slashdot.
(withdrawal symptoms such as sweating and mouse-finger-twitching often appear first, so these are sometimes good indicators as well)
and don't hire them, because not only do they read every single Slashdot article instead of working. But now they also know all the same tricks you picked up here.
You can't handle the truth.
How else do you count past ten?
Count in binary. With 10 digits you can count to 1023 without resorting to toes.
Check there spelling.
This Sig has been depreciated.
I heard this a while back and it's been true in the majority of the technical situations I've been in:
The number of women present is less than or equal to the number of men named David.
- AlanH