Microsoft | Senior Software Engineer (SSE) | L63 | India | Dec 2025 | Selected

Hi everyone — sharing my Microsoft interview experience as a small give-back to the LeetCode community. Really grateful for all the help I’ve received here.

Round 1: Online Assessment (OA) | HackerRank | 135 mins

I received a HackerRank link on my registered email. There were 2 questions, and I was able to solve both within the time limit. I don’t remember the exact problems, but they were DP- and graph-based.

Round 2: DSA & Problem Solving | 1 hour

This round mainly tested coding + problem-solving depth.

Question: Binary Searchable Numbers in an Unsorted Array
https://leetcode.com/problems/binary-searchable-numbers-in-an-unsorted-array/description/

Follow-up: What if duplicates are allowed? Does your logic still work?

The interviewer asked me to explain brute force → better → optimal approaches, and we discussed multiple edge cases / variations.

We also had a short discussion about my current project and day-to-day responsibilities.

Round 3: System Design + LLD | 1.5 hours

System Design: Deep dive into my resume projects (scaling, DB choices, Kafka, architecture). I explained my current system end-to-end and answered several follow-up questions.

Coding (LLD style):
Each node in a binary tree represents a skill with a score. We need to select any root-to-leaf path with the maximum total score.

This is essentially: Maximum Root-to-Leaf Path Sum in a Binary Tree.

I implemented the optimal solution and discussed test cases.

Round 4: HLD + DSA | 2 hours

Coding: Rotting Oranges
https://leetcode.com/problems/rotting-oranges/description/

Project Deep Dive: We drew the architecture of my current work. The manager was satisfied with my design trade-offs and reasoning.

HLD Design: Job Scheduler / Orchestrator
Design a service to manage n job types. For every incoming job request, generate a unique jobRunId. For some job types, ensure no two runs of the same job execute simultaneously.

We discussed:

  • parallel job execution scenarios

  • avoiding single points of failure

  • distributed fault tolerance

  • Redis-based locking / leader election considerations

  • observability, tracing, and auditability

Round 5: Engineering Group Director | 1.5 hours

This round was scheduled by HR ~3 days after earlier rounds. The director shared a brief overview of the team, culture, and projects.

Behavioral questions:

  1. What is your motivation for changing jobs?
  2. Why not move within your current organization?
  3. What do you expect from Microsoft?
  4. Tell me one instance where you failed to do what you were supposed to do — and how you handled it.

Code Review:
Reviewed a Java/SQL connection related snippet. I had to point out issues and add comments (resource handling, error cases, correctness, etc.).

Coding:
Implement a Java PriorityQueue (min-heap) without using any library.

Final Verdict

All rounds went positive, and I received the congratulations email the same day.

Comments (14)