Microsoft | SWE internship | March 2025
Summary
I interviewed for a Microsoft Software Engineering Intern position in March 2025 in India. Despite performing well in the technical rounds, including solving multiple coding problems, I was ultimately rejected after the final round.
Full Experience
I recently interviewed for an Off-Campus Software Engineering Intern position at Microsoft in March 2025, located in India. I'm currently in my 3rd year of B.tech in Computer Science and Engineering.
The interview process was structured into four distinct rounds:
Round 1: Resume Screening
My resume, highlighting my projects and academic performance, was reviewed, and I was subsequently shortlisted for the Online Assessment.
Round 2: Online Assessment
This round consisted of two coding problems. I successfully passed all test cases for both. The problems were of medium to hard difficulty, requiring a solid grasp of Data Structures and Algorithms fundamentals and careful handling of edge cases.
Round 3: Technical Interview
This round primarily focused on core Data Structures and Algorithms. I was asked to:
- Reverse a Linked List: I discussed multiple approaches, including iterative and recursive methods, explaining their time and space complexities.
- Open the Lock (Leetcode problem): I walked through a brute-force solution, then optimized it using BFS, and discussed how to modify it for various edge cases.
- Tree Traversals: We discussed both BFS and DFS, and how these traversals could be applied to parse trees for specific conditions.
- Problem Solving: I successfully coded a live solution for a hybrid backtracking + BFS problem. The interviewer emphasized clear explanations, a structured thought process, my debugging strategy, and adaptability to hints throughout this round.
Round 4: Behavioral + Technical Interview
This was a 30-45 minute round.
- Behavioral: I was asked about my project work, which I thoroughly explained using the STAR method.
- Technical: I was asked to consider the Gas Station Problem. I first explained my brute-force approach clearly, then coded it live, passing all test cases. We also discussed its time complexity and potential optimizations.
Final Result
Unfortunately, despite my efforts, I was rejected after the final round.
Interview Questions (4)
Discussed multiple approaches (iterative, recursive) with time and space complexity for reversing a singly linked list.
Discussed brute force, BFS, and optimized approaches, including modifications for edge cases for the 'Open the Lock' LeetCode problem.
Discussion on Breadth-First Search (BFS) and Depth-First Search (DFS) algorithms for tree data structures, and how to apply them to parse trees for specific conditions.
Asked for the brute-force approach for the Gas Station problem. Coded it live and discussed time complexity and potential optimizations.
Preparation Tips
I prepared by focusing on core Data Structures and Algorithms, practicing common LeetCode problems, and ensuring I could clearly explain my thought process and debugging strategies. I also reviewed how to articulate my project work effectively using the STAR method for behavioral questions.