views:

2895

answers:

18

You've probably heard of the Microsoft Interview™, a kind of interview in which the interviewer asks a candidate brainteaser questions such as:

  • Why are manhole covers round?
  • How do they make M&Ms?
  • What does all the ice in a hockey rink weigh?
  • How many piano tuners are there in the world?
  • How would you move Mount Fuji?
  • I'm thinking of a number, what is it?
  • 5 people are crossing a bridge, they walk at different speeds, only two people can cross the bridge at once, at least one person should be carrying a flashlight. etc etc etc
  • Design a bike for blind people.
  • Explain a relational database to a 5-year-old.
  • How would you make an alarm clock for clinically depressed people?

I understand that those questions are meant to probe a candidate's problem solving abilities, but I just can't imagine these questions are they really effective in selecting the best person for the job. It takes just one or two of these interviews for someone to figure out what their interviewer wants to hear regardless of their programming aptitude.

Are there really any differences in technical skill between people who do well in a Microsoft Interview vs those who don't?

+5  A: 

I guess it depends on the type of job you are going for and the skills required, and the experience level of the candidate. I had an interview with them as a relatively experienced programmer i.e. not fresh out of college, and none of the questions resembled those above - they were all coding and design questions. The types of questions you mentioned do help sort out those who just go "I don't know", and those that show some form of tentative steps in problem solving. They aren't necessarily expected to get the right answer, it's all about the approach to problem solving, and from that perspective I think they can be valuable.

Miles D
+1 - they don't ask these questions to developer candidates, for the most part. The PMs get them.
Sarah Mei
+2  A: 

In my opinion, these questions are pointless, since they test whether somebody's heard the question before as much as whether they're good problem solvers.

Besides, I'm pretty sure I heard that MS no longer uses these questions, which is probably a pretty good sign they weren't working out for them.

mabwi
surely cause everyone started telling everyone about them so they were no longer new to people.
Tony Lambert
Most companies still use the same old booklets of questions that everyone recited a hundred time (e.g., Fibonnaci). Technical phone interviews are really complete BS.
Uri
Technical phone interviews are supposed to weed out applicants with BS resumes nothing more.
Joshua
+22  A: 

Some people seem to be under the impression that a "Microsoft" interview consists only of these questions. If that were the case, they would be completely meaningless and useless. A couple of questions like this within the context of a much longer interview, however, can serve to reinforce the conclusions reached in the rest of the interview.

GalacticCowboy
+1  A: 

There is probably a thinking behind those for asking them. What are trying to find out? I don't know since I don't work at MS.

I did had an interview with McAfee and I understood the reason behind their questions. 2 of them were regarding if I knew 5 tag words from HTML and 5 action words from MySql. I wrote a function to copy one array to another. The 2 brain teaser I got were 1. You have 7 marbles, 6 weigh the same and 1 does not. How would I use a scale to find the marble with most weight. They wanted to see how quickly I can understand problem, my thinking process when trying to arrive at the answer, and how many different answers would I try to come up with until I found the best one. 2. Since I did not comprehend their question correctly, I could not give them correct answer for that. So second one asked if I can find the angle between the minute and hour hand, when it is 3:15. that was easier for me and quite easy. I thought it be testing my knowledge of math but smiled when they told me that a circle is 360(made me wonder as to how many people they had interviewed before whom they told this math fact).

All-in-all it somehow helped them weed me out of the selection process, so don't know how well it worked out for them.

That is an algorithmic thinking question and makes some snese. It's very different than the silly questions that were listed above
Uri
+17  A: 

The lovely thing about getting older (and wiser???) is that you get to a point where you just smile, shake your head and say "Nah. I don't think so". If they ask what you mean, I say "I'm here to help you solve your REAL problems, not answer stuff like this. Now, let's get down to business.".

Anyone who thinks these questions are anything other than the interviewing company trying to show how clever they are is kidding themselves. Maybe they had a place in the dim past of IT, but not once the cat was let out of the bag, as they say.

Cheers,

-R

Huntrods
Questions such as these may seem whimsical but reveal how you break down problems or designs.There's a myth that a certain level of experience allows you to refuse interview questions you consider poor. It may work at some places but most of the time it's the quickest way to get bounced.
Andrew Grant
I think they are there mainly to catch one off-guard and see how the subject reacts[wit, presence of mind, etc]. These are very good in 2 cases: Exceptionally Witty [+5], Exceptionally Dumb[-5]. Everyone in between gets a free pass.
Mostlyharmless
@Andrew Who cares about getting bounced? why would you want to work at a place that asked these questions?
Justicle
@Justicle: 1. Smart people sometimes do stupid things: judging a company based on ONE interview question is also a stupid thing 2. The HR rep that asked the question won't be your boss 3. If you took stock in all of the 'why would you want to work at a company that...' comments on SO, then you'd quickly starve to death. I'm all for finding the best employment you can, but there comes a point where it just being elitist and arrogant.
SnOrfus
+13  A: 

The problem with such questions is that its difficult to interpret the answers in a meaningful way. For example, as a parent of a child who is nearly five, I'd argue that correct answers to "How would you explain a relational database to a five year old" are things like "I wouldn't" or "I'd tell him it was like his toy box, but inside the computer". A child of that age lacks the ability to concentrate for any longer explanation to work, ie you can't explain a relational database to a five year old. Parents of older children and those who aren't parents probably wouldn't realise this though.

"I wouldn't" could be a surly "I can't be bothered to think about it" answer, or it could be someone telling you what they know is the right answer based on practical experience. So you need - in this case - to know about the interviewees children before you can judge the answer. Needing to know the person before you can ask questions to reveal details of the person is self-defeating.

David Arno
All right, who downvoted this?
Joshua
Sometimes, I have a hard time explaining a relational database to some of my high school students. I think the correct answer to the five-year-old database programmer question is "Are you nuts?!".
Zano
+4  A: 

The best answer - IMO - to the "Design a bike for blind people" question is an exercise bike rigged up to a fan so that more air is blown in the person's face the faster they peddle.

I've no idea who originally thought up the answer though.

David Arno
http://thedailywtf.com/articles/riddle-me-an-interview.aspx
Gulzar
That was it. Thanks Gulzar
David Arno
How about a tandem, with a seat for a "sighted" person, and the handlebars for that seat say, in Braille, "Do not sit here."
GalacticCowboy
A: 

I have never in my life (thankfully) encountered these sort of questions in an interview, though I've encountered the usual "out of the freshmen algorithms book" questions too often.

I don't know why they're called MS questions, but maybe I was lucky enough not to have them asked in MS interviews.

I think that these questions tend to be asked by companies that want to seem like they're really cool and hip and look for outside-the-box thinkers and everything else that pleases the 25y/os managers with MBAs that want to impress their friends at parties. You will also probably see these in some consulting companies that list their consultant's orchestra or competitive skiing experience before their technical skills to show that they have well-rounded people.

If you're looking for good developers with good skills, there are enough technical questions that one can ask that involve design and really show skills. MS has been doing a good enough job (IMHO) doing this and getting these people.

Uri
+2  A: 

I think they are effective if you are concerned with how a person approaches a problem. Particularly, are they taking an engineering approach or just haphazardly drawing conclusions from thin air. If I were to ask a person this, I think it would be important to ask them verbally, rather than write it out.

Writing it out is near meaningless. For example in the case of the round man hole cover, I think everyone has heard of the question. With a written exam you don't know if someone already had preconceived notions, or sat there and figured it out. Asking verbally you could tell. And more importantly, if asked to think out loud, you can gauge their ability to reason.

As an aside, I think it's rather funny when an application contains a misprint on a common interview question to which there is no correct answer.

ccook
A: 

There are good ones and bad ones in there.

The questions "how much does the ice in the hockey rink weigh" and "how many piano tuners are there in the world" seem similar but are in fact completely different.

For ice in the hockey rink, area of hockey rink (well-defined) * depth of ice in hockey rink (I think this is around 6 inches) * density of ice (which is ~7/8 * density of water). I'd end up with a bizarre unit since I don't remember all my unit conversions but this approach would work.

How many piano tuners in the world is not an approachable problem. For a reasonably homogeneous region (like LA) it might be possible, but for the world, no way.

Joshua
+15  A: 

I thought I will post a WTF entry..:)

Thankfully, Microsoft realized that the type of people who enjoy these riddles aren’t always good programmers, and good programmers aren’t always the type who enjoy these riddles. In fact, some of the folks who can solve these riddles are precisely the type of people you don’t want as programmers. Would you want to work with the guy who builds a water-displacement scale/barge, taxis a 747 to the docks, and then weights the jumbo jet using that, instead of simply calling Boeing in the first place?

Unfortunately, Microsoft’s realization came too late: a whole mini-industry has spawned around the concept of Job Interview 2.0. If Microsoft did it, it must work, right? There are books written on brainteasers in the interview, consultants who will help your company annoy the hell out of candidates with your very own custom brainteasers, and now, everyone from small software firms to big ole’ banks are asking stupid riddle questions.

Gulzar
Personally, I think that these interview questions bias selection of "not invented here" types. Someone who claims that they would use reference material to solve the problem comes off as a lamer, even though that appears to me to be a more sophisticated answer.
yacdmnky
+1  A: 

Slightly offtopic but there is a solution for the "Design a bike for blind people."

I had a friend who worked in a bike shop. One day, a couple from who the man was blind, entered the shop. They liked to ride on the bike, but unable to see is a slight disadvantage. So they had an ingenious solution: use a tandem (a bike for two people). Now they could ride together and safe on their bike.

;-).

Gamecat
+1  A: 

Questions like that, imo, are a total waste of both the interviewers time as well as the interviewee.

When I have run into stupid stuff like that in the past, I chuckle and say something like "Offhand, I might do XYZ but I'd do a bit of research to find out the correct problem first."

Whether someone can come up with the 'correct' answer in the several seconds they're allowed to think of something under pressure is rather dumb, again imo.

G-Man

GeoffreyF67
A: 

These are question that can't be answered with just an analitical processing and is where the candidate really shows that he is not only technically competent, but also a creative problem solver.

Technical competence could be verified with the classic questions more similar to what you get with mcp exams but to answer to this kind of open or impossible questions can show that the candidate:

  • Is a real problem solver that is not ditrurbed to try to find answer he could not google for it (at least not now).
  • He could be interesting to work with if he answers something funny/clever

I think this kind of questions are tought to address the right side of the brain of the potential candidate where he really shows his creativity and personality.

I do agree that this questions should be put in context with more classical ones.

Btw if Microsoft recently hired smart guys Scott Hanselman and Rob Conery the process should not be that bad (I know I know... they didn't pass them).

Ronnie
A: 

The communication skills are IMO the greatest part of these kinds of questions. Even if someone has heard the question, there may be various follow-up questions about how did you come to that conclusion or do you know general techniques for solving such an issue. I'm reminded of how Math problems got solved at various stages in school. In grade 2, the key is to just get the final answer and that's all that is needed. In grade 7, now there is a shift to a more formalized way of showing how one reaches the solution to the problem.

Sometimes hearing those questions can be a bit of an icebreaker as I have had some where this was discussed as being a silly way to determine how well some people handle being given something out of the ordinary, which I think can be a rather common thing for developers in most organizations to some extent.

JB King
A: 

My recent experience with Microsoft interviews suggests that they place more heavy emphasis on algorithmic related questions that relate to trees, graphs, lists, and comp. complexity. They'll also get you to write out some code for a rudimentary task like string processing or graph exploration.

I'm guessing that the objective is to identify people who have no experience coding. It's a fairly simple matter to game the process, so I'm not sure why it's so highly structured. What I find comical is how Google protect their questions by non-disclosure. That seems really lazy to me.

yacdmnky
+1  A: 

In my Microsoft interview, they didn't ask any questions like these at all. All the questions were about algorithms (some of them covered in Knuth's books), logical games, specifics about Microsoft technology (such as 'how do you find an object in a collection using a delegate?', which was pretty easy), and so on.

I got the impression from my interviewers at Microsoft that they don't like to waste time. Every minute they spend meeting with me is a minute they don't spend meeting their deliverable.

Robert S.
So, I end up trying to puke out the most rapidly writable code to process the string, realizing there's someone on the other end drumming their fingers awaiting an answer or a freeze/timeout. Perhaps not too dissimilar from real world coding style!
yacdmnky
+5  A: 

Honestly, if I were asked those questions in an interview, I'd be more inclined that not to turn down any job offer or not pursue further interview. It just smacks of some HR/business school fad that'll seem ridiculous in a few years. Ask me technical questions. Ask me behavioural questions. Fine.

I think companies sometimes forget that during an interview two interviews are taking place: the employer is interviewing the potential employee and the potential employee is interviewing the employer. Some companies make the mistake of becoming too arrogant so they'll start doing things like this on the justification that "We're so good because we're X so candidates should jump through any hoop we want and be thankful we're deigning to even talk to them".

So as a candidate these questions would leave me thinking the employer was unjustifiably arroagant, beholden to business fads, probably too bureaucratic/political and just didn't "get" what makes programmers tick.

Respect is commanded not demanded and results speak for themselves.

cletus