← Interview experiences
Got the offer

SDE 2 (L5) at Amazon

Difficulty
Process took
2-3 Weeks
Rounds
5
Format
Remote
Applied via
Company Website

How it went

  • In conclusion, the Amazon SDE2 interview process was demanding but incredibly rewarding. It tested my technical knowledge, problem-solving skills, and ability to think critically.
  • Preparing for each round, including system design and bar raiser questions, helped me refine my approach and boosted my confidence.

What they would tell you

  • In conclusion, the Amazon SDE2 interview process was demanding but incredibly rewarding. It tested my technical knowledge, problem-solving skills, and ability to think critically.
  • Preparing for each round, including system design and bar raiser questions, helped me refine my approach and boosted my confidence.

How to prepare

  • System design is a big deal at Amazon. When they ask you to design something like a scalable platform, think about fault tolerance, data consistency, and how to handle growth. Brush up on cloud tech, load balancing, and distributed systems. Also, try designing systems you’ve worked on to get a feel for it.
  • Amazon’s interviews heavily focus on DSA. I’ve been following Striver SDE Sheet, which has helped me a lot in preparing arrays, strings, linked lists, trees, graphs, and dynamic programming.

Round by round

  1. 1

    Online Assessment90 min

    The OA Round was the first hurdle in this journey. It consisted of two coding problems. P1: Evaluate Expressions

    • It was a good test of stack-based algorithms, tested my understanding of expression parsing and evaluating mathematical expressions P2: Falling Dominoes

    • This problem involved simulating falling dominoes and required me to determine the final state of the dominoes after all forces were applied.

  2. 2

    Low-Level Design (LLD)60 min

    I was asked to design a multi-level cache system with the goal of reducing database load by using multiple levels of caching. The design required the implementation of LRU and LFU (Least Frequently Used) caches. We also touched on the basic design patterns that could be applied to the system, such as singleton pattern and observer pattern. I explained how I would implement the cache system, discussed cache eviction policies, and went through various edge cases.

  3. 3

    DSA60 min

    P1: Evaluate Division

    • I had to design an algorithm to evaluate division expressions in a graph, essentially solving a graph traversal problem using DFS. P2: Gas Station

    • This classic problem required me to determine if a circular route was possible given an array of gas stations. It was a combination of greedy algorithms and array manipulation.

  4. 4

    High-Level Design (HLD)60 min

    Design Netflix I was tasked with designing a Netflix-like system that would handle streaming of videos, user accounts, recommendations, and scalability. We discussed cloud storage, content delivery networks (CDNs), and scaling services horizontally. The interviewer also asked me to handle high traffic loads, fault tolerance, and data replication.

  5. 5

    Bar Raiser Round60 min

    P1: LFU Cache

    • I was asked to design an LFU cache where both get and put operations needed to be performed in constant time. P2: Reconstruct Itinerary

    • This problem required me to find a way to reconstruct an itinerary from given flights using the depth-first search (DFS) algorithm.

    After completing all rounds, I received the final offer for the SDE2 position. While waiting for the offer letter

What came up

MediumRemote3 4 years

A candidate-reported account, lightly edited. Interview processes change by team and date.

Sources