Amazon SDE 2 (Rejected)

amazon logo
amazon
sde 2Rejected
July 10, 20209 reads

Summary

I recently interviewed for an SDE 2 role at Amazon and, despite a strong effort including extensive preparation, I was ultimately rejected. The process involved an OA round followed by four challenging final rounds focusing on data structures & algorithms, object-oriented design, system design, and behavioral questions.

Full Experience

I recently completed my second interview attempt for the SDE 2 position at Amazon. I applied online with a referral, and I suspect changing my email was key to getting noticed, as I had faced initial denials with my old one. It could be a coincidence, but I don't think so.

The interview process kicked off with an Online Assessment, which included familiar problems like 'Number of Islands' and 'Redundant Connections.' I found these relatively straightforward as I had practiced them before.

The final rounds were comprehensive, each starting with 2-3 behavioral questions assessing Amazon's leadership principles. These questions are generally well-documented online, and a quick search can provide examples.

My first technical round involved a coding challenge: given a binary tree, find a subtree that sums up to a specific target. I had the right approach but couldn't quite finish within the time limit. I think this was a significant factor in my eventual rejection.

The second round was an Object-Oriented Design (OOD) question. It was a bit vague, and I had some difficulty understanding the precise requirements due to their English, but the core task was to design a warehouse class with constraints, such that it could only store certain products. I built a system with Product, Rules, and Warehouse classes, incorporating polymorphism and enums. The interviewers, however, felt my solution was too complex and also noted a missed requirement: providing a reason when a product couldn't be stored, which I believe I could have easily integrated into my existing design.

My third round was with the hiring manager and focused on system design. I was quite nervous given my pure math background, and I don't consider my system design knowledge super strong, but I felt I completely crushed it. I had solid answers for every additional question and follow-up. The problem was to design a service that would tell a user whether they won or lost a game, with the specific constraint that the user request involved no reads or writes within the service itself.

The fourth and final round was another coding challenge. I was given a string like 'This sweater cost $40 dollars.' and asked to apply a 20% discount to the price and return the updated string, e.g., 'This sweater cost $32 dollars.' I felt very confident with my solution and successfully handled all follow-up questions.

Overall, I dedicated about three months, studying 4-8 hours daily, to prepare for this interview. Despite my significant effort and previous attempts at other tech giants, breaking into the industry remains a difficult path. While I felt I did well in at least two of the four final rounds, I received a rejection call from my recruiter. They mentioned I was strongly considered and close to reaching the bar, suggesting I re-interview in 3-6 months. I'm not surprised, as I believe you need to nail at least 3 out of 4 rounds to secure an offer. It was a good learning experience, and I'm ready to try again.

Interview Questions (6)

Q1
Number of Islands
Data Structures & AlgorithmsMedium

Given a 2D binary grid, which represents a map of '1's (land) and '0's (water), count the number of islands. An island is surrounded by water and is formed by connecting adjacent lands horizontally or vertically.

Q2
Redundant Connections
Data Structures & AlgorithmsMedium

Given a graph (for example, a set of edges that form a tree with one additional edge), find the redundant connection—the edge that can be removed so that the resulting graph is a tree.

Q3
Subtree with Target Sum
Data Structures & AlgorithmsMedium

Given a binary tree and a target sum, determine if there exists a subtree whose nodes sum up to the target. I had the right idea with what my approach was but I could not finish by the time the interview was over.

Q4
Warehouse Management System (OOD)
System DesignMedium

Design an Object-Oriented system for a warehouse that needs to store various products. The core constraint is that each specific warehouse can only store certain types of products. The design should facilitate adding products to a warehouse, checking if a product can be stored, and potentially returning a reason if a product cannot be stored. I had a hard time understanding their English but essentially it was this.

Q5
Game Win/Loss Prediction Service (System Design)
System DesignHard

Design a service that processes a user's request and returns a boolean indicating whether the user won or lost a game. A critical constraint was that the service itself would handle 'no reads or writes' to the request, implying a stateless prediction or reliance on external data sources for user game state.

Q6
Apply Discount to Price in String
Data Structures & AlgorithmsEasy

Given an input string, for example, 'This sweater cost $40 dollars.', identify any monetary value, apply a specified discount (e.g., 20%), and then return the modified string with the updated price, such as 'This sweater cost $32 dollars.'. There were also additional oral follow-up questions.

Preparation Tips

I prepared extensively for this interview, dedicating approximately three months to studying, averaging 4-8 hours per day. My preparation focused on a wide range of topics to strengthen my skills in data structures, algorithms, object-oriented design, and system design, especially given my background transition into tech. I also made sure to practice behavioral questions related to Amazon's leadership principles.

Discussion (0)

Share your thoughts and ask questions

Join the Discussion

Sign in with Google to share your thoughts and ask questions

No comments yet

Be the first to share your thoughts and start the discussion!