I applied online and was contacted by a recruiter 2 weeks later. The interview had following phases:
- Call with HR to talk about what I was looking for, why I wanted to change jobs etc.
- Next was a call with the hiring manager. General questions and answers about the role, my background etc.
- A technical phone screening. After this screening I was invited to come onsite.
The HR gave me a tentative schedule for the interview day. (I did not know at that time but found out later that this is sort of the Microsoft process to initially only schedule 3 or 4 interviews and add other interviews if you do well in the first few rounds.)
- So I had first four interviews starting from 10:00 AM to 3:00 PM. There was a lunch in between for 30 minutes with hiring manager and a 30 minute break later on. After each interview, the interviewer would escort me to a common waiting area and bring the next interviewer with them a few minutes later.
Since I only had 4 interviews scheduled, I was pretty much ready to go home at 3 PM. But learnt from the hiring manager that they had one more person who wanted to speak to me. I was led to that person's office and spoke to them for another hour. At this point I was almost completely exhausted and ready to go home but was told that there was just one more person yet. This was probably the hardest interview of all. In the end I learnt that it was an 'as appropriate' interview. I would leave the task of figuring out what 'as appropriate' interview is to the reader. Anyway so finally at 5PM they let me go.
Overall three onsite interviews were purely technical and two were mix of program management and technical questions and one was behavioral or you could say 'culture fit' assessment.
I was contacted by HR within a week with an offer. The offer was pretty good so I did not negotiate.