Amazon SDE 2 Interview Experience

amazon logo
amazon
· SDE 2
January 22, 2026 · 76 reads

Summary

I interviewed for an SDE 2 position at Amazon, undergoing three rounds focusing on DSA, LLD, and HLD. I successfully navigated the initial two rounds but was ultimately rejected following the system design discussion.

Full Experience

Round 1 -
DSA
Problem similar to LFU Cache (LC Hard)
(User logs in and we have to return the last user with lowest frequency of login)
LP questions
Passed

Round 2 -
LLD
Design a Registration system for students where they can enroll for courses. Discussed requirments and edge cases
Follow up - what if each course has a different timing for each day and some courses may happen on only a few days of the week, how will I calculate overlap. Suggested a bitmap approach where each bit represents a day along with a hashmap <day,Pair<startTime,endTime>>. When we check for overlap whenever there are 2 1s, we will check the startTime and endTime for those 2 courses for that day to check overlap
LP questions
Passed

Round 3 -
HLD
Design url shortener. FR, NFR, API design, DB schema, High level design

Deep dive - Asked about why did I use Redis counter for write path. Explained it well using base62 encoding but he wanted me to not use it at all. Asked me to figure out a way to avoid collisions without using redis counter. He was saying urls will be unique. I suggested sha256 encoding of long urls and then base62 but that also doesn't resolve collisions because we just take the first 48 bits to go for base62 encoding. Not sure what exactly is the solution

Asked me why I used Postgress DB. Explained it well. The write per second is not that high (100k writes per day, almost equal to 1 write/sec). The high read frequency is not an issue because I would cache hot urls on redis cache on the read path with cache aside strategy
Rejected

The HLD question was hella easy but I am not sure why was he so adamant about not using a redis counter when it is actually the most error proof method. Redis counter is thread safe as well as atomic, which is extremely helpful when we scale the write service and to avoid any collisions at all even with 1 trillion urls

Verdict - Rejected

Interview Questions (4)

1.

LFU Cache Variant: Last User with Lowest Login Frequency

Data Structures & Algorithms·Hard

Problem similar to LFU Cache (LC Hard). The task involves a system where users log in, and I have to return the last user with the lowest frequency of login.

2.

Design a Student Registration System

System Design

Design a Registration system for students where they can enroll for courses. Requirements and edge cases were discussed.

3.

Course Overlap Calculation in Registration System

System Design

Follow up question: What if each course has a different timing for each day and some courses may happen on only a few days of the week? How would I calculate overlap?

4.

Design a URL Shortener

System Design

Design a URL shortener. This included discussing Functional Requirements (FR), Non-Functional Requirements (NFR), API design, database schema, and high-level design.

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!