Typical interview process at Microsoft Ireland is the following:
- CV screening / filtering (my guess is that 90% of applications are rejected at this stage)
- coding puzzle (solution to be sent in 1 hour)
- initial phone screen (HR + simple technical questions)
- 1 or 2 technical phone interviews (engineers)
- on site interview
Somehow I didn't have to do the first coding puzzle. Likely it was because I was recommended by other Microsoft employee (based in US), so they assumed that I am applying for the job in US. When clarified, they passed my CV to Irish recruiters which moved me directly to phone screening. Probably it's the best to get recommended, so you can skip some initial filters.
Phone screens were quite typical:
- short technical questions covering OOP, programming languages, databases, networks (5-10 mins)
- design question (15 mins)
- coding question (typically related to the design from previous step - 20 mins)
- discussion of coding solution (how to improve it, how to test it, what are the test methodologies - 10 mins)
- Q&A (now you can ask questions)
On site interview consisted of four 1:1 interviews (45 mins each + 15 min break) with multiple engineers. Some focus on design skills, some on coding (on the whiteboard), some on testing. Everybody asks some short random questions about algorithms, data structures, programming languages, network protocols etc.
The last hour (only 2 out of 10 people got there when I was interviewed) was with a director of the department to which I was applying. It was really hard! I was asked about network protocols, data structures, got an algorithmic problem to solve (similar to "egg dropping problem"), where I had to figure out the optimal (not any!) algorithm and provide a formal mathematics proof of it's complexity (big O notation).