I applied through a recruiter. The process took 1 day. I interviewed at Microsoft (Redmond, WA) in Jul 2010
Interview
Was contacted by a v- recruiter that found my resume in their system. Had a call with her, and set me up for a call with the hiring manager. Had a tech screen a few days later with him. It was pretty rough, but I faired well enough to get an invitation to Redmond. Flew out a few weeks later and interviewed with 6 different people throughout the day.
Everyone was very nice, the offices are gorgeous (Studio West), and the interviews were challenging. They really liked my background, and I had a very positive experience throughout the day.
An offer was made a few weeks later and I accepted. The salary was lower than I was anticipating, but the cost of living in Seattle is MUCH lower than San Francisco where I live. I move out there in less than a month.
Interview questions [2]
Question 1
Write a method that determines if 2, 3, 4, or 5 integers with values 1-10 passed in an array add up to 15.
Come up with an architecture for determining how many users are currently online playing a game. How do you scale it up and out? Where are the points of failure? Scale to 10M. Scale to 100M. Scale to 1B.
The process took 1 day. I interviewed at Microsoft (Redmond, WA) in Dec 2009
Interview
I went to four in-person interviews. Lunch was pretty good and free. Each person asked a different kind of question (data structure, strings, math, algorithm optimization). I think they communicate between interviews. If you interview with a higher-up at the end, that's good news.
Interview questions [1]
Question 1
How would you detect and deal with escape ('\") characters in some xml?
I applied through college or university. The process took 2 days. I interviewed at Microsoft (Redmond, WA) in Apr 2010
Interview
Microsoft's infamous "interview loop"- three one-hour-ish interviews with current MSFT employee's, followed by another interview with a general manager. Interview structure is nothing peculiar: standard algorithm construction on a white-board, general programming knowledge questions, prior group development experience, etc. If you only know Java, you're pretty applying for the wrong job. For those with significant C, C++, or even C# experience and are able to project an aura of certainty and competence, don't be too worried.