avatarRohit Verma

Summary

The author shares their successful interview experience for an SDE-II position at Amazon, detailing the preparation process, interview rounds, and eventual job offer.

Abstract

The author, a former startup employee, reached out to Amazon recruiters on LinkedIn after deciding to seek new opportunities in 2017. With a two-week preparation window, they focused on Data Structures and Algorithms (DSA), Amazon Leadership Principles, and system design interview questions. The interview process included a screening round with coding questions, multiple technical rounds covering coding, DSA, system design, and a bar raiser round, culminating in a conversation with the hiring manager. The author highlighted the importance of understanding Amazon's Leadership Principles, the need for efficient problem-solving, and the ability to articulate past projects and experiences. Despite facing challenges with in-place algorithms and time constraints, the author received positive feedback, leading to a job offer which they accepted. The author emphasized the swift pace of the interview process and the support from the recruiter.

Opinions

  • The author values face-to-face interviews, reminiscing about the enjoyable interactions and lunch provided during in-house interviews at Amazon, which have since been replaced by virtual interviews due to COVID-19.
  • They acknowledge the importance of familiarizing oneself with Amazon's Leadership Principles as a critical component of the interview preparation.
  • The author suggests that having a mentor or someone to discuss system design questions with can be beneficial, even if one is not aware of all the resources available.
  • They express a preference for additional space in coding problems when a constant space solution is not immediately apparent, as seen in the "Rotate image" question.
  • The author appreciates the open-ended nature of the system design round, viewing it as an opportunity to showcase technical skills and knowledge in distributed systems.
  • They note that Amazon interviewers may offer extra time if the candidate is on the right track, indicating a level of flexibility in the interview process.
  • The author reflects positively on the hiring manager round, describing it as a casual conversation that allowed them to discuss their interests and past experiences.
  • They recommend aiming to solve two problems within the one-hour timeframe for Amazon interviews and suggest that candidates should be prepared for situational questions related to the leadership principles throughout the interview process.
  • The author is grateful for the support received from the Amazon recruiter and praises the efficiency of the entire interview process.

My interview experience at Amazon [SDE-II Offer]

From connecting with a recruiter to receiving an offer from Amazon.

Back in 2017, I was working at a startup, and things were not going well. We were unsure if the company could secure the next round of funding. Due to numerous financial obligations, I decided to move on.

I contacted a recruiter at Amazon who had been part of my previous Amazon interview process in 2016 (when I received an offer for an L3 role). I got to know that he left his job at Amazon. So, I reached out to a few random technical recruiters of Amazon I found on LinkedIn. Fortunately, one of them responded. When he inquired about my availability for an interview, I requested at least 2 weeks to prepare, which he agreed to.

Back, Amazon was actively recruiting, conducting hiring events on weekends. If you received an invitation for an in-house interview, you had to go to their office and complete all the interview rounds in a single day. They used to provide lunch to all the candidates. Those face-to-face interactions were enjoyable, and I find myself reminiscing about them, especially since they were replaced by virtual online interviews post-COVID. I miss those in-house interviews.

My preparation

  • In 2017, with just two weeks before my interview, I reconnected with Data Structures and Algorithms (DSA). I kicked off my prep by tackling recently asked Amazon interview questions.
  • Recognizing that each round of an Amazon interview delves into 1 or 2 Amazon Leadership Principles, I made sure to integrate them into my preparation.
  • Admittedly, I wasn’t aware of system design resources back then. I caught up by delving into Amazon’s system design interview questions from GFG and Leetcode, discussing them with mentors and friends.
  • I’ve also compiled notes to articulate my projects and highlight compelling situations from my career. This preparation has equipped me for situational-based questions related to Amazon Leadership Principles.
  • Gave few mock interviews.

My interviews

Screening round

The recruiter provided a HackerEarth link containing three coding questions to be solved within 1.5 hours. If you’re acquainted with platforms like HackerEarth and HackerRank, you’ll be familiar with the types of problems typically presented in screening rounds. It’s crucial to solve the problems within the specified time limit and ensure that all test cases pass. I was able to solve all the problems in time.

After 2 days recruiter sent email inviting me for an onsite interview to Bagmane office Bengaluru.

Round 1 Coding and Problem solving (1 hour)

  • Question 1: Longest Valid Parentheses I contemplated employing a stack and was familiar with the method of validating parentheses expressions (pushing an opening bracket and popping on encountering a closing bracket, ensuring an empty stack signifies a valid expression). Initially, I proposed a brute-force approach, examining every possible substring (N² substrings) for validity, resulting in an overall complexity of O(N³). Upon the interviewer’s request for a more efficient solution and the provision of a few hints, I successfully devised an O(N) solution using a stack. The concept closely resembled the one employed to verify whether a string constitutes a valid parentheses expression or not. Interviewer asked he we can solve this problem without using additional space. I provided few ideas but could not provide a solution using constant space.
  • Question 2: Rotate image This problem I was able to using using additional space of same size of matrix. Interviewer asked if we can solve this problem inplace. I given enough thought but unable to device constant space algorithm. Due to time constraint interviewer asked me to implement the solution I provided.

Round 2 Coding and DSA (1 hour)

  • Question 1: Construct Binary Tree from Preorder and Inorder Traversal It started with a straightforward question: could we recover a binary tree if we have the in-order traversal data? Subsequently, we explored the possibility of reconstructing a binary tree with either pre-order or post-order data. I emphasized that to recreate a general binary tree, we need in-order traversal along with either post-order or pre-order traversal. Although I had a foundational knowledge of this problem from my college studies, I successfully implemented the solution during the interview.
  • Question 2: Partition List This was an interesting question on LinkedList. After working through multiple examples. I was able to provide a working solution to this problem. I quickly converted my solution into a working code after verifying my solution with interviewer.

Round 3 System design (1 hour)

Question: Design Uber The interview involved an in-depth discussion of a scenario where cab demand suddenly increases from a particular location. We also covered Low level design by talking about API architecture and database schema for an Uber-like platform. I had a productive conversation about potential solutions for designing a ridesharing service, including aspects such as load balancing, scalability, and availability. Overall, the open-ended nature of the discussion enabled me to showcase my technical skills and knowledge in building distributed, high-traffic systems.

Round 4 Bar raiser Coding and Low level design.

  • Question 1: Minimum window substring I started with a basic solution, thinking the problem was easy. But as the interviewer gave more examples, I realized it’s not that simple. I figured out we need to use a sliding window approach to solve it, but my first attempts missed some cases. It took me a bit, but I finally found a solution that works for everything. Then the interviewer asked me to write the code. After this only 20 minutes left :)
  • Question 2: LRU Cache I shared my approach to implementing the LRU cache, aiming for modularity by using Interfaces and Generics to make it adaptable for any Key and Value types. The interviewer was helpful and granted an extra 10 minutes. I managed to write the code, although there were a few issues that I fixed after the interviewer pointed them out.

Round 5 Hiring manager

This round felt more like a casual conversation than a formal interview. The interviewer inquired about my interests, past experiences, and notable projects I’ve been involved in. Following that, there were about three situational questions aimed at addressing Amazon leadership principles.

The questions delved into scenarios such as conflicts with a manager and how I prioritize tasks between operational excellence and business requirements.

Offer

In just few days, the recruiter called to extend congratulations on my success in the Amazon interview. I received favorable ratings, with 2 strong hires and 3 hires. Considering competing offers from a startup and PhonePe, I shared the details with the recruiter. Based on this information, the recruiter presented an initial offer that appealed to me, leading to my acceptance of the offer. Consequently, I joined Amazon as an SDE-2.

The entire process, from the screening round to the final offer, was remarkably swift, completed in just two weeks. The Amazon recruiter demonstrated great support and maintained an impressive pace throughout the interview process.

Key takeaways

  • Amazon interviews: Aim to solve 2 problems within the 1-hour timeframe.
  • Leadership principles: Interviewers keenly observe and assess your alignment with Amazon’s leadership principles during both technical problem-solving and general conversation.
  • Flexibility in timing: Amazon interviewers may offer additional time if you’re on the right track, but this can vary between different interviewers.

Resources

Thank you for taking the time to read. Feel free to connect with me on LinkedIn if you require any assistance! I’m more than happy to help with your interview preparation or provide guidance for your career.

Follow me on LinkedIn and Medium for more tech content and insights.

Similar interesting read Read about my interview experience at Google Read about my interview experience at Facebook

Amazon Interview
Google Interview
Coding
Coding Interviews
Faang
Recommended from ReadMedium