Microsoft Interviewing Tips

Fred (not his real name) saw this page before going to his interview at Microsoft. He contacted me about potential answers to these questions as well as other things he should do to prepare. He also acted as my own personal mole. Here's some interview tips that Fred got from Human Resources over the phone:

"I am expected to arrive at Microsoft recruiting (building 19) by 10:15AM. At that time, I will meet with my recruiter and present my application for employment. We'll go over any concerns or questions I have and then we'll head to the first interview. I am interviewing for a Software Design Engineer position, probably in the Interactive Media division. The interviewers will consist mainly of SDEs.

Some interviewers carry more sway than others. I may encounter a particularly important interviewer at any time during the day. The interviewers are looking for someone who shows enthusiasm for working at Microsoft. They also want someone who will be thoughtful before answering questions or writing code. Lack of sustained enthusiasm and lack of aforethought are the two biggest weed out factors.

The interviewers will grill me to get at my technical abilities. I will be asked a lot of questions about coding in general. I may write in the computer programming language which I find most comfortable. I may choose whichever language is best suited to solving a given problem. I will also be asked some basic questions about project scheduling and personnel management. The interviewers want some idea of how I would interact with people on a team, possibly as a leader or Program Manager.

I am free to arrive early and enjoy the cafeteria. The person I spoke with this morning said that I could call when I arrive and we could get some coffee or something beforehand. There is no expected dress, but jeans are out. I will be wearing a gray suit with a sporty tie. There will be time for lunch (good, I'll need it!)."

Here's some more tips from another Fred (also not his real name):

"Interviewers are usually fluent in many computer languages, so you can choose C or C++ (by far the most prevalent), BASIC, or any other language. Of course, if you claim C++ knowledge, you should implement your algorithms in C++.

Also, don't claim to be a 10 out of 10 on interviews. There'll always be an 11 out of 10 there -- it's Microsoft, remember. And if you don't know C++ or some other thing, say so. Don't try to fake it, cause you won't be able to.

For test positions, emphasis is on developing an algorithm, and then telling the interviewer about how you'd test it (e.g. give illegal input [which?, how?], call the function in low-memory conditions, double-byte character set implications, etc.)."

Here's some tips from Matthew Wetmore (his real name!):

"The interview times will vary from candidate to candidate. After the recruiter, you're interviewing directly with the people you might be working with, so the scheduling can get a little wacky fitting in with their group commitments, meetings, and so on. On that note, you will spend the day interviewing with people of the same job description. If you're expecting to be an SDE, and you're interviewing with PM's, there's probably something wrong. Also, make sure it's absolutely clear right from the start with HR what you want to do. There is really no way to shift the emphasis on the day of the interview, and if you try the interviewers will feel like they're wasting their time.

As far as dress code for the interviews, there's no hard rule. It totally depends on who you're interviewing with. If you're going to wear a suit, make sure it's something you're comfortable in. I interview SDE's, and I really don't care what a candidate wears, short of something really distracting (a grizzled bit-twiddler in a pink tutu might prove a *little* disconcerting). PM's tend to be a bit fancier, since they deal with the public a whole lot more than a tester or a developer does. But as I said, go with something you're going to be comfortable thinking in."