Timeline
- Applied: July 2026
- All 3 rounds: Within 1 week
- Result: Rejected. Recruiter said Rounds 2 and 3 feedback was negative.
Background
- 3 YOE, already made 1 switch previously
- Looking for second switch
- Prepared mostly on DSA and system design
Round 1 — DSA + LPs (60 min)
Questions:
-
Find distance between two nodes in a binary tree — given root, source, target. No parent pointers. Used LCA approach: find LCA, then calculate distance from LCA to both nodes. Solved completely.
-
Design a stack with O(1) push, pop, getMiddle, getTop — proposed using a doubly linked list with a middle pointer. Implemented the core logic (push/pop with middle pointer updates). Didn't complete full implementation but explained the approach clearly.
LPs (Leadership Principles):
- Customer obsession example
- Ownership example
Round went well. Got positive feedback here.
Round 2 — Coding + OOP (60 min)
LPs first (10 min):
- Dive deep example
- Bias for action
Coding: Basic Calculator
- Started with the classic stack-based approach for
+,-, and parentheses - Then asked to extend it in an OOP manner to support more operators
What went wrong: Interviewer said I was "too close to the original solution." I think this means:
- My implementation felt memorized rather than derived
- I didn't explain my thought process enough while coding
- The OOP extension might not have been clean enough — I should have proposed a proper design (interfaces, strategy pattern) before jumping into code
Lesson: Even if you know the solution, walk through your reasoning. Show you're deriving it, not recalling it.
Round 3 — System Design + Behavioral (60 min)
Structure:
- 5-7 min: told about myself
- 10 min: probed hard on why switching again (already had 1 switch)
- 20 min: "best thing you worked on at your previous company" — deep dive into architecture, followed by "why did you use X over Y" style questions
- 15 min: one design question — "how would you add this new feature to the system you described?"
- I proposed 2 solutions with pros/cons (3+ each)
- 5 min: my questions to interviewer
What went wrong (my guess):
- The "why switch again" question — I might not have given a convincing enough answer. At 3 YOE with 2 switches, they're looking for stability signals.
- The system design feature extension — I gave 2 solutions but maybe the interviewer wanted me to commit to one and go deeper rather than staying surface-level on both.
- Possibly NDA concerns made me too vague about my previous work.
Why I Got Rejected
Recruiter said feedback from Rounds 2 and 3 was negative. No specifics despite explicitly asking.
My analysis:
- Round 2: "too close to original solution" = they suspected I'd seen the problem before and wanted to see problem-solving, not recall
- Round 3: likely a combination of unconvincing switch reason + not going deep enough on the design extension
- Amazon at SDE-2 with 3 YOE is a tough bar — they want someone who clearly demonstrates ownership and deep thinking, not just correct answers
Tips for Amazon SDE-2
- LPs are 50% of the evaluation — prepare 8-10 stories mapped to specific LPs. They ask LPs in EVERY round.
- Don't solve too fast — if you know the problem, slow down. Explain trade-offs, consider alternatives first. They want to see thought process.
- OOP extensions are common — practice taking a working solution and making it extensible. Know your SOLID principles.
- Have a solid "why switch" story — especially if you've switched before. They need to believe you'll stay.
- System design: commit to one approach — don't hedge with "here are 2 options." Pick one, justify it deeply, acknowledge trade-offs.
- Ask for specific feedback — they probably won't give it, but ask anyway.