Got an interview via a recommendation. The interviewer was nice and friendly, but the not working WiFi made him waste a lot of my interview time. He first asked general questions about which projects I was working on and what I did in my previous jobs. He later asked some system design questions and in the end an easy coding question. The coding question was to classify a Triangle and the system design questions where centered around Cortana.
I applied through college or university. I interviewed at Microsoft
Interview
First I submitted my resume to the recruiter. Then I was selected for a first interview round, with an engineer. I had to solve a programming exercise. I could chose the programming language. I was asked also several questions about my background. Then I was chosen for the final round. In this round I performed 4 interviews with different engineers from different deparments. In each interview I had to solve a programming task, on paper, or work through a testing and diagnostic scenario. Also I was asked questions about my interests, expertise and background. The programming tasks were about graphs, searching, string processing.
In general the interviewers were nice and kind. At the end I was asked if I was willing to work in the Office team, but since I like software projects with hardware involved, I said it would be OK, but I'd rather be involved in the Xbox or Windows Phone teams. I think that cost me the offer, but the experience was good in general.
The process took 4 weeks. I interviewed at Microsoft (Seattle, WA)
Interview
Skype interview.
4 onsite interviews in Seattle. (Binary trees & linked list questions)
Seriously - solve all of the problems you can find without the solutions.
Stayed at the Marriott Hotel two nights. Flights and all taken care of.
Recruiter was incredibly nice and supportive throughout the process.
Interview questions [1]
Question 1
Find a loop in a linked list and fix it.
Set all nodes at the same depth to have a field "next" pointing to the next in the children.. (BT)