Microsoft SDE Intern Interview Experience
💼 LTIMindtree Interview Experience (On-Campus) | Fresher | 2026
Salesforce SMTS | Interview Experience | Rejected
JPMC | SDE2 (Associate) - Java Backend - Interview Experience + Compensation
Microsoft - SDE2 - Coding Round
Passed Amazon SDE New Grad
Summary
I successfully secured an L4 New Grad SDE offer at Amazon after diligently preparing through algorithm fundamentals, LeetCode problem-solving, and multiple interview rounds, including a challenging system design segment.
Full Experience
Got the L4 New Grad SDE Offer at Amazon – Here's How I Prepared
I recently got an offer for a new grad SDE (L4) position at Amazon, and I wanted to share my journey — from knowing nothing about DSA to cracking the interviews. Hopefully, this helps someone who's starting from scratch too.
Phase 3: Online Assessment + Work Simulation (Mid-May)
- Got an email saying I had 5 days to complete the OA.
- Problem 1: Count the number of palindromes in a string (or something similar). My solution didn’t pass all test cases — not because it was wrong, but because it was too slow.
- Problem 2: Required a greedy + heap approach. I passed all the test cases.
Work Simulation:
- Was supposed to be open for 5 days. After one day, I got another email saying the next day was the last.
- Since it was Saturday and support wasn’t available, I completed it immediately.
Phase 4: First Technical Interview (30 Minutes)
Questions:
- Anagram Checker
- Determine if two strings are anagrams.
- The interviewer asked me not to use Python’s built-in functions.
- Still a fairly easy problem.
- Stream of Words
- For each incoming word, return the last seen anagram (if any), or the word itself.
- I used the same logic from the previous problem and a hash map with sorted keys.
I passed and was invited to the final round: three back-to-back 1-hour interviews.
Phase 5: Final Interviews (3 x 1hr on the Same Day)
Behavioral Preparation (Leadership Principles)
- Wrote five STAR-format stories that covered most of Amazon’s Leadership Principles.
- Practiced behavioral answers using questions generated by ChatGPT.
- Rehearsed with my girlfriend.
Technical Interviews
Interview 1:
- Deepest Level in a Tree
- Given a tree (not necessarily binary), return its maximum depth.
- I used a BFS approach.
- Lowest Common Ancestor
- Find the LCA of two nodes in a tree where each node has a pointer to its parent.
- I solved this by recursively propagating upward.
Interview 2:
- This round was system design/database oriented, which caught me off guard.
Question:
- Design a system to track how many people are in the office at any given time.
Follow-ups:
- Design queries to return the number of people at a specific timestamp.
- Find the maximum number of people during a time interval.
I didn’t perform well here due to no experience in OOD or DB design. The interviewer wasn’t very kind and laughed a bit when I got stuck. I stayed focused and moved on.
Interview 3:
- Validate Alexa commands based on rules such as:
- The first word must be “Alexa”
- No repeated words back-to-back
- Other constraints
Initial Approach:
- Hardcoded all checks using logical conditions.
Refactored Approach:
- Created an abstract
Ruleclass - Defined each rule as a subclass
- Stored rules in a set and validated them using a loop (more scalable and cleaner)
Final Thoughts
- You don’t need to solve all 150 NeetCode problems. Understanding patterns and building intuition is far more important.
- Use AI to learn, not to cheat. Your understanding matters more than the number of problems you “complete.”
- Some interviewers emphasize how your algorithm works, not just correctness. For example, in the BFS problem, I was asked:
- Why BFS uses a queue
- The advantages and disadvantages of BFS and DFS
- When I would use each approach
Interview Questions (6)
Determine if two strings are anagrams. The interviewer asked me not to use Python’s built-in functions.
For each incoming word, return the last seen anagram (if any), or the word itself.
Given a tree (not necessarily binary), return its maximum depth. I was asked: Why BFS uses a queue, The advantages and disadvantages of BFS and DFS, When I would use each approach.
Find the LCA of two nodes in a tree where each node has a pointer to its parent.
Design a system to track how many people are in the office at any given time. Follow-ups: Design queries to return the number of people at a specific timestamp. Find the maximum number of people during a time interval.
Validate Alexa commands based on rules such as: The first word must be “Alexa”, No repeated words back-to-back, Other constraints.
Preparation Tips
Phase 1: Learning the Fundamentals (February)
- In February, I had no clue about data structures and algorithms.
- To build a strong foundation, I completed:
- Stanford’s Algorithm Specialization (Courses 1, 2, and 3; 4 was not necessary): Coursera Link
Pros:
- Great for understanding the theory behind common algorithms.
Cons:
- Possibly overkill for interviews, but I preferred overpreparing rather than missing key concepts.
Phase 2: Problem Solving (April)
- Once I had the theory down, I started solving LeetCode problems.
- I often used AI to help understand solutions when I got stuck, but never just copy-pasted answers.
- I always made sure I understood the approach.
My path:
- Started with the LeetCode 75 Study Plan
- Then moved on to NeetCode 150, solving around 70 problems
Note: NeetCode is one of the best resources for DSA interview prep. Use it strategically.