Interview Experience - 68 - Microsoft | SDE 2 | Level - L61
Summary
📌 Job Role: Software Development Engineer
🔢 Number of Rounds: 4
📜 Offer Status: Offer
📍 Location: Hyderabad
👤 Candidate Name: Not disclosing due to signed NDA
Interview Process
I applied to Microsoft through a referral. I connected with a Senior Software Engineer (L63) on LinkedIn who was generous enough to refer me and even helped with preparation resources. A week after submitting the referral, I got a call from the recruiter informing me that my profile was shortlisted. They then shared an Online Assessment (OA) link on Codility.
Soon after the OA, the recruiter confirmed that I cleared it and scheduled three back-to-back technical interviews for the following Saturday. All interviews were conducted via MS Teams.
Post the three rounds, I was informed that the feedback was positive, and one final "As Appropriate (AA)" round would be conducted to conclude the process. This was scheduled on a weekday evening.
A few days later, I received a call from the recruiter — I was selected!
Preparation Guide
I was actively preparing for SDE 2 interviews during this time and had recently interviewed at Amazon. The Amazon process, in hindsight, was comparatively more rigorous and intense. That prep helped a lot while interviewing at Microsoft.
The interviewers at Microsoft were extremely polite, calm, and encouraging throughout. It never felt like a high-pressure environment. In fact, even the difficult questions were handled in a collaborative way. My recommendation for anyone targeting Microsoft SDE 2 is to go through one solid preparation cycle (Amazon is a good benchmark) and you'll be well-equipped.
Interview Rounds
Round 1: OA - Codility
Duration: 90 minutes
Difficulty Level: Medium
Experience
The first round was an online assessment conducted on the Codility platform. It had two coding problems. While the problems were not exact matches from LeetCode, they were very similar in nature to:
An important thing to note about Codility is that during the assessment, only a few small test cases are executed in real-time. You don’t get complete feedback about efficiency or correctness. Once the time is up, Codility runs all the hidden test cases and calculates your final score. I ended up scoring a 100%.
Key Learnings
Be cautious of the partial feedback during the assessment window. You might think your solution works when it doesn’t, or vice versa.
Focus on both correctness and performance, even if only a few tests are shown live.
Round 2: DSA
Duration: 60 minutes
Difficulty Level: Medium
Experience
This round had two interviewers, both asking questions in parallel. The expectation was to write production-ready, compilable code along with meaningful test cases covering various edge scenarios. The round took place on the Codility interview interface.
Before diving into coding, there was a brief discussion about my current role, responsibilities, and past experience.
Coding Problems:
Problem very similar to Simplify Path
A variant of the classic Two Sum problem, with added constraints and complexity — somewhere between LeetCode medium and hard.
A strong emphasis was placed on code quality. Pseudo-code was not acceptable, and I had to write actual working code.
Key Learnings
Know your primary language well — syntax, nuances, and writing idiomatic code.
Practice writing edge-case-focused unit tests.
Pseudo-code is not acceptable — get hands-on with real coding practice before appearing.
Round 3: DSA
Duration: 60 minutes
Difficulty Level: Medium
Experience
The third round followed a similar structure to the second one — two interviewers, two coding problems, and high emphasis on code quality and test cases. The round started with a good discussion on my previous projects, my contributions, and the impact of those projects. There were some follow-up design-related questions during this discussion as well.
Coding Problems:
A variation of Longest Substring with At Least K Repeating Characters
Level Order Traversal of a Binary Tree. After solving this, I was asked to implement:
Zig-Zag Traversal
Reverse Level Order Traversal
The twist was that the follow-up versions had to be implemented by minimally modifying the original code, without increasing space or time complexity.
Again, pseudo-code was discouraged. Emphasis was on writing code that can be compiled and tested.
Key Learnings
Deep understanding of common patterns (like BFS/DFS, sliding window, etc.) helps with on-the-fly variations.
Practice writing code that's easily extensible or modular — interviewers often introduce follow-ups requiring you to adapt your solution efficiently.
Be ready to walk through your design or logic under constraints of performance and elegance.
Round 4: AA Round - Design
Duration: 45 minutes
Difficulty Level: Hard
Experience
This round was led by two very senior engineers (likely 20+ YOE). Only one of them actively asked questions, while the other remained silent throughout.
The round began with a deep dive into my experience and project work. I was asked to explain my design decisions, challenges, trade-offs, metrics, customer impact, and even how we handled monitoring, alerting, and production issues. This felt very similar to Amazon’s Behavioral or LP-based interviews but with more technical flavor.
The second half of the interview focused on a system design problem — Design Google Docs. I led the conversation and structured my answer covering:
High-level architecture: Web servers, WebSocket servers
API design and client-server interaction
Choice of database and schema design
Cache strategy
Load balancer and rate limiting
Authentication, authorization, and document permissions
Real-time synchronization strategies
I made sure to verbalize my thought process continuously for around 20 minutes. The interviewer didn’t interrupt and said at the end that it was good. We closed the round with a few logistical questions around location and team preference.
Key Learnings
Structure your answers well and walk through them as if you’re whiteboarding with a peer.
Be comprehensive without waiting for prompts — show initiative and completeness in your design thought process.
Be ready to talk in-depth about your own experience — especially the why behind your decisions, not just the what.
Final Thoughts
Overall, I found Microsoft’s interview process structured, fair, and well-managed. The tone across all rounds was collaborative rather than adversarial. The emphasis wasn’t just on getting the right solution but also on writing clean, maintainable code and communicating your approach clearly.
If you’re targeting Microsoft SDE 2:
Prior experience with Amazon or similarly rigorous processes will help.
Practice writing real code with test cases under time pressure.
Brush up on DSA and System Design.
Have strong ownership of your past project experience — you'll be asked to defend and discuss it in depth.
Lastly, stay calm and confident — the interviewers at Microsoft want you to succeed and are there to evaluate you holistically.