Amazon | SDE1 | Seattle | Dec 2019 [Offer]
Anonymous User
2075

Status: Employed, 1.5 YOE
Position: SDE1 at Amazon AWS
Location: Seattle, WA
Date: Dec 5, 2019

Interview process:

Technical Phone screen: An hour long phone interview based on your resume projects and current work experience. One coding question for the number of islands with a variation of 8 nieghbors instead of 4
https://leetcode.com/problems/number-of-islands/

Onsite interview (5 rounds):

a. First unique character in a stream of characters : start with brute force, work your way to the most optimized solution. There were some variations and follow up questions. Instead of a string of fixed length, it was a stream on characters. Follow up questions like how to decide end of stream and how to handle billions of characters were asked.
https://leetcode.com/problems/first-unique-character-in-a-string/

b. A team specific question of finding objects in Amazon warehouse using Amazon services.

c. Lunch informal talk with a currently working employee.

d. A variation of the longest common prefix
Instead of letters in a string, they were arrows. eg. ["->,->,<-" ; "->,->,->", "<-,<-"]
Also, the prefix wasn't supposed to be in every combination. The question was more like longest common prefix in maximum number of combinations/strings.

e. Entirely behavioral round heavily based on the Amazon LP.

f. Half coding half behvioral with the hiring manager.
Coding question was to find common integers in 2 sorted arrays. For reference : https://stackoverflow.com/questions/4529819/finding-common-elements-in-two-arrays-of-different-size

All onsite interviews started off with 2 questions related to the Amazon LP

I received a call from them saying the position had filled up and they had a different team instead. So after the onsite, the new team wanted to schedule one phone interview.

This phone interview was with a Senior Software Engineer. The question was again specific to the EC2 instances team to find OS popularity. The coding question was that given a csv file of records containing details of EC2 instances; with one column displaying the OS on the instance, determine the most popular OS. Once that was coded; there were a lot of follow up questions:

  • How to test the code
  • How to handle billions of records (Data sharding/Map Reduce)
  • Once the code is deployed on multiple servers, how to maintain the code
  • What ways are there to maintain the code and to track if the code fails
  • If a certain server has some failure, how to determine the cause, how to fix it without letting it affect other servers (1000s of servers ofc)

This interview had half an hour of coding. The rest of the time was specific to the work the team did and questions on how I would handle the scenarios the team was facing on the day-to-day basis. They didn't expect me to answer all questions and understand the scale, but basic understanding of the system, scale and problem solving. The interviewer was looking for multiple solutions as opposed to just one.

All onsite and phone interviews asked about the time and space complexities.

I received the offer 2 business days after the final phone interview.

Comments (3)