Just had my Microsoft hiring event recently. I went in a bit underprepared and probably got screened out on coding. One thing that surprised me: none of the questions were the usual tagged LeetCode ones, so it was a pretty rough experience for me.
Sharing a quick summary for anyone preparing for Microsoft.
BQ:
Team size, how work is split, ownership, and collaboration style.
Coding — The rate limiter question
The only problem on leetcode that's related to rate limitor is this one: https://leetcode.com/problems/logger-rate-limiter/description/, but the one I got asked is really different.
And the follow-up is what if you have 100 kps
System Design — Ticket Booking System
They really pushed on how to handle failures, for example, how to handle requests being dropped.
This system design question was included in this list I saw earlier. I thought I prepared for it pretty well, but the question the interview focused on was very different. Other than the request drop, they really stress race conditions for ticket booking and how to handle them.
BQ:
Example of delivering with little guidance. Lots of deep follow-ups (prioritization, rollout, A/B, etc.).
Coding — LC 939 Maximum Area Rectangle
Start brute force, then optimize with hash set to reduce complexity. Mostly testing optimization thinking.
There’s another round of coding, but I didn’t take notes on the details for that round.
If I get another chance to do it again, I’d practice more string parsing and how to handle failure cases for different system design questions.