I applied online. The process took 6 weeks. I interviewed at Microsoft in Apr 2010
Interview
I submitted an application through the MS Career site, a short time later (2 weeks) I got an email from a Microsoft recruiter asking for a technical phone screen.
The phone screen was handled by an hr person, they asked pretty basic questions. More along the lines of what is the difference between a queue and a stack than a linked list and an array. Nothing tricky, but if you are working in a specific area, you may want to do a refresher. He also asked me what I wanted to do at Microsoft etc.
Ten days later, I got the email so that we could set up an onsite interview. They also asked me what They flew me out to Redmond, where I finally learned which group I was going to interview with. I then had four one on one interviews, culminating in an interview with a product manager. Three days later I got an email saying they were interested in having me, but eventually I had to decline.
All the interviewers I spoke to seemed nice and sociable, they were all willing to talk about their work and ask about my research. They all had offices instead of cubicles and appeared to have been there a while (30+).
Preparation is important, an interview should not be a technical learning experience.
1. Interview Questions
2. Career Cup
3. Glassdoor.com
4. Programming Pearls
Don't be cheap, spend some money.
Be nice to everyone, puts you in a good mood for a long day.
Speak up, especially when you are trying to answer questions.
Interview questions [5]
Question 1
Implement a queue, with a constraint. I am not sure but I think it was smallest or something
I applied online. The process took 1 day. I interviewed at Microsoft (Redmond, WA) in Jan 2009
Interview
Phone interview was a lady in Office group. She sounded uninterested. Some resume questions. That didn't go so well, but (after a long time)I got invited to onsite anyways. Questions include reversing string, atoi, etc. I was very impressed with the free sodas. Had lunch interview, then met big boss in the end. Overall a great learning experience!
I applied through college or university. The process took 3 weeks. I interviewed at Microsoft (Redmond, WA) in Jan 2008
Interview
I got my first interview by persistently approaching Microsoft at my university's career fairs. My first interview was a typical screening interview, but face-to-face on campus instead of the usual phone interview. I was asked open-ended questions, such as how I would design an alarm clock for a blind person and what my favorite computer application was and why.
The next stage of the interview process was a fly-out to Microsoft's headquarters for a full day's worth of interviewing. All the travel and lodging was paid for by Microsoft and was organized very well. I had a recruiter at Microsoft who was in charge of planning my interviews, talking with the interviewers and making the final hire decision. He was a bit pushy, but I can't say that's representative of all Microsoft recruiters. I got to the recruiting building in the morning and met my recruiter face-to-face with a few other students who were also interviewing for internships. We were given the name of our first interviewer and a description of their group and then shuttled off to different buildings to meet them.
All the interviews took place in the interviewer's day-to-day office, which was nice because I got a chance to see their normal work place and get a feel for the company culture. Microsoft is actually very laid back compared to what I had imagined. There are no cubicles, all of the full-time employees get their own office. The dress is very casual, and the normal dress seems to be a polo shirt or t-shirt and jeans. I decided to dress business casual that day (a collared shirt tucked into khakis) even though everyone had told me to wear a suit. Even then, two of my interviewers commented about how dressed up I was! The building I interviewed in had an XBox lounge (they bought a Wii too later that summer) and a kitchen stocked with free coffee and soda on each floor.
My first two interviews were about an hour each and were pretty standard technical interviews. My third interview went a bit longer because we went out for lunch and talked casually (although this was still considered part of the interview). When we came back from lunch, I still had to answer a technical question before I set off for my fourth interview. My first three interviews were all with the same team and took place in the same building, but my fourth interview was with a different team.
At the end of the day, I went back to the recruiting building and waited for the results of my last interview to come back to my recruiter. I did well enough that I got offers from both teams I had interviewed. Note that my recruiter said that it usually takes about a week to make a decision on hire or no-hire for an intern, so this was an exception. However, this actually wasn't all too helpful because they still only gave me one week to make a decision! My recruiter really pushed me to make a decision as soon as possible but didn't respond to my emails for the first half of the week (in his defense, he was sick), so I pushed my decision a bit longer than a week. I wish I had been given more time to interview with other companies, but I didn't push my decision any further and decided to accept the offer (after all, it was a pretty good offer).
Interview questions [2]
Question 1
Connect Four is a game where two players take turns dropping their color discs into a vertically suspended grid. The game ends when a player adds a disc to the playing grid that connects four discs of their color. The connected discs can be in a horizontal, vertical or diagonal line. Write a function to be called after every turn that returns true if the game is over (and false otherwise).