views:

4580

answers:

32

What is the best interview question you have ever been asked?

+28  A: 

I was asked to describe the architecture of the project I was currently working on.

It gave me a chance to really show the people what I knew. It also helped that it was a far better architecture than the company I was interviewing with was using.

I ended up not taking that job, but I thought it was a great question.

ScArcher2
A: 

Out of everyone else I've talked to, why should I hire you?

Brad Barker
Out of everyone else I've talked to, why should I work for you?
Michael Myers
+11  A: 

What do you do outside of work to further your love for programming and technology?

Best question because it is open ended, starts a dialog, gives the candidate to talk about something they enjoy, and there is no right or wrong answer (besides nothing).

John Downey
Why is "nothing" the wrong answer? Do you have to have a pet project or read thick technical books in your free time to excel?
Ace
+3  A: 

My personal favorite is:

Have you ever been fired?

It is just fun to see some people squirm, but the people who answer straight with out hesitation are ones that usually can perform under pressure, and will not BS you about why the job isn't getting done.

Nick Berardi
While it does seem like a good question, What if they've never been fired? Won't they just say "no" and then the question is useless?
Orion Edwards
+2  A: 

Out of everyone else I've talked to, why should I hire you?

I'm personally not a fan of questions like that. It seems to indicate laziness on the part of the interviewer. In my mind, it is the interviewer's job to determine whether or not I'm the best candidate, by asking technical questions of the appropriate breadth and depth. Yeah, maybe this kind of question can determine how well a candidate can communicate, but it mostly feels like a trap question. There doesn't seem to be a right answer without dishing out the BS.

Daniel F. Hanson
I agree. It's not a question you could possibly answer without bullshitting unless you know every other person interviewed.
Oddmund
It's asking the candidate how he or she contributes special value to a team. If you can't answer that question, then you don't deserve the job.
RoadWarrior
@RoadWarrior, your comment may be true about the question "Why should I hire you?" Question as stated is stupid, however.
Alexander Morland
+11  A: 

(when interviewing after contracting on-site for 7 months):

"Tell me one thing that we're doing badly that you think we should do differently."

Brian Warshaw
Careful with that one. They'll want you to fix it.
Robert
A: 

@Nick Berardi - Hah that question will only make people squirm if they are unable to handle pressure AND have been fired

I've never interviewed people but on the receiving end, my favorite question is "when can you start"

Least favorite is "what is your 'five year plan'?"

Andrew G. Johnson
+78  A: 

"How soon can you start?"

ninesided
I ROFLMAO to this. :D
andyk
haha, thanks :-)
ninesided
And answer: "I actually already rewrote your core function when I hacked into your system before the interview."
ilya n.
+10  A: 

"Would you like a glass of water?" is what I'm always hoping for after sweating out the wait.

bpapa
A: 

This might sound crazy but the best question I was ever asked as a quick 2 part question by the old CIO at my company.

Question 1: What was your SAT score?
Question 2: What was your GPA in college?

At the time I was relatively young with light experience and didn't understand how the questions were relevant. So after I go the job I asked him about the questions.

Question 1 is to see how bright you are. Many programmers might program well but don't know basic math or reading comprehension and vocabulary - stuff the SAT measures quite well.

Question 2 is to see if you are a hard worker. People who are bright can ace 1 test. But your 4 year college GPA is based on work over a period of time. So low SAT + high GPA = hard worker. High SAT + low GPA = lazy.

He also says that anyone who claims to "not remember" either of these is probably a liar and did not do well.

Certainly there are a lot of flaws in this line if questioning/thinking. But his point was that he didn't know enough about programming to tell a good one from a bad. He figured if he could weed out the brightest people the rest would take care of itself. For the most part he's been right.

brendan
At first I thought those were not really good questions. But after his explanation, I like them a lot. Of course, not everybody took SAT but I like his reasoning.
Tundey
high SAT + low GPA may also mean "too busy working a real job to show up to class" ;-)
Steven A. Lowe
It might work if you're dealing with younger programmers, but I've met some fantastic programmers that have incredible Maths and English skills that flopped at school and college. Formal education isn't for everyone, so the SAT/GPA/BSc/MEng/etc isn't the best way to judge raw ability.
EnderMB
I think this just measures how seriously someone took school. Maybe that's useful, but it might not be terribly well connected to either intelligence or work ethic, especially if school was 10+ years ago.
mquander
I don't think GPA means much since colleges vary a lot. IT only says how good you are within your own university.
Uri
I have a high SAT+GPA, but I'd be afraid to work for someone who judged primarily on these credentials. The College Board's tests are a terrible scam, and one of the math sections most useful to programmers (understanding the domain of a function) was just dropped from the SAT. GPAs are sometimes weighted, and don't take into account how thorough/difficult their program was. It filters out good candidates in favor of under-challenged ones, by overlooking more important factors. Schools often don't grade code readability/maintainability and teamwork.
T.R.
I too agree strongly with the naysayers - this might be a good metric for young students with no experience, since its ONLY metric, and not much else to judge on... As was noted, academia isnt for everyone, and has little to do with programming skill OR aptitude. On the other hand, if you have nothing else to base it on (and you're fine getting someone with NO experience) then theres really not much else...
AviD
A: 

@Andrew

It is not necessarily a bad thing if you have been fired, because there are usually two situations where you are fired.

  1. You are lazy and not doing your job.
  2. You took a chance that went wrong.

I usually hold the #2 person over that of a person who as never been fired as long as they weren't a Mavrick or Lone Cowboy at their last job. Because it shows they have the balls and initiative to get things done, even thought it didn't work out in that situation.

Nick Berardi
Am sorry being fired doesn't mean you took a chance that went wrong. Voluntarily quitting a job means the chance went wrong. Being fired means either you couldn't do the job satisfactorily or you got caught in some political bullsh!t. Either way, it's not a good thing.
Tundey
OR, unfortunetely more common, is a much more simple situation: cutbacks. Too many people have been fired either because of cutbacks or the company closing down, very common in the past year, also back in 2000-2002...
AviD
A: 

@bcaff86

SAT and GPA are a bad question to ask because it takes a lot of verification and really doesn't mean that much unless you are coming right out of college. I like to gauge the people on the spot, because that is easier to verify and doesn't take weeks of waiting for documentation. Plus I have never put much stock in SAT or GPA, because you could have aced the Math and did bad in the Reading or vice versa. Plus they changed the standards recently, so now my score based on the 1600 scale looks pathetic vs the 2400 scale they now use. Also GPA is good only if you check in major GPA and only if they are with in 2 years from graduation. Because they could have done awesome in their Gym class and totally bombed a major related class and still average a 3.0.

Nick Berardi
I think the general idea is to find bright people. In my experience people that aced the SAT 20 years ago are still bright people today - so age or how many years out of school you are doesn't necessarily factor.
brendan
+16  A: 

When you review your peers code, what bothers you the most?

if you are opinionated, and good, you'll have an answer other than, nothing.

If you are superficial the answer will be their tabs.

If you are thoughtful and worth it with design. Maybe over or under use of design patterns. Misuse of new language features, or deodorant comments.

DevelopingChris
"Deodorant comments"? I would love to use that phrase, if only I knew what it meant!
fatcat1111
When the code is so bad it reeks people feel the need to cover up the reek with comments which try to explain away the horrible code.
Wedge
I believe that metaphor is originated by Martin Fowler in his Refactoring book.
Fabian Steeg
Well, the smell metaphor was originitated by fowler. I have just noticed a paradigm of using comments as a misguided attempt to feel better about the smell.
DevelopingChris
+1  A: 

What is the worst professional mistake you've ever made?

Oh, and of course my old favorite (remember this one?): in a single-elimination tournament, how many matches need to be played to determine the winner when you start with 16 teams? With 1000? With 8144?

Stu
Everyone needs to be eliminated except one, and since one team is eliminated per match this gives N-1 matches.
Lars A. Brekken
To keep it interesting, take it a step farther and ask how many *rounds* it would take. This has a slight trickiness to it, if there is not a power of 2 teams to start with.
Mercurybullet
+1  A: 

"Tell me about a project you have worked on that was a failure and what did you learn from it?"

After the technical questions that are a requirement for the people that I usually interview, I like to ask candidates about a project that they have worked on that was a failure. I'm looking for someone who is circumspect enough to recognize failure and learn something from it. At some level, everyone has been a part of a failure. People who dodge the question ("I can't think of one.") indicate to me that they have not been paying enough attention, have an ego problem, or are not interested in passing the interview. People who just want to cast nonspecific blame ("The project manager sucked.") are excuse-makers and will do it again when things get tough.

I'm looking for reasons not excuses. Be specific. Be constructive. Convince me that you have done something to resolve that failure mode permanently or could recognize and remedy the problem should it arise again.

Brandon DuRette
+5  A: 

"What bugs you about our product?". It avoids the weeding out of people who haven't bothered to research what we make.

krujos
... and keeps it honest: you're there to bring their product to a better level. If you find everything's dandy, you're as useless as the marketurbastion department.
jpinto3912
+3  A: 

I like to ask the interviewee to explain the difference between a reference type and a value type. After they answer, I hand them a piece of code that has an obvious gotcha in it and I ask them what the program outputs. You'd be surprised how many people with years of experience can give the textbook answer but then can't tell the difference in code. The reason I like this question is that it is an indicator of how well a developer knows how the language works on the computer compared to just knowing syntax.

Daniel Auger
+2  A: 

If Microsoft built a car, would you drive it?

Usually the answer is, "Maybe after the first service pack is released."

Kon
Think this response belong in "what's the worst geek joke you've heard?"
Owen
"No, but I'd appreciate an OS by Volkswagen"
Daniel Daranas
A: 

Lots of questions fall under the brain-teaser/riddle category: they're "how do you think" questions, rather than specific technical issues.

Some examples of these are "Microsoft Questions" (http://www.sellsbrothers.com/fun/msiview/default.aspx?content=question.htm).

Riddles and brain-teasers are fun, but not really useful, in my book, for evaluating a candidate.

Questions that revolve around algortihms, or applying some semi-common concept to somethin you've likely not thought about are far more useful.

That all being said, the best interview question I've ever gotten is, "what was your favorite course in school, and why?". It's a fantastic ice-breaker, and, if the candidate is honest, will show a lot more about what the person is interested in rather than if they merely are coding drones.

warren
When I interviewed at MS, I was asked the "math in base -2" question. It was a fun challenge, and I managed to implement both adding and subtracting during the interview. Although, as luck would have it, the MacBU was reorganized a week later and the job I interviewed for was eliminated. :-(
Sherm Pendley
+4  A: 

"Tell me about yourself."

Stewart Johnson
I always hated this one... TOO open ended, and ya know what? most of that is none of your business. Ask me about me job, ask me what i know/think about X, but myself is off limits. But not downvoting, cuz as interviewer I DO see the value in it - easy question, usually get a lot to work with for followup questions...
AviD
+1  A: 

Once at an interview i was asked how many gas stations exist in my country....

Sergio
Love those crazy questions that may not have an answer but you could give an estimate on i.e. my state is x miles wide and x deep and I estimate that there are X per sqr mile so my answer is 'how the hell do I know'
Owen
My answer was: "I've never been out of gas, and as there isn't one around each corner i will have to say there are just about enough"
Sergio
and... were you hire? :P
Andrea Ambu
I never thought these types of questions were all that useful until I had a friend in college that interviewed with MSFT and was asked "How many baseball fields are there in the US" and answered "10 million". That's when I realized my friend wasn't very bright. :)
gatorfax
I was offered the job but I turned it down. They wanted someone to work 10h/day on a lousy salary.
Sergio
+1  A: 

"What do you fear?" It's something I never considered before, at least as far as interviewing for a job is concerned. I was really caught off guard by it.

el diablo
A: 

Why should I hire you?

This gives the candidate a chance to market himself. Talk about himself, tell about what he is doing or likes to do and how can he add value to the organization.

Faisal Feroz
Good question if you're interviewing for a marketing position. Dubious question otherwise.
Zano
A: 

What was the most negative comment you ever received in your performance review?

How the interviewee answers tells you a lot about their honesty, forthrightness, self confidence, and ability to handle criticism.

This is a variant of the "what is your biggest weakness", but more concrete, and sidesteps bogus answers like "I work too hard".

DasBoot
A: 

"What do you think of my blog?"

Has the candidate really done their homework? Are they brave enough to disagree with something on it?

Generic Error
I'm sorry, this just shows off the interviewer's egomania. "Doing their homework" should be researching the *company*, NOT the interviewer. (That said, I usually do that too... :$ )
AviD
My ego is hungry, feed it!:D
Generic Error
+1  A: 

Forget all the "What is a virtual method" nonsense. Try out this question - it really seperates the wheat from the chaff!

Trumpi
Link is broken.
Kristopher Johnson
A: 

I've been interviewed and I have interviewed. The best question to either shine or dim, on either side of the desk, is "Why shouldn't I hire you?" The answer is what really sticks to the interviewers mind beyond all else. A good response is gold.

vgm64
Sounds too much like "What is your greatest weakness?"
Michael Myers
A: 

can we write some weird things in here.. or there are strict rules about this

Ben
"Yes" to one of your questions.
Zano
A: 

Design a __.
Let them think for a while, and then talk for a while, and then ask them about their choices. There are plenty of ways for a candidate to do well: See if they look to clarify design requirements, favor a methodology such as Test Driven Development, consider a broad range of tools to accomplish the task, or are familiar with design patterns or other modeling methods. Consider how well they express their ideas, if they ask for input, and if they're excited about it. See which candidates seem to have skills that are important to you, or which ones can learn quickly when asked to consider looking at a problem a certain way. Favor the ones that get a lot right or have the qualities most important to your team.
See if they have The Right Attitude

T.R.
A: 

How do you think of your last company?

This question can test if the interviewee has the right attitude. Bad answer will be full of complaints on the last company. Good answer will be more positive. A guy with too much complaints might not adapt to the constantly changing environment.

yanky
Then again a bad answer is a good indicator that you yourself shouldn't apply for the job at that company. ;)
Spoike
Make sure you find out if the complaints are about working in local, state, or federal govt first. Anyone NOT complaining would be suspicious to me.
Rake36
+1  A: 

My former boss killer-question (you would not belive how many people gave up without trying) is: "How much is 17% of number 19?".

smok1
Sounds a lot like a fizz-buzz question. :) http://www.codinghorror.com/blog/archives/000781.html
Spoike
Yaeh, but this is more trivial: my boss expected people to actually calculate this in mind (or at least using paper and pencil) :)
smok1
smok1: Well, it's a rather simple math problem. If someone can't figure it out in a couple of seconds or at least <1 minute, I seriously doubt they ever wrote code.
phihag
@phihag: Exactly. It was like bottom line to determine if candidate was really inexperienced and should be given a chance to grow into good developer, or he was simply a moron and his inexperience is just a derivative of his stupidity.
smok1
+1  A: 

What would you ask if I told you that baseball was becoming less popular in the United States?

Certainly my most memerable, anyway.

Led to a very interesting discussion.

Bubbafat
How about, "What does this have to do with programming?" No, really, what did that have to do with programming??
AviD
It's a "see how they think" question. The day consisted of 6 interviews over 8 hours. 4 were purely technical, one was the HR guy and the first non-HR one was this one. I think they were hiring for program manager as well as software engineer positions and this interview was to decide if I should get more PM interviews despite having applied for an engineering role. I ended up with about 75 questions spanning topics from global economic conditions to the affect on local organized youth sports. I ended up getting hired as an engineer.
Bubbafat