OA outcome: I solved both algorithm questions (passed all the test cases). For the behavioral part after that, I just went with my own gut feeling — the work simulation section was mostly about logic, and I hadn't looked at Amazon's Leadership Principles beforehand.
Interview experience: The interview experience was really good — the interviewer was warm and respectful, and gave a lot of hints and follow-ups. The first round covered a lot of ground, the second round cared more about coding, and there was a bit of BQ mixed into both.
A few thoughts:
- Internship length: Before giving the verbal offer, HR called to tell me the tech team felt fine on the technical side, but they were worried my internship wasn't long enough — they wanted someone who could intern for a longer stretch and then convert to full-time. After I gave a positive answer, HR gave me the verbal offer. Internship length seems to be something they care about a lot.
- Coding: Coding is definitely part of it, but whether it's writing front-end code by hand or a LeetCode-style algorithm question depends on the interviewer's preference — neither of my two interviewers asked an algorithm question, but other candidates interviewing for the same role did get one. So you need to prepare for both; I think being solid on the easy-medium problems in the Hot 100 list is enough to handle it.
- Language: The default is JavaScript. Since front-end work mainly uses JS, using JS is more convincing to the interviewer.
- Fundamentals: I didn't expect the first round's fundamentals questions to be this broad and this specific, so I actually answered them pretty mediocrely, but fortunately it didn't matter much.
- Edge cases: The interviewer pays a lot of attention to how you handle boundary conditions — whether you're writing an algorithm problem or front-end code, you need to think through more edge cases.
- BQ: The interviewer brings up BQ (behavioral questions) through certain cues — I'd suggest looking at the Leadership Principles beforehand and preparing a few examples of your own, so you're not caught off guard when it comes up.
- Rolling admissions: From what I understand, I'm guessing they do rolling admissions — they interview a batch of people each week, then pick one to give an offer to and reject the rest. So it's best to apply as early as possible; later on they might finish hiring before you even get an interview (HR said Shanghai might only hire 2-3 people for the front-end role).
- Open source: Since this is an open-source project, mentioning your own open-source experience is a big plus.
Discussion
Loading comments…