The process took 2 weeks. I interviewed at Microsoft (Seattle, WA) in Oct 2008
Interview
As a college student, Microsoft first came to my Campus to give me an interview, where they asked me a challenging programming logic question. I passed that interview, and they flew me to Seattle for an on-site interview. Over the course of a day, I had 4 interviews that were much like my on campus interview. At each interview, I was asked a technical question. From what I heard, it seemed that only about one out of every four people who are flown to Seattle will receive an offer.
Interview questions [4]
Question 1
You have a list of red and blue objects. You have to sort them using swapping in order N time.
Given a set of people, one of them is a celebrity. You have a 2D array which describes which people know each other, that is [N, M] is true if N knows M. The celebrity will not know anyone (except them self) and everyone will know the celebrity. Find an order N algorithm to find the celebrity.
You have list of numbers that are sorted but shifted. That is, a list like [5, 6, 1, 2, 3] or [15, 17, 20, 25, 2, 8] is given. Find the most efficient way to search for a number in this type of list.
Online interview round.
There would be 4 interview rounds total. Each one evaluate various skills about you. They will give you hints as well at time required, you need to capture those and rethink on your solution.
Interview questions [1]
Question 1
Design worker thread library where each task will be executed in parallel. Design a system to handle a huge workload.
HR screening, one technical interview with the hiring manager then three interview loop which covered two system design and one dsa round.
System design was intensive and challenging.
It took them 5 weeks to come back with an offer. Background check was completed in a week, got joining date after 3 days.
Interview questions [1]
Question 1
Design a system for a startup company that let users post various types of content and get a unique url which can be shared with others to access the content