Amazon | SDE2 | Toronto | Apr 2020 [Accepted Offer]
Anonymous User
2023

Position: Senior Developer
Location: Toronto, Canada
Date: April, 2020

It all started when a recruiter found me on LinkedIn and he immidiately sent me the OA after our chat.

My preperation was not all about Leetcode. I focussed mostly on getting the concepts right and that is what mostly helped me through my interviews. I highly recommend eductive along with Leetcode. It gave me a much better understanding on how to deal with medium to hard coding questions. At first, I started with Leetcode and it felt daunting when I got stuck with any hard questions. The eductive course helped me come over the fact that most of the problems falls under some category you just need to look at different strategies in order to solve them.

Websites I used :
Eductive :
Coding - https://www.***/courses/***-the-coding-interview
System Design - https://www.***/courses/***-the-system-design-interview/xV26VjZ7yMl

Leetcode premium - Solved ~120 questions

Questions you should ask at the end of your interview -
https://github.com/viraptor/reverse-interview/blob/master/README.md

OA
Standard two hour online assessment, two questions and self evaluation.
Similar to - https://leetcode.com/problems/number-of-islands/solution/ - Not all test cases passed.
Similar to - https://leetcode.com/problems/rotting-oranges/ - All test cases passed

The recruiter contacted me right after saying I did well and scheduled me for a onsite for 4 weeks later.

On site
Due to the current pandemic, the interview was virtual. I had a good experience interviewing with Amazon. Although, at first I thought a virtual interview might be tricky to get right especially when you want to get your point accross quickly along with showing them that you have the depth of knowledge for the job.

It was a 4hr long interview where you get break of 10 mins at the end of every round. There interviewers have three phases, LP, technical and QA at the end. All started with LP questions for 10-15mins followed by a time boxed 30min coding/system design question followed by open QA.

The first interviewer started off asking LP for 15 minutes. Followed by System Design question. The trick is to understand the requirements completely. I wasn't aware with the system I was asked to design. So I listed all that the interviewer wanted and then I proposed my solution providing the pros and cons of the concepts that I would use. The interviewer asked me a fair bit of questions on my proposed idea and we really talked at length regarding scalability, availability, reliability and consistency which lead me to explain most of the concepts on System Design like caching, load balancing, streaming, sharding, latency, etc. I was able to answer all question and was also able to discuss about the issues that might come up and alternative solutions for the same.

The second interview, I had 2 interviewers and one of them was shadowing. After the initial LP, I was asked to solve for medium array question. I wasn't aware of the question at first as I had never solved it on leetcode but my basic concepts really helped and I came up with a solution and the interviewer told me that its the right way to go and that they were happy with my approach.

The third interview, again I had 2 interviewers and one of them was shadowing. After the initial LP, I was asked to solve for a hard leetcode question related to BFS plus shortest path. The interviewer was really helpful and kept providing tips and guiding me as I was writing the solution. I was able to solve the problem and explain time and space compexity.

The last interview was the Bar raiser. After the initial LP which went on for 20mins, I was asked to solve for a medium merge interval question. The interviewer provided me hints plus a bit of his approach and I immidiatedly acted on it and was able to solve the question.

Aftermath
I received a call 2 days later and was updated that they are proceeding with an offer.

Comments (8)