Amazon | SDE2 | Feb 2026 [Selected]
Summary
I interviewed for an SDE2 role at Amazon in February 2026 and received an offer after successfully completing the online assessment and four virtual onsite rounds covering coding, system design, object‑oriented design, and a bar‑raiser session.
Full Experience
-
Status: SDE2 at Mid-sized Tech
-
Experience: 4 Years
-
Position: SDE2 (L5) at Amazon
-
Date: February 2026
Online Assessment (OA)
Two coding questions + Work Style Simulation.
-
Question 1: Variation of Merge Intervals.
-
Question 2: Graph/Dijkstra based.
-
Simulation: Focus heavily on Ownership and Bias for Action. Don't just pick the "safe" answer; pick the one that delivers for the customer.
Virtual Onsite (4 Rounds)
Round 1: Data Structures & Algorithms
- Leadership Principles (LP): Customer Obsession and Ownership.
- Technical: LeetCode 1094 (Car Pooling) variant.
- Details: After solving with a
TreeMap($O(N \log N)$), the interviewer pushed for an $O(N)$ solution using a difference array. We then discussed how to scale this if the "trips" data was stored in a distributed DB.
Round 2: System Design (HLD)
- LP: Learn and Be Curious and Dive Deep.
- Technical: Design a Real-Time Error Log Monitoring System.
- Details:
- Requirements: Handle 1M+ writes/sec, sub-second alerting.
- Architecture: Used Kafka for the ingestion layer, Flink for windowed aggregation, and Elasticsearch for querying.
- Deep Dive: We spent 15 minutes on backpressure—what happens when the consumer can't keep up with the log spikes?
Round 3: Object-Oriented Design (LLD)
- LP: Bias for Action and Disagree and Commit.
- Technical: Design a Vending Machine Leasing System.
- Details: Focused on the relationship between
VendingMachine,LeaseAgreement, andPaymentStrategy. - Key: Used the State Pattern to handle machine conditions (Idle, Out of Stock, Maintenance). The interviewer looked for clean interfaces and extensibility.
Round 4: The Bar Raiser
- LP: Insist on the Highest Standards and Deliver Results.
- Technical: Distributed Rate Limiter.
- Details:
- Started with the Token Bucket algorithm logic.
- Moved into the implementation: How to handle concurrency using Redis Lua scripts to ensure atomicity.
- The LP part was intense; they kept asking for specific data points and metrics for every "Result" I mentioned.
Result: Offer.
Interview Questions (4)
Car Pooling Variant
LeetCode 1094 (Car Pooling) variant. The candidate initially solved the problem using a TreeMap achieving O(N log N) time. The interviewer then asked for an O(N) solution using a difference array and discussed how to scale the approach if the "trips" data were stored in a distributed database.
Real-Time Error Log Monitoring System
Design a system that ingests over 1 million writes per second, provides sub‑second alerting on error spikes, and supports ad‑hoc querying.
Key requirements discussed: high‑throughput ingestion, low‑latency processing, back‑pressure handling, and durable storage.
Proposed architecture: Kafka for ingestion, Flink for windowed aggregation and alert detection, Elasticsearch for searchable storage, with monitoring of consumer lag to manage back‑pressure.
Vending Machine Leasing System
Design an object‑oriented system for leasing vending machines. Core entities include VendingMachine, LeaseAgreement, and PaymentStrategy. The system must handle machine states such as Idle, Out of Stock, and Maintenance.
Distributed Rate Limiter
Design a distributed rate limiter using the Token Bucket algorithm. The solution must handle high concurrency and ensure atomic updates across multiple instances.