Interview Experience - Microsoft SDE 2(L61) | Hyderabad

microsoft logo
microsoft
· Software Engineer II (L61)· Hyderabad· 3y exp
February 1, 2026 · 23 reads

Summary

I interviewed for a Software Engineer II (L61) position at Microsoft in Hyderabad and was selected. The process involved an online assessment, three technical rounds covering DSA, LLD, HLD, and a final AA round covering behavioral and another DSA problem.

Full Experience

Interview Details :

🏢 Company: Microsoft
👨‍💻 Role: Software Engineer II (L61)
📍 Location: Hyderabad
🗓️ Timeline: October–November 2025
💻 Mode: Online
🧪 Process: Online Assessment → 3 Technical Rounds (~1 hour each) → AA Round (~30 mins)
👨‍💻 Experience: 3 years

Online Assessment

2 Questions were asked one was Medium (Binary Search) and another was Medium-Hard (DP and Graph)

Cleared and got mail in 10 days for interviews.

I had all my 3 rounds on same day.

Round 1 – DSA + LLD Round (60 min)

This round focused on core problem-solving and object-oriented design.

  1. I was asked to solve a stack-based problem similar to the Min Stack on LeetCode, emphasizing optimal time complexity and clean API design.
  2. The discussion then moved into OOP concepts, where a problem was given and solved using the Factory Design Pattern, focusing on immutability, abstraction, and how these principles handle edge cases and real-world production scenarios.

Round 2 – DSA round (60 min)

This round tested algorithmic clarity and adaptability.

  1. I worked on an array manipulation problem similar to removing duplicates from a sorted array, which was later extended to retain duplicates with equal frequency while maintaining O(n) time and O(1) space.
  2. I also solved problems similar to validating parentheses and generating all valid parentheses combinations, which involved stack usage, recursion, and backtracking, along with clear explanation of trade-offs.

Round 3 – System Design(HLD + LLD) Round (75 min)

The core problem in this round was similar to designing an Distributed LRU Cache, focusing on achieving constant-time operations.

Beyond implementation, I was asked to:

  1. Design and write unit tests for the cache and explain a Test-Driven Development (TDD) approach.
  2. Walk through a High-Level Design (HLD) of the Distributed LRU Cache using diagrams and then cover Low-Level Design(LLD) as well.
  3. Discuss non-functional requirements such as scalability, performance, concurrency, and extensibility.

After one week, I received an email stating that I had cleared all three rounds and was shortlisted for the AA round.

Round 4 – AA round (30 min)

The final round began with a deep dive into my current organization’s business use cases, my roles and responsibilities, and a high-level design of a feature I had worked on.

  1. This was followed by an algorithmic problem similar to finding a duplicate number in an array, solved in O(n) time and O(1) space using cycle detection techniques.
  2. The round concluded with discussions around Microsoft team’s business problems, expectations from the role, and behavioral questions focusing on collaboration, ownership, and impact.

Overall Experience

The interview process was well-structured and evaluated:

  1. Strong DSA fundamentals within time limit
  2. System design & scalability
  3. Testing mindset (TDD)

Verdict : I was selected as a SE-II @Microsoft.

Interview Questions (7)

1.

Design Problem using Factory Design Pattern

System Design

The discussion moved into OOP concepts, where a problem was given and solved using the Factory Design Pattern, focusing on immutability, abstraction, and how these principles handle edge cases and real-world production scenarios.

2.

Remove Duplicates from Sorted Array with Extension

Data Structures & Algorithms

I worked on an array manipulation problem similar to removing duplicates from a sorted array, which was later extended to retain duplicates with equal frequency while maintaining O(n) time and O(1) space.

3.

Valid Parentheses

Data Structures & Algorithms·Easy

I solved a problem similar to validating parentheses, which involved stack usage, recursion, and backtracking, along with a clear explanation of trade-offs.

4.

Generate Parentheses

Data Structures & Algorithms·Medium

I solved a problem similar to generating all valid parentheses combinations, which involved stack usage, recursion, and backtracking, along with a clear explanation of trade-offs.

5.

Design a Distributed LRU Cache

System Design·Hard

The core problem in this round was similar to designing a Distributed LRU Cache, focusing on achieving constant-time operations. Beyond implementation, I was asked to: 1. Design and write unit tests for the cache and explain a Test-Driven Development (TDD) approach. 2. Walk through a High-Level Design (HLD) of the Distributed LRU Cache using diagrams and then cover Low-Level Design(LLD) as well. 3. Discuss non-functional requirements such as scalability, performance, concurrency, and extensibility.

6.

Find the Duplicate Number

Data Structures & Algorithms·Medium

This was followed by an algorithmic problem similar to finding a duplicate number in an array, solved in O(n) time and O(1) space using cycle detection techniques.

7.

Behavioral Questions: Collaboration, Ownership, Impact

Behavioral

The round concluded with discussions around Microsoft team’s business problems, expectations from the role, and behavioral questions focusing on collaboration, ownership, and impact.

Discussion (0)

Share your thoughts and ask questions

Join the Discussion

Sign in with Google to share your thoughts and ask questions

No comments yet

Be the first to share your thoughts and start the discussion!