Got the offerSDE1 at Amazon
- Difficulty
- Process took
- 4-5 Weeks
- Rounds
- 4
- Format
- Remote
- Applied via
- Company Website
How it went
- Amazon places a heavy emphasis on Data Structures and Algorithms. Practice problems of varying difficulty on platforms like LeetCode, TUF, HackerRank or CodeForces. Focus on problems involving arrays, linked lists, trees, graphs, and dynamic programming.
- Explain your thought process clearly and constantly. Don’t just jump into coding; discuss how you plan to solve the problem before writing code. This helps the interviewer gauge your understanding and reasoning.
What they would tell you
- Amazon places a heavy emphasis on Data Structures and Algorithms. Practice problems of varying difficulty on platforms like LeetCode, TUF, HackerRank or CodeForces. Focus on problems involving arrays, linked lists, trees, graphs, and dynamic programming.
- Explain your thought process clearly and constantly. Don’t just jump into coding; discuss how you plan to solve the problem before writing code. This helps the interviewer gauge your understanding and reasoning.
How to prepare
- The coding rounds are heavily focused on problem-solving, so practice DSA problem.Prepare for both medium and hard level problems and company wise also.
- While Amazon doesn't ask the deepest system design questions for SDE-1, you still need to know the basics. Understand how to design simple systems, and focus on scalability and trade-offs.
- Go through examples based on Amazon’s leadership principles. Have real-life scenarios ready where you demonstrate problem-solving, collaboration, and leadership.
Round by round
- 1
Online Assessment60 min
Two coding problems along with a Work Style Assessment,I solved one and a half of the questions, and about two weeks later, I received a Hiring Interest Form. DSA-related questions asked were: Merge Intervals
-
Given a collection of intervals, the task was to merge any overlapping intervals and return a new list of non-overlapping intervals.
-
The solution required sorting and iterating through the intervals efficiently. Maximum Subarray Sum
-
The problem asked to find the contiguous subarray (within a one-dimensional numeric array) that has the largest sum.
-
This was a classic dynamic programming problem that could be solved using Kadane’s algorithm.
-
- 2
DSA60 min
After completing the Online Assessment (OA). The round consisted of two coding problems and some Leadership Principles questions. Question 1 I was given an encoded string where each letter corresponds to a number, and in some cases, the frequency of the character was mentioned in parentheses. For example, the string "1226#24#(2)" translates to "abzxx". The encoding works like this: 'a' is 1, 'b' is 2, and so on. Characters like 'j' are encoded as 10#, 'k' as 11#, etc. If a character appears more than once, its frequency is appended next to it. The task was to calculate the frequency of each character in the string. Output: [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 1] Question 2 The second problem involved finding the kth largest number from a sublist that starts at index k and goes till the last element of the list. For instance, if you’re given the list [4, 2, 1, 3] and k = 2, the expected output would be [2, 2, 3].
- 3
DSA60 min
Consisted of two coding problems, along with two Leadership Principles discussions. Question 1 I was given an n x n grid where some cells had traps (marked as -1) and the others were free (marked as 0). The task was to find how many distinct paths there are from the top-left (0,0) to the bottom-right (n-1, n-1). You can only move right or down, and you can’t step on the trap cells. The follow-up was a bit more interesting. Now, each cell either contains a trap (-1) or a reward (a non-negative integer). The goal was to find the maximum reward I could collect along a valid path, again moving only right or down, and avoiding traps. If there’s no valid path, the answer should be 0. Question 2 In this question, I was given a number n. The task was to reduce n to 0 by performing the minimum number of operations, where in each operation, you subtract one of the digits of n from itself. For example, with n = 27, the minimum number of operations needed was 5.
- 4
Bar Raiser60 min
The final round began with a quick introduction. The interviewer introduced himself, and then I shared a brief overview of my background and current role. He asked a few questions related to my experience and the work I’m doing right now. Next, we moved on to the coding problem. The challenge was to construct a Maximum Sum Linked List from two sorted linked lists that have some common nodes. It’s a fairly common problem, and you can easily find it online. I was able to come up with a working solution and explained my approach clearly. However, I missed a few edge cases at first, which the interviewer pointed out. With his hints, I quickly made the necessary changes and handled all the cases correctly.
What came up
A candidate-reported account, lightly edited. Interview processes change by team and date.