My Amazon Front-End Engineer Interview Experience

My Amazon Front-End Engineer Interview Experience

While preparing for my Amazon interview, I didn't come across a lot of frontend specific interview experiences. Hence, I decided to pen down this blog post to help everyone preparing to get into a Front-End Engineer role at Amazon. Before I start, I'd like to mention that I had to sign an NDA with Amazon prior to the interviews. So, I won't be sharing the exact questions asked to me, but will share the round details and the type of questions asked.

In total, I had 5 rounds (1 screening + 4 F2F interviews). I'll share the details of what these rounds were as we proceed.

The application process and getting shortlisting

I had taken a referral from a friend in January 2021 for a FEE role, but didn't hear back for a long time, and thus I was convinced that my application had been rejected. But one fine day in the month of September 2021, I received a call from a recruiter from Amazon. She told me that she had received my resume for a Front End Engineer opening at Amazon and asked me if I was interested. She added that as my total experience was only 2 years, so I was eligible only for the FEE-1 role. I replied in affirmative and asked her about the process. She sent me a HackerEarth assessment link and told me to call her back once I had attempted the said assessment.

The Resume that got shortlisted

I created my resume with a template from Canva and edited it using Photoshop and Illustrator. I'm planning to write a separate blog post on how to craft a resume that can catch the attention of any recruiter.

The Screening Round

The HackerEarth assessment was a fairly simple one IMO. It consisted of 15 MCQs on HTML, CSS, JavaScript, and basic web security concepts, along with 1 Machine Coding type question. The MC problem expected me to code a fully working prototype of a product, based on the requirements provided, using HTML, CSS, and vanilla JavaScript (without any framework/library). The features were divided into 2 categories: mandatory and good to have. As I had completed the MCQs within 10-15 minutes, I had ample time to complete both the mandatory as well as most of the good to have features. I did miss out on 1 or 2 of the good to have features, but I was pretty confident about the round. After completing the task, I called up the recruiter. She checked the results and immediately informed me that I had cleared the screening round.

She asked me for a suitable time for the interviews. As I wasn't prepared fully at that time for the interviews, I asked her to schedule the same after a couple of weeks. She agreed to that and my interviews were scheduled for the last week of September 2021. A couple of days later, I received a mail from the recruiting team at Amazon on the interview schedule. Initially, 3 rounds were scheduled: 2 Technical rounds and 1 Hiring Manager round.

My preparation strategy for the Technical and HM rounds

For the technical rounds, I brushed up my basics starting with HTML, CSS, concepts like how a browser works, web security basics, etc.

For JavaScript, I referred to a variety of resources starting from

  • MDN
  • javascript.info
  • The Bible of JavaScript - the You Don't Know JavaScript book series.
  • But my personal favourite remains the Namaste JavaScript playlist on YouTube by Akshay Saini.
  • Akshay's channel also has a few other videos on some commonly asked web and javascript concepts along with his Front End Interview experiences, which are highly recommended for anyone appearing for Font End Interviews.

One of the biggest questions I had was how much Problem Solving / DSA is needed for a Front-End Engineer role. I connected with a few people already working at Amazon as FEEs and asked them this question. From what I understood, a good grasp on problem-solving and at least basic DSA was essential for even the FEE roles. I revised the basic concepts and solved a few common interview problems from Striver's SDE sheet. I didn't get a chance to solve a lot of problems due to the time crunch, but I did watch the videos of some of the famous problems.

Amazon gives equal weightage, if not more, to its 14 Leadership Principles* in its interviews. One cannot afford to not be prepared with these LP if he/she is serious about getting into Amazon. Amazon expects all its employees to have these leadership principles within them. One may expect behavioural questions based on these LPs in any round (yes, even the technical rounds). A good way to answer these questions, which is recommended by Amazon itself, is the STAR format. Planning to write a separate blog post on the Leadership Principles and how to answer the behavioural questions using the STAR format very soon.

*Currently there are 16 Leadership Principles, but the official document that I had received along with my Interview invite had only 14.

The Technical Round 2

The 2 technical rounds had been scheduled on the same day, but due to the interviewer getting occupied with something else, my first round was rescheduled. So, on the first day, I had only one technical round with a FEE-3. The round started with a round of introduction, a quick chat about my work experience, and then moved ahead with the technical questions.

He showed me a webpage and asked me the approach I would use to implement something like that. He wanted to see the HTML markup and the logic implemented in vanilla JavaScript. He said not to focus on the styling aspect but try to make it as optimized as possible. It was a simple-looking page but I understood that he was essentially looking for a very specific concept in the implementation for the optimization. I discussed with the interviewer a basic implementation and when he asked me if that was the optimal solution, I added how this approach would create a lot of performance issues on the page. I then told him about the root cause of the performance issue and had an elaborate discussion on the various approaches to remove it. Though I couldn't give him the exact term he was looking for (I had read about the concept but couldn't recollect it at that moment), but he seemed to be satisfied with the overall discussion.

This was followed by some questions on JavaScript, web fundamentals, etc. Next up, the interviewer gave me a coding problem. It was a Leetcode easy-level problem on string manipulation. Solved it within 15-20 minutes and he asked me a couple of follow-up questions on my approach. Finally, the interviewer asked me if I had any questions for him. I asked him about his team and the work they are doing at Amazon. Had a short chat on that for a while and then concluded the interview.

Observation: This round seemed more like a design round, where the interviewer was more focused on my approach and thinking rather than the exact solution.

The Technical Round 1

This round, just like the first round, started with the same flow of introduction, chat on my work history, etc. The interviewer then asked me core JavaScript questions, starting with simple ones and moving up the difficulty level as we proceeded. He asked me a few output-based questions and a lot of follow-up questions after each of the questions.

Next, he asked me to implement a few inbuilt JavaScript methods on my own, followed by questions on those. I implemented all of the methods and had a discussion on my approach for the last one. He suggested me a much simpler technique for the same, which was really cool.

Finally, he asked me a problem-solving question of a Leetcode medium level. As there wasn't much time left, he asked me to write a pseudocode/algorithm instead of the entire code. Once I was done with my solution, he wasn't completely convinced with it. He added that my solution wasn't complete and started implementing his solution for the problem. Once he finished, I politely requested him to grant me 5 minutes to show him a dry run of my solution. I was pretty sure that my solution would work, so I explained to him the entire flow with an example. Seeing the example he thanked me for explaining and said that it was correct. The round concluded immediately after this as the interviewer had to jump off to another meeting.

The Hiring Manager Round

This round was taken by the Hiring Manager, i.e., the manager of the team I was being interviewed for. After the introduction (just like other rounds), the interviewer directly jumped on to a few behavioural questions. The behavioural questions are based on one of Amazon's 14 Leadership Principles and are best answered using the STAR format. The interviewer asked me 2 of these questions with a lot of follow up questions on my answer. Amazon is very particular about their LPs and want to make sure that each of their hire has these traits within them.

The interviewer then moved to a problem solving question, which I was ready for as I was already aware that even HM round would consist of at-least 1 problem solving question. It was a medium level question. I discussed my approach with the interviewer and gave him the brute force solution. He asked me for its time complexity and if I could come up with an optimized solution. I told him the TC of the brute force solution, explained him the optimal solution and then coded it up.

Till this point I wasn't aware of which team I was being interviewed for, so I asked the HM about the same at the end. He told me that I was being interviewed for the Amazon Fashion Tech team and added a bit about the work they're doing.

After a week or so, I followed up with the recruiter for any updates on my interview. She told me that 1 more round was scheduled a couple of days later. It was the famous Amazon specific round: the Bar-Raiser round. I had read about this round in all Amazon interviews (for all kinds of roles/positions). This was a round which intended to check whether an individual, if selected, could raise the bar of the team he/she was being interviewed for or not. I was particularly nervous for this round as questions asked here could be anything ranging from technical to behavioural to anything else.

The Bar Raiser Round

This round started in a somewhat different way (of course after the introduction). The interviewer asked me why was I interested in Front-End development. I told him about my passion for creating products which users could directly engage with. I also told him that the Front-End is the first impression of the application to any user, and essentially the first impression is many a times the last impression. We had an elaborate discussion on this topic and how I developed a liking towards FE development right from my college days. I made sure that I highlighted some of the Leadership Principles in this discussion, which I believed made my answer more impactful.

The round then progressed to the behavioural questions based on the Leadership Principles, which I elaborately explained. All my answers were met with a series of follow-up questions. This went on for almost an hour, after which the interview concluded with a brief discussion on some of the recently added UX features on the Amazon dot in page, which adds on to its already user-friendly design.

The nervousness, anxiety, and finally the offer!

A couple of days after the interview, the initial recruiter called me to ask me about my interview experience. Then surprisingly she revealed to me that I had been selected and I would be called by the other recruiter for a salary discussion round soon. To be honest, I wasn't expecting the results to be announced so soon, and thus I was pleasantly surprised by the news.

All the other formalities and procedures were completed in a couple of weeks and there I was... holding the offer letter of what was one of my dream companies in my college days - Amazon. It was truly a surreal experience for me going from "One day" to "Day One"!

Overall experience and honest feedback

I had been giving quite a lot of interviews in the time frame of August to November 2021, some of which went well and some didn't. But as an experience, my Amazon interview was totally different from all the other companies I had appeared for. Even if I hadn't been selected, I would've said the same about the entire process. It was a unique interview experience where I didn't feel like I was appearing for a test but rather it felt more like a compatibility test between a candidate and the organization. All of my interview rounds were two-way conversations where not only the company came to know about me, but even I came to know something about the company a little more by the end of each round.

That was my FEE interview experience at Amazon. If you have any questions/doubts, please feel free to comment below or dm me on LinkedIn. Best of luck if you have your Amazon FEE interview coming up.

Thanks for reading! Cheers!