Compelling Interview Questions
Published on Apr 25, 2013 by Jamie MunroIt seems to be hiring spree time once again and I find myself spending lots of time reviewing resumes, meeting people, hearing all about their past and future.† 7 times out of 10 I find myself knowing within 5 to 10 minutes of the start of an interview whether I immediately need to find an exit strategy or keep proceeding with the interview.
A few times people can talk-the-talk and thatís why we have second interviews and written tests.† So the odd time that the 3 of 10 make it through, we quickly weed them out as well.
Enough background, letís move on to some of my favorite questions, but more importantly, why and what Iím looking for when I ask them.
What do you know about XYZ Company and why do you want to work here?
I start every interview with this question.† This is not a super important question, but it gives me an immediate feeling about the person and whether they are ďjust interviewing for any jobĒ or if they care about who and where they are working.
At my current company, we have a bit of a culture; people who donít care donít fit in Ė end of story.
What career goals have you set for yourself?
This is also my immediate follow up question.† I want to know where people see themselves in 5 years.† Do you just want to be a developer versus being a lead versus switching careers all together?
I donít have set goals with this question; however, it does help me tailor the interview a bit.† If people just want to be developers and have 5+ years of experience Iíll ask different questions versus if people strive to be a lead developer.
I have no issues with developers wanting to be developers, I do have issues if you plan to just stand still and do that!† If you want to be only a developer, you need to strive to achieve other goals in your career.
What was the biggest challenge you've ever faced?† What did you learn from that?
Once again another open-ended question; I hope you a starting to notice a trend here.† When I first started interviewing with a fellow colleague Ė wonít name-names, but he knows who he is Ė we struggled miserably at getting people to talk.† Instead we found ourselves helping them get to the answer we wanted to hear; as we wanted to hear very specific things.
This specific question truly reveals a person; if they are unhappy, this question typically reveals that Ė there is no hiding!† If the person is closed-minded, this question will also reveal that.† E.g. if you tell me you have never had a big challenge, youíre not being honest with yourself or you must have had the most boring jobs ever!
After these first few open-ended non-technical questions, I switch gears a bit and begin asking some generic open-ended technical questions:
- What do you care about most when reviewing somebody else's code?
- Can you explain what Test-Driven Development is?
- Do you know what a regression test is?
- Do you know the differences between tags and branches? When do you use which?
As with every generic question, there is no right or wrong answer.† I am looking to hear specific things though in these answers.† Things Iíd like to hear typically involve commenting, code readability, and most importantly documentation!
After these questions I like to switch back to my non-technical questions.† These questions are typically geared to the personís personality.† This is where I, the interviewer, need to listen very carefully.† Often times, the interviewee will say something that I use to pick apart further and understand what kind of developer they are going to be.
What motivates you?
I find this and some of the other personality questions really throw people off guard during the interview process.† Think about how you would answer this question and really deep dive and pick apart the personís answer.
How do you evaluate success?
Most people will give you the typical answer, the client is happy and I delivered on time.† This is typically fine, the people that stand out though will say that PLUS I created some really awesome code that can be used again in the future.
What are you passionate about?
This question is almost exactly the same as the motivation question, but just different enough.† A lot of people say ďtechnologyĒ.† This answer is annoying, but good to take it and pick them apart with it.† People will try to bullshit you with I love learning, I love trying new things, etcÖ make them see like a real go-getter, so when you question them on it; if they are not, they crack and crumble.
What are your pet peeves?
Finally, my favorite question!† If I were asked this question in an interview, I would probably find it hard to stay objective as I have a lot of pet peeves!† I use this question to see if a person is going to be argumentative.† I want strong-willed people, but at the same time, I want open-minded people.† You are NOT always right; neither am I.
What is your greatest strength?
Another easy one to bullshit, but the true rock stars will stand out and be honest and open.† This is another great question to really deep dive on a personís answer if you are unsure about it.† Ask them specifics, what do you mean by that?
What is your greatest weakness?
People hate this question.† Nobody likes to talk negative about themselves.† I disagree with this sentiment, itís not about being negative; itís about being honest with you!† Iíve recently spent the past two weeks doing team reviews and itís very obvious who is honest and who doesnít like to criticize themselves.
Iíll be honest right now, here are my greatest weaknesses:
- I seem unapproachable
- I expect the best out of people and I let it bother me when I donít get it
- Iím not good with confrontation.† I need to better learn to be tactful and objective with my team when they are telling me their struggles
- I need to slow down and explain my thoughts without getting mad
Iím sure I can go on and on.† Ironically, I recently did a personality test and these were all comments about my personality.† I already knew them, so thanks for the kick in the nuts!
In your opinion do developers make good or bad testers?
Last, but not least.† This answer only has ONE right answer and Iíll take the opportunity to point to a recent article a read from Phil Haack called Test Better.† I very strongly agree with this article.† Throughout my questioning Iím trying to determine three key things:
- Quality/Attention to Detail
If you are trying to tell me that developers are bad testers, clearly your attention to detail is not good!† Developers in my opinion should be the BEST testers.† I do understand that it is hard to test your own code, but there are simple tricks to help with that.† Walk away, switch gears, remove your developer hat and put your QA hat on!
Prior to finishing the interview, I follow up these open-ended questions with very specific technical questions.† I need to make sure that people do know some technical stuff!† But I like to hear all about their past experiences through these very generic questions.
Oh and most importantly! †I leave time at the end for people to ask me any question they want. †If a person has none, you are guaranteed to NOT get a callback from me!