Amazon SDE II Interview Experience + Need Honest Feedback
Hi everyone,
I wanted to share my recent Amazon interview experience and get some honest feedback from the community on my chances moving forward.
How it started
I initially took referrals for 5–6 roles, but all of them got canceled. But surprisingly, I later received an OA link from a team I hadn’t even applied to.
So yeah… a bit unexpected, but I went ahead with it.
Online Assessment (OA)
• Q1: Variant of inversion count → I used Fenwick Tree (BIT)
• Q2: Geometry-based problem
The OA went well overall. I’m not sure if there was a simpler approach for Q1, but Fenwick Tree worked.
First Attempt – DSA Round (Elimination Round)
This round was clearly mentioned as eliminatory.
• Reverse Linked List in K groups
• Insert Delete GetRandom O(1) (no duplicates)
I solved both questions, explained approaches, did dry runs, and the interviewer seemed aligned. Leadership principles also went well.
But here comes the twist…
After 2-3 days of no updates, I reached out to the recruiter and was told:
• The position got filled
• My interview feedback was not submitted / lost
At that point, I genuinely felt a bit deserted, because the round had gone well, but it didn’t even count in the process.
Thankfully, the recruiter said she would try to match me with another team, and I agreed to go through the process again.
Second Attempt – New Team
This time, I had 2 rounds scheduled on the same day (DSA + LLD).
Round 1 – DSA
• Trim a binary tree to make it a complete binary tree + maintain a trash queue → Solved using BFS
• Number of islands
Both were solved cleanly with dry runs and edge cases. LPs went well too.
Round 2 – LLD
Design WhatsApp Read Receipts (ticks)
Initially, I approached with design patterns like:
• Observer
• State
• Prototype
But the interviewer clarified:
“Assume WhatsApp is already built, (observer pattern is already built), just design the feature.”
Then moved to HLD concepts:
• Data flow of messages
• Redis Pub/Sub vs Kafka discussion
• Message storage
• Handling offline users
Honestly:
• LLD part felt average
• HLD discussion was strong
Recruiter called me next day and told me that I was qualified for the next rounds.
Next Round – HLD (with SDM)
Design FastTag system
Since I wasn’t very familiar with it, I:
• Started with requirements clarification
• Defined APIs, entities
• Designed system step-by-step
Discussed:
• Idempotency in payments
• Redis for caching most frequent vehicle details
• Scalability
This round went well, and the interviewer seemed convinced.
Final Round (Technical – Possibly Bar Raiser)
This was the final round, and I suspected this could be the bar raiser, so I really wanted to perform strongly here.
Coding:
Longest Substring Without Repeating Characters
• Explained brute force
• Implemented sliding window (optimal)
Serialize & Deserialize Binary Tree
• Implemented using BFS approach
Where I’m concerned is that the time was very tight—I was able to complete the code, but I didn’t get the chance to do a proper dry run, validate edge cases, or even ask questions at the end.
The interviewer did mention that a DFS approach might have been faster to implement. I explained my reasoning for choosing BFS, but overall, the round felt just okay-ish, not as strong as I would have liked—especially considering this could have been the bar raiser round, which I was hoping to use to compensate for my LLD round that didn’t go as well as expected.
Given this, what do you think are my chances of getting selected?