Amazon SDE 2 | Interview Experience (SELECTED) | June 2025

amazon logo
amazon
SDE 2 (L5)Bangalore4 years
July 5, 20258 reads

Summary

I was recently selected for the Amazon SDE 2 (L5) role in Bangalore after a multi-round interview process including an Online Assessment, Phone Screen, and four Loop Interview rounds covering DSA, LLD, HLD, and Leadership Principles, and I want to share my detailed experience.

Full Experience

Hi everyone,

I’ve recently been selected for Amazon SDE 2 (L5) at Bangalore, and I wanted to give back to the community by sharing my experience.

About me: YOE: 4 Yrs College: Tier 1 (BTech 2021 passout, although from very lower branch) Last company: Deutsche Bank, Pune (26LPA total package)


🧪 Interview Experience

Online Assessment | 24th Feb (90 min) Questions: 2 DSA questions + amazon Behavioral questions(MCQs)

Result: I applied to different position but it got filled, So they considered my test score for different position and i got call to schedule interview after approx 2 months. PS: really had forgot about amazon till now.


📲 Phone screen (Elimination round) | May 09 (1 hr) Questions:

Q1: Given two strings str and pattern, return an array of all the start indices of pattern's anagrams in str.
Input: str = "acbadabcaa", pattern = "aabc" Output: [0,5,6] Explanation:

The substring with start index = 0 is "acba", which is an anagram of "aabc". 
The substring with start index = 5 is "abca", which is an anagram of "aabc". 
The substring with start index = 6 is "bcaa", which is an anagram of "aabc".

Q2: Given an `m x n` grid of `0` (Water) and `1` (Land), the task is to count the number of islands. 
An island is a group of adjacent `1` cells connected horizontally, vertically, or diagonally, 
and it is surrounded by water or the grid boundary. The goal is to determine how many distinct islands exist in the grid.

Input: grid[][] = 
[[1, 1, 0, 0, 0],  
 [0, 1, 0, 0, 1],  
 [1, 0, 0, 1, 1],  
 [0, 0, 0, 0, 0],  
 [1, 0, 1, 1, 0]]

Number of Islands = 4

Result: After 6 days, on May 15, I was informed moving forward to loop interview. PS: they call it phone screening, really it is dsa round.


Information on Loop Interview and LP

  • Loop interview is basically non-elimination rounds, where each round will consist of 45 min for tech questions (DSA/LLD/HLD) + 15 min for Leadership principles (2 LPs).

  • Leadership principles questions are basically HR questions related to 14 principles amazon follow. HR typically mails more info about this and how to prepare around this before loop interview. I have covered more about it below. Approach these questions with STAR method(Situation, Task, Actions, Results) and from your past work experience prepare a story about each principle. PS: They dont ask LP questions directly, it would be more of statement and you would have to figure it out whether which LP is applicable. They take LPs very seriously, one of my friend got rejected due to it.

  • Before scheduling Loop Interviews, they asked me my available dates plus number of rounds i am comfortable with in a day to which i replied 1 interview max a day.

PS: Currently amazon is hiring in drives, and they may conduct 3 rounds a day, which really is good, if you want to get it over with. I personally like to take my time and 1 round is enough to make me tired. You can always request to your HR for time, if you prefer like me.


🔢 Loop Interview Round 1 - DSA Round | 23rd May (1 hr)

Q1. There are N poles of various heights, and you have a machine whose saw blade can be set at a specific height "h" 
and it cuts all poles till that height, such that all of them have height "h" after the cut. 
(Poles with height less than "h" remain uncut). You take away the cut portions of all poles with you.

Your task is to take at least M length of poles with you in total after the cut. 
What is the maximum height 'h' where you can set your blade to achieve this.

N = 4
M = 7
arr = [20, 15, 10, 17]

2 LPs:

  1. Ownership
  2. I dont really remember

Self Verdict: Interview went well, really got lucky with BS question. And this was the only round where LP also went well. So i was confident despite initial 10 mins wasted.

Note for DSA round: Time and space complexity, they ask proper 5-10 mins and cross question a lot on how we can improve.

PS: My electricity went out and I lost first 10 mins, they asked me whether i want to reschedule because i would only get 50 mins now, but i said i am good as I already had waited long for this day. Really was scared but interviewers were nice and understood to situation.


🏗 Loop Interview Round 2 - Low-Level Design (LLD) | 28th May (1 hr)

Problem: Design Meeting and room reservation system
Approach: It went like typical LLD, I was thinking how i schedule Meetings in teams and outlook.
1. started with requirement gathering
2. Then Made rough flow
3. Identified Objects
4. coded all the classes and code.

It was not a working code. It was more like UML diagram just in codepad. 
So i made all the classes and talked about all is and has relation ships and then created all variables and methods used. 
At the end of it i explained how a good flow would go. 
He was conversing with me throughout, and at the end he asked me what design pattern more i could have used which I already wanted to talk about if i had more time.

2 LPs:

  1. Bias for Action
  2. Disagree and commit

Self verdict: LLD went well, I was pretty confident, although problem was new but i was preparing for last 4 days for LLD only full day. In LP, he cross questioned alot, but i was able to answer.


🧱 Loop Interview Round 3 - Bar Raiser | 3rd June (1 hr)

I was told it would be like coding/DSA, but it was more like LLD and coding mix. Question was very open ended and the purpose was to I feel see how would I approach a problem in real world when described by users.

Initial Problem Statement: code a way to find available space to  store incoming packages.

Initial requirement gathering took 10-15 mins to understand what really i wanted to code here. (hard part)
Then coding part and follow up questions were done (easy part)

Approach:
1. Firstly discussion went on how would we can categorize different containers based on size. 
2. I was thinking in terms of volume but as some packages might fit volume and violate height/length/breadth req. 
3. So eventually, we came with pre defined sizes of lockers like (S, M, L, Xl, XXL) and user could choose his package would fit in which category. 
4. Thinking input variable for method was the hardest part.
5. Then I quicly coded 3 methods, find Locker, add locker, update locker(put/remove package).
6. then discusion went around which data structures i have used and why. and what can i improve in time and space complexity.

2 LPs:

  1. Insist on High Standards
  2. Think Big

Self verdict: First Half of interview was very tough, The question seemed vague, But then with disussion picture got cleared. I was not very confident with this round and top of it he really grilled me on LP questions very hard.


💡 Loop Interview Round 4 - High Level Design (HLD) | 9th June (1 hr)

Problem Stat: Design a system which allows us to sync configuration from old to new device

Device could be anything, phone, alexa, home devices. 
I have listed down my req. gathering part which i did as this was not a usual question. 
But I followed the way how we approach HLD, after req. gathering, listed down APIs,
and remebered a rough flow of how we setup a new phone and that helped me. 
Discussion over APIs and database was very good. 
And he asked a question around how we can reduce our storage. 
And answer to this was we can eliminate cloud storage for configurations file totally and pull it from old device at the time of setup. 

Functional req.
Sync old to new device: 
1. should be able to choose and login to account 
2. preference on default apps
3. New device should be ready to use

NFR:
Security
Scalable 
performant (1-5 mins)

Entities:
Device (old, new)
User
Settings/configuration

2 LPs:

  1. Customer Obsession
  2. Dive Deep

Self Verdict: Design went well, he was happy with my design and optimization for storage, but in LPs he roasted me but i answered to my best.


📝 Overall Verdict: Selected. Got call at 17th June.

Note: I have given such a detailed experience to help you understand the expectations. Plus I have also given timelines to understand how it could be time taking process for few people. I have tried to include all pointers which i personally searched through other interview experiences to get clarity. I know this was a long read, but I hope this is helpful!

Interview Questions (6)

Q1
Anagram Start Indices
Data Structures & Algorithms

Given two strings str and pattern, return an array of all the start indices of pattern's anagrams in str. Input: str = "acbadabcaa", pattern = "aabc" Output: [0,5,6] Explanation:

The substring with start index = 0 is "acba", which is an anagram of "aabc". The substring with start index = 5 is "abca", which is an anagram of "aabc". The substring with start index = 6 is "bcaa", which is an anagram of "aabc".

Q2
Number of Islands (Diagonally Connected)
Data Structures & Algorithms

Given an m x n grid of 0 (Water) and 1 (Land), the task is to count the number of islands. An island is a group of adjacent 1 cells connected horizontally, vertically, or diagonally, and it is surrounded by water or the grid boundary. The goal is to determine how many distinct islands exist in the grid.

Input: grid[][] = [[1, 1, 0, 0, 0],
[0, 1, 0, 0, 1],
[1, 0, 0, 1, 1],
 [0, 0, 0, 0, 0],
 [1, 0, 1, 1, 0]]

Number of Islands = 4

Q3
Maximum Blade Height for Required Cut Length
Data Structures & Algorithms

There are N poles of various heights, and you have a machine whose saw blade can be set at a specific height "h" and it cuts all poles till that height, such that all of them have height "h" after the cut. (Poles with height less than "h" remain uncut). You take away the cut portions of all poles with you.

Your task is to take at least M length of poles with you in total after the cut. What is the maximum height 'h' where you can set your blade to achieve this.

N = 4 M = 7 arr = [20, 15, 10, 17]

Q4
Design Meeting and Room Reservation System
System Design

Problem: Design Meeting and room reservation system Approach: It went like typical LLD, I was thinking how i schedule Meetings in teams and outlook.

  1. started with requirement gathering
  2. Then Made rough flow
  3. Identified Objects
  4. coded all the classes and code.

It was not a working code. It was more like UML diagram just in codepad. So i made all the classes and talked about all is and has relation ships and then created all variables and methods used. At the end of it i explained how a good flow would go. He was conversing with me throughout, and at the end he asked me what design pattern more i could have used which I already wanted to talk about if i had more time.

Q5
Design and Code Available Package Storage System
System Design

Initial Problem Statement: code a way to find available space to store incoming packages.

Initial requirement gathering took 10-15 mins to understand what really i wanted to code here. (hard part) Then coding part and follow up questions were done (easy part)

Approach:

  1. Firstly discussion went on how would we can categorize different containers based on size.
  2. I was thinking in terms of volume but as some packages might fit volume and violate height/length/breadth req.
  3. So eventually, we came with pre defined sizes of lockers like (S, M, L, Xl, XXL) and user could choose his package would fit in which category.
  4. Thinking input variable for method was the hardest part.
  5. Then I quicly coded 3 methods, find Locker, add locker, update locker(put/remove package).
  6. then discusion went around which data structures i have used and why. and what can i improve in time and space complexity.
Q6
Design Configuration Sync System for Devices
System Design

Problem Stat: Design a system which allows us to sync configuration from old to new device

Device could be anything, phone, alexa, home devices. I have listed down my req. gathering part which i did as this was not a usual question. But I followed the way how we approach HLD, after req. gathering, listed down APIs, and remebered a rough flow of how we setup a new phone and that helped me. Discussion over APIs and database was very good. And he asked a question around how we can reduce our storage. And answer to this was we can eliminate cloud storage for configurations file totally and pull it from old device at the time of setup.

Functional req. Sync old to new device:

  1. should be able to choose and login to account
  2. preference on default apps
  3. New device should be ready to use

NFR: Security Scalable performant (1-5 mins)

Entities: Device (old, new) User Settings/configuration

Preparation Tips

I only focused on interview preps during this timeline, and literally ditched everything else. Interview experience was quite good and i enjoyed learning LLD and HLD during this time. I separately sat for preping examples for LP around whole 1-2 days and before every round i gave 2 hrs to revise.

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!