Amazon | SDE2 | Luxembourg | April 2021 [Offer]
Anonymous User
4014

Status: Developer in Product Based Company (India)
Position: SDE2
Location: Luxembourg
Date: April 2021

Preparation strategy:
I started leetcoding 1.5 years back with premium subscription. I was able to solve most of the easy questions and very few of the medium questions. I started very aggressively, whenever I get some free time in office or home I would solve leetcode questions. If I didn't have laptop access then I would open leetcode on phone and start going through discussion section of hard/medium questions. I started getting confidence and observed improvement in my coding style/speed. I started adding comments to my code to make it more understandable from the interview perspective. There was one problem which I think most of us face is forgetting the approach to solve a problem which we were not able to solve in the first place. There is only one solution to this and that is revision. I started adding such problems to a separate list (Favorite list on LC) and then randomly someday I would pick questions from this list and solve. I started recognising the patterns of problems and how to approach them.
This went very well for 6 months and since then it's on and off (covid situation, office work load, fell sick, etc). If you look at the heat map below, I was solving lot of problems earlier but not much in the recent month. Still I have a good confidence that I can solve most of the problems (not Google level ones :D) and this was built during the journey which I started 1.5 years back. I started LC thinking I'll prepare for the interviews but in few months it developed my interest and I starting solving problem out of curiousity and liking instead of preparing for an interview. I have solved 169E/380M/78H problems till now.
image

TAKEAWAY: Always Always go through the discussion section and look at other people's solutions. That's where the learning begins. Thanks to the leetcode community for their contributions. Perseverance is the key

AMAZON INTERVIEW EXPERIENCE:

I was approached by HR through Linkedin for a role of SDE2 in the team based out of Luxembourg.

Phone Interview: Topological sort variation. Don't remember the exact question. Something like few things depend on other and so on. Straight forward question.
1LP question.

Online Assessment: 90 mins
Shopping Options
Storage Optimization

Virtual Interviews: (4 Rounds 1 hour each)

Round 1: (HM)

  • Introductions and Leadership Principles for 40 min.
  • System Design: You have a fairly famous website for books(100k books) and you want to show reviews of those books on your websites. You have to fetch the reviews from other website like Amazon which has 100M books.
    I was scared here as I had only 20 min left. Gathered functional/non functional requirments. Discussed various approaches like Push/Pull model and their pros/cons. I was able to cover high level components and their interaction but couldn't dig into details of each component. The interviewer seemed happy from the discussion.

Round 2:

  • Introductions and Leadership Principles for 25 min.
  • Data structures: The interviewer shared a image with the question on it. It took some time for me to understand the question because of the confusing drawing :D I'll try to create better one. I felt the interviewer tried to see how I deal with ambiguity. So the question goes like this.
    In a company, HR is arranging a fun activity(similar to muscial chairs) with the employees, the activity is being executed in a room. Employess enter into the room one by one while music is on and HR stops the music and whoever is at the top and front of the shape formed are removed from the same. Below is the snapshot of situation when 5(odd) employees entered and music stops, 1(front) and 3(top) would be removed.
    image
    when we have 4(even) employees and music stops, 1 and 3 would be removed. Why? 1 is at the front and 2/3 are at the top but whoever came first gets removed who is 3 in this case.
    image
    This game is on loop. Implement two methods of this game in best time complexity.
    employeeEnter(int empId);
    removeFrontAndTop(); //returns and removes two integers

Round 3: (Bar Raiser)

  • Introductions and Leadership Principles for 25 min.
  • Problem solving: Implement two functions of a Valet parking in best time complexity.
    assignSlot();
    freeSlot();
    Now there could be different sizes of slots which would cater different sizes of vehicles. If a vehicle can be parked in M size slot, no need to park it in a L slot unless you don't have free M slots. You need to find the best slot in terms of best size fit as well as nearest to the valet location for the easy retrieval. It's upto you how do you want to show slot/vehicle size/dimension and how parking grid looks like.

Round 4:

  • Introductions and Leadership Principles for 30 min.
  • Logical and maintable code: The interviewer made it clear in the beginning that he is looking for a production grade code. Try to cover all the edge cases and the code should be executable directly on production.
    Question: There are many users visiting Amazon website. At any point of time I should be able to know who is the first unique visiter.
    Example of user visiting pattern:
    Input = 1 2 3 1 4 2 5
    Output = 3
    Input = 1 2 3 1 4 2 5 3
    Output = 4
    Implement two functions in best time complexity.
    userVisits(int userId);
    getFirstUniqueVisiter();

Surprisingly no LLD in the rounds. I called out in all the coding rounds do you expect LLD of this problem but every one expected DS and working code for the problem. All of the interviewers were very polite and helpful.

Result: I got an email from the interviewer after 3 working days for a 5 min talk regarding the final outcome and gave the verbal offer. Negotiated a bit and accepted the offer in the next few days.

Compensation detals: https://leetcode.com/discuss/compensation/1166144/amazon-sde2-luxembourg-offer/916056

Recently received offer from Booking Amsterdam as well. Experience link: https://leetcode.com/discuss/interview-experience/1184565/Booking-or-Amsterdam-or-Senior-Java-Developer-or-Apr-2021-Offer

Comments (2)