Microsoft SDE2 (L61)
Current Role: Mid-Senior Role at a FAANG company Experience: 5 years
I recently interviewed with Microsoft for an SDE2 position and received an offer. The interview process consisted of five rounds: one online assessment, one DSA round, two LLD rounds, and a final managerial round.
Online Assessment: I received an online assessment link and completed two coding questions within 90 minutes. The first question involved prefix arrays and was easy; the second was a medium-difficulty 2D DP problem. I completed both questions within 45 minutes, and all test cases passed.
After clearing the online assessment, I was informed about the remaining four rounds: DSA, LLD, HLD, and Managerial, all to be conducted on the same day.
DSA Round: The interviewer began with an easy string question to assess my approach. I was then asked to code solutions for "Longest Substring Without Repeating Characters" and "LRU Cache." We discussed the approaches, code, and time/space complexities.
LLD Round 1: I was asked to design a parking lot system. We defined the scope, requirements, and some extended requirements. I outlined the entities and implemented key functionalities, focusing on finding optimal parking slots. Feedback suggested incorporating more real-life scenarios and validations.
LLD Round 2: This round focused on the low-level design of an online book reader system similar to Kindle. I followed the same approach as the previous round, defining requirements, assumptions, and implementing key functionalities. The interviewer then modified the question to handle multiple book sources. I proposed and implemented the necessary changes.
Managerial Round: This round included behavioral questions about my motivation for switching jobs, expectations, and a deep dive into my current project and team. I was also asked to code a linked list question involving retaining the first m nodes and deleting the next n nodes until the end. Finally, I discussed the high-level design for a "Top K Visited/Frequent" system for various timeframes, focusing on my approach and considerations for a distributed system.
I received a job offer the following week.
Key Takeaways: