AMAZON | SDE New Grad 2022 | London, UK | Indian | [Offer]

amazon logo
amazon
software development engineer 1london, ukOffer
March 26, 20222 reads

Summary

I successfully navigated three demanding interview rounds for the SDE New Grad position at Amazon in London, ultimately securing an offer. Each round combined leadership principles discussions with rigorous technical coding challenges.

Full Experience

My journey for the Software Development Engineer 1 New Grad role at Amazon in London unfolded across three consecutive interview rounds, each meticulously structured. Every round, lasting approximately 60-66 minutes, was split into two core sections: 25-30 minutes dedicated to Amazon's Leadership Principles (LPs) and a challenging 30-35 minutes focused on technical coding. A critical point I learned was that almost every question, whether LP-based or coding, came with two or three follow-up questions. Furthermore, the expectation for coding was high, aiming for 75-85% production-ready code.

Round 1 (Taken by SDE-2) - 62 Minutes

Leadership Principles Questions:

  • Tell me about a time when you took a risk, and did it pay off? What would you have done differently?
  • Have you ever failed at something? What did you learn from it?
  • Have you ever had to make a tough decision without consulting anybody? (This was tied to the 'Bias for Action' principle).

Coding Questions:

  1. I discussed and coded the LRU Cache problem, which is quite a classic.
  2. As a follow-up, the question was changed to the LFU Cache, which I discussed my approach for.

Round 2 (Taken by SDE-1) - 60 Minutes

Leadership Principles Questions:

  • Tell me about a time when you didn't meet a deadline?
  • Have you ever gone out of your way to help a peer? (This related to 'Ownership'.)
  • Tell me about a time when your teammate didn't agree with you? What did you do?

Coding Questions:

  1. We started with a warm-up, the Missing Number problem, which I discussed and coded.
  2. The second coding question was First Missing Positive, for which I also provided a discussion and a coded solution.

Round 3 (Taken by Senior SDE) - 66 Minutes

Leadership Principles Questions:

  • Tell me about a time when you needed help from somebody?
  • Tell me about a time where you had limited time and how it impacted your work?
  • Tell me about a time when your teammate didn't agree with you? What did you do?

Coding Questions:

  1. I was asked to implement Morris Traversal (a hard problem often found on GFG), which I discussed and coded.
  2. The final coding challenge involved N-ary Tree Preorder Traversal, which I solved recursively.

I successfully received an offer for the SDE 1 position. Interestingly, I later changed my location preference to Edinburgh, Scotland, U.K.

Interview Questions (14)

Q1
Taking a Risk and Learning from it
Behavioral

Describe a situation where you took a significant risk. Did it pay off as you expected? What would you do differently if faced with a similar situation again?

Q2
Learning from Failure
Behavioral

Share an experience where you failed at something. What were the circumstances, and most importantly, what valuable lessons did you learn from that failure?

Q3
Tough Independent Decisions (Bias for Action)
Behavioral

Recount a time when you had to make a difficult decision without the opportunity to consult others. What was the situation, what was your rationale, and what was the outcome? This question assesses your bias for action.

Q4
LRU Cache
Data Structures & AlgorithmsMedium

Design and implement a Least Recently Used (LRU) cache. It should support the following operations: get and put. get(key) will retrieve the value of the key if it exists, otherwise return -1. put(key, value) will update or insert the value. When the cache reaches its capacity, it should invalidate the least recently used item before inserting a new item.

Q5
LFU Cache
Data Structures & AlgorithmsHard

Design and implement a Least Frequently Used (LFU) cache. It should support the following operations: get and put. get(key) will retrieve the value of the key if it exists, otherwise return -1. put(key, value) will update or insert the value. When the cache reaches its capacity, it should invalidate the least frequently used item before inserting a new item. If there is a tie, the least recently used item among them should be removed.

Q6
Missing a Deadline
Behavioral

Describe a situation where you failed to meet a deadline. What were the reasons, how did you handle the situation, and what did you learn to prevent similar occurrences in the future?

Q7
Helping a Peer (Ownership)
Behavioral

Tell me about a time when you went above and beyond to help a colleague or peer. What was the situation, what specific actions did you take, and what was the impact? This question gauges your sense of ownership.

Q8
Handling Disagreement with Teammates
Behavioral

Describe a situation where you and a teammate had a disagreement or different approaches to a problem. How did you handle the conflict, and what was the resolution or outcome?

Q9
Missing Number
Data Structures & AlgorithmsEasy

Given an array nums containing n distinct numbers in the range [0, n], return the only number in the range that is missing from the array.

Q10
First Missing Positive
Data Structures & AlgorithmsHard

Given an unsorted integer array nums, return the smallest missing positive integer. You must implement an algorithm that runs in O(n) time and uses constant extra space.

Q11
Seeking Help
Behavioral

Recount a time when you realized you needed help from someone else to accomplish a task or solve a problem. How did you identify the need, whom did you approach, and what was the result?

Q12
Managing Under Limited Time
Behavioral

Describe a situation where you were operating under significant time constraints. How did the limited time impact your work, your decisions, and your approach? What was the outcome?

Q13
Morris Traversal
Data Structures & AlgorithmsHard

Implement Morris Traversal for a Binary Tree. This algorithm allows for in-order traversal without using recursion or an explicit stack, achieving O(1) space complexity.

Q14
N-ary Tree Preorder Traversal
Data Structures & AlgorithmsEasy

Given the root of an n-ary tree, return the preorder traversal of its nodes' values. N-ary-tree input serialization is represented in their level order traversal, each group of children is separated by the null value (See examples).

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!