I applied through an employee referral. The process took 1 day. I interviewed at Microsoft (Seattle, WA) in Jun 2011
Interview
1. introduce background;
2. the research has been done;
3. Design questions:
3.1. data center network;
3.2. sync in distributed systems;
3.3. TCP / IP performance;
3.4. Routing;
3.5. coding: dynamic programming
I applied online. I interviewed at Microsoft (Redmond, WA)
Interview
First, one of the team members called me on the phone and we had a short chat about what the role requires and my resume. Then I had a standard phone call with an HR person who set up the technical phone interview as the next step. After this step, I got invited to go onsite. After five rounds of interview we called it a day, and within a week I received an offer.
I applied online. The process took 2 weeks. I interviewed at Microsoft (Cairo, Cairo Governorate) in Mar 2016
Interview
- Technical test composed of 8 questions in 2 hours on hackerrank.com. 1 question on probability, 1 question on algorithms, 6 coding questions; mainly on arrays, linked-lists and BST as well as a math problem.
- Invited for an onsite technical interview, It was at least 3 interviews. First Interview was about algorithms and how to solve a problem till you write its code. Second was a design interview, mainly about OOP. I couldn't pass the second interview, so I don't know what the third interview was supposed to be about.
Interview questions [4]
Question 1
1) Array of length n, its elements are x-powers of the range (1 to n+1). There is one repeated element, find it.
- The interviewer helps you till you reach the final solution, but he keeps asking about time and space complexity of each move you do. He may ask you to implement system functions like pow, sqrt and so on.
I applied through an employee referral. The process took 2 days. I interviewed at Microsoft (Redmond, WA) in Oct 2015
Interview
Very pleasant interview process. Since I'm about to graduate with a PhD, I interviewed with two teams: one a very research-y team, and the other a software development team. Both interviews were extremely pleasant. The interviewers were genuinely nice, and allowed me plenty of time for me to ask them questions about the team and the role I would play.
In terms of actual questions, the research-y team had most of the interviewers asking me about my ideas on the research problems they were trying to solve, with only one actual "coding" interview, which dealt with the standard tree traversal questions, and the design for a battleship game, with the challenge question being about how to scale up the battleship game to a large grid. The other team had more coding style questions, but most of them were not about writing code per se, but more of designing data structures and algorithms to solve specific problems in distributed sorting, google doc style spreadsheets, etc. Lots of puzzle/brainteaser questions from this team as well.
Overall, a great interview experience!
Interview questions [1]
Question 1
Design for a google doc style spreadsheet, with a focus on how to handle multiple concurrent edits and formulas on the spreadsheet.