I applied through college or university. The process took 4 months. I interviewed at Microsoft in Jan 2010
Interview
The first round interview was on campus at my university. A week later, I was told I was being invited to the final round interview on site in Washington. This took 2 months to schedule. Microsoft covers all expenses (airfare, hotel, rental car or taxi, food, etc.) and I went out to dinner with a current employee who had gone to my school after the day of interviews. The interviews were all 1:1 and consisted of mostly design-type questions and a few questions about my resume.
The entire process only had two rounds and it was really simple. Each round was around 45 minutes to an hour with a current Microsoft engineer and they just ask you a typical leetcode style question. There was also a behavioral round that was really simple.
Interview questions [1]
Question 1
The first round was a typically leetcode question that was really easy. The second round was a little bit harder. It was about having a nxn square made out of 0s and 1s and it wants you to compute what the square looks like if it was rotated.
I applied through their website with a referral, after a month or so they sent me a home exam, I think about a month after that i had 3 interviews in the same day, each one around 1:15 hours.
Interview questions [1]
Question 1
implement a dictionary where you have set,get and setAll, all in O(1)
Feeling thrilled to have accepted the offer, I look back on this interview process as both challenging and rewarding. It began with a technical round where I tackled a complex A/B testing design question, followed by a SQL query on user retention. The final stages included a system design discussion that had me sweating, but honestly, the system design section on PracHub prepared me well. Each step pushed my limits, but the culmination was definitely worth it, landing me a role at Microsoft.
Interview questions [2]
Question 1
Design an A/B test to measure the impact of a new ranking change in Bing, and explain how you would handle network interference between treatment and control users.
Write a SQL query that computes 7-day rolling user retention from a daily events table, then flags cohorts whose week-over-week retention dropped more than 10%.