Hi Everyone, this community has given me a lot. It's time for the payback. I am sharing my interview experience for L5 SDE II interview I recently gave at Amazon Gurgaon. I will try to be as precise as possible with the experience.
I applied directly though the company portal. There were some openings for SDE II and I applied to all of them.
Recruiter reached out to me with an opening in gurgaon and shared me the OA.
Round 0 : Online Assessment (May 1)
This was divided into 3 parts
I solved all the test cases in the DSA question and 5/6 test cases in the AI Assisted code repository questions
Behavioural answers are subjective
Recruiter reached out to me on May 5 saying I had cleared the OA round and that my 2 interviews will be scheduled and based on the performance in those 2 rounds, I will move to the next rounds accordingly
I took some time to prepare for the loops
Round 1 : DSA + Leadership principles (20 May)
Taken by SDE II
This started with the introduction and directly DSA questions were asked
I explained the brute force, all the way upto the optimized approach. Explained the complexity of the code. Since I solved these questions quickly, there were some discussions about hashmap and heap internals afterwards.
LP:
I feel like i could have done the LPs better since i wasn't very well prepared for the LPs in the first round.
Verdict from HR (Next day) - Inclined
Since my round 1 is clear, HR scheduled my HLD round as well.
Round 2 : LLD/Maintainable code + Leadership principles (25 May)
Taken by SDE II
Problem statement :
Design a notification router for an ecommerce website
I used a set of design patterns like Strategy, Singleton and factory to solve this problem.
Later on some questions were asked and extensibility was discussed
My advice to anyone giving LLD interviews is to please focus on discussing fault tolerence, resiliency strategies and scalability after you've finished a clean design. It adds maturity to your system and can be impactful during the interview.
LPs
Overall, this round was the best I had. I was prepared with LPs well by now.
Feedback from HR (Next day) - Inclined
Round 3 : HLD + Leadership principles (26 May)
Taken By Engineering Manager
Problem statement
Design Netflix
That's it, this was the only statement given. I had to figure out the set of requirements and plot a high level design on BlueSpace (Similar to excalidraw). I had to explain the pros and cons of my approach, talk about availability, scalability and fault tolerence etc. Interviewer had some questions in between which I had to answer/incorporate in my design.
There were discussions about movie search using flexi source reverse index db like OpenSearch and CDC pipeline.
LP:
This round went well and I felt that the interviewer was satisfied with my answers.
Feedback from HR (Same day) - Inclined
The HR scheduled my bar raiser after this.
Round 4 : Bar raiser
Taken by Principal Technical Program Manager
This round was more focused on the behavioural and leadership questions.
I was asked one DSA question which was
Find unique permutations of a given string - For example, s = "xxyy"
First permutation = "xxyy"
Second permutation = "xxyy" -> Swap the 0th and 1st index "x" characters
But the output should contain "xxyy" only once. I had to return the list containing all the unique permutations
I solved it with HashMap(frequency tracking) and backtracking
After that, there were 2 questions from LPs and lots of followups from my response
I had prepared solid stories for these 2 questions and also the success metrics. Interviewer went a lot through the technical aspects and how the metrics were gathered.
Overall this round felt okayish to me and I was nervous because interviewer wasn't giving any signs on my responses.
Verdict from HR (Same day) - Selected
Got the offer 2 days later
Will add detailed compensation soon.
Compensation - https://leetcode.com/discuss/post/8316935