Amazon, MSFT, Google, Apple, FB, Zoom | Applied Scientist | Multiple | Sep 21 [OFFER, rest Reject]
Anonymous User
5466

YOE: 3 in research company in ML + NLP domain
Education: masters in computer engineering, bachelors in EE

Got recruiter call for Amazon Go teams, took the call but mentioned interest in Alexa, other NLP teams.

Scheduled 1hr phone screen with an Alexa Speech team.

Phone screen

  • July
  • Mix of LP, ML breadth + depth and an easy coding question.
  • LP: Experience related focused on bias for action.
  • ML: Kind of a top level design question. Given a problem, how would you solve it end to end.
    • ML Depth: Disussion was split into progressive steps: problem formulation, data gathering, data processing, choice of model, evaluation metrics, metric explanation to stakeholders.
    • ML Breadth: At each point of the problem, my approach was challenged. For eg, why model A and not model B, why metrics x,y,z, how do you explain those to non-tech people.
  • coding: Last 5-10 minutes for coding. Some easy tree question straight from leetcode solved by one line recursion, don't remember question.

Got a call for onsite in a couple of days. I scheduled it for two weeks later but due to personal reasons I had to reschedule it for a week later.

Virtual Onsite

At this point, I was told multiple teams were interested in me so there's going to be a split loop.

All rounds are 1hr+, LP rounds in each round were disjoint. For eg, some emphasized bias for action and others focused on deliver results, etc.

Techincal Presentation

  • Gave an indepth talk on one of my research items. Peeople from multiple teams attended the talk, there were a few questions about some slides - nothing major.

Round 1

  • HM, team - 1
  • Talked about mutual interests. Interesting team, pioneering work.
  • LP: don't remember much but standard LP questions and follow ups.
  • ML:
    • Similar to phone screen. Was given the problem statement that the team works on and was expected to talk through end-to-end approach.
    • Talked through problem formulation. HM was really impressed, mentioned that that is exactly how they are working on solving the problem.
    • Talked through different data problems and alleviations, model and metric choices.

Round 2

  • HM, team - 2. Current company alumn, so we had a lot of common research interests and background.
  • LP, ML, coding
  • LP: same as round 1, covered different LPs than round1
  • ML: General discussion about state of the art NLP models, how they work, when to use them, etc
  • Coding: Very similar to word break 1 and 2. Did this with backtracking, code walk through and example so we had some time.
  • Reverse interview: spent a lot of time getting to know the teams work, expectation, etc

Round 3

  • Bar raiser from AWS org, senior BD lead with 20+ yoe
  • Lot of LP. Like, A LOT. Follow ups, in depth analysis of my choices at pivotal points at work. This was actually intimidating and challenging but fun.
  • Questions about ML metrics, when to use what and why one metric over t he other. Once again, explanations were expected at a non-tech level.

Round 4

  • Two people, team 2. Both of them had nearly same experience.
  • ML Breadth: A lot of questions about regularization, loss functions, model architectures, speech recognition (not my domain), language modeling.
  • ML Depth: When my answers got philosophical, we went indepth to discuss internals of various things and what kind of alternatives we can use. (Think about different normalization techniques used for regularization + training speed up)
  • This interview was so much fun. Both people were very knowledgable, I hope to eventually work with them or colleagues like them.

Round 5

  • Two people, team 1. One had 3x the more experience the other and was shadowing.. bizarre.
  • ML Breadth: Rapid fire of some ML questions much similar to round 4. BUT things switched: was asked about LSTM and other architure equations.. and CNNs.
  • I didn't connect with the interviewer and the shadow interivewer had to step in to explain my answers. A bit of a communcation/understanding lapse between the interviewer and I. Definitely a red flag here.

After two days recruiter called back asking to schedule one mroe interview to check ML breadth. Scheduled it the following day or a day later.

Additional Round

  • Senior Applied Scientist. Probably the sweetest, kindest interviewer I ever met.
  • Posed a challenging ML design (kind of) question similar to the phone screen: Given a problem scenario, build an end-to-end ML solution.
  • ML Breadth: Problem formulation, scope reduction, data gathering, domain adaptation, knowledge distillation, LMs, etc, metrics and so on.
  • ML Depth: Once again, at each point in my answer, the interviewer asked a couple of questions to understand the thought process behind my approaches, checked to see if I had awareness of alternatives.
  • This interview was 80% good, 20% bad. The bad is simply because I pivoted the crap out of the question and pushed it into my comfort zone by changing the scope of the problem, solving smaller problems and then providing options how to expand. This may not be too bad from the interviewers pov.

Two weeks later recruiter got back to me congratulating for making at as AS at Amazon and that they are looking for team match.

Team match took a really long time because I was downleveled from L5 to L4 for lack of experience in production environment (current job is pure research).

comp: https://leetcode.com/discuss/compensation/1585217/Amazon-or-Applied-Scientist-or-Boston-Remote

Interview journey:

I started giving interviews from March 2021. I interviewed at following companies:

  • Applied Scientist @Amazon
    • March
    • Loc: Seattle
    • 2 phone screens. 2nd phone screen was a weird interview where there were no questions.
    • Reject after 2nd round, don't know what to make of it.
  • Data Scientist @ Microsoft
    • May
    • Loc: MA
    • 2 phone screens + virtual onsite (3 rounds). I though I made it but got reject without explanation.
  • MLE @ Apple
    • June/July
    • HQ
    • 3 phone screens
    • Reject after 3rd phone screen because lack of exp in C++
  • Applied Research Scientist @Facebook
    • Aug
    • phone screen + virtual onsite (7 rounds, total 8)
    • Reject. They expected more cross-functional experience (i.e having stakeholders across multiple departments, etc)
  • SWE ML @Google
    • June/July
    • 5 rounds on virtual onsite. 2 coding + 2 ML + behavioral
    • HC reject for inconsistency
  • MLE @Zoom
    • Aug
    • phone screen + 4 rounds on virtual onsite. 2 coding + 1 ML + 1 design
    • reject - coding + design experience (production environment)

I have posted Google and Microsoft interview experience in detail in other posts but they are now lost in some corner of discuss section. If I ever find it, I will add the links here.

Preperation:

  • coding: leetcode 1k+. I have been on leetcode since 2016, I am not a good coder. I did some contests and my rating is at 1600. I was top 100 twice.
  • ML breadth + depth: PRML, ESL, deep learning by Ian Goodfellow, countless research papers
  • Maths: some statistic lecture notes from various universities
  • ML System Design: gr0k king
  • System Design: I swear I looked at some leetcode interview experiences and realized my current experience has nothing to do with general system design and I took a calculated risk of not preparing for it. This got me screwed in Zoom interview. For eg Zoom interviewer wanted me to index text at large scale where the text is in both structured and unstructured format. I literally have no clue.

I had my ups and downs, LC and blind kept me motivated to hustle while working. It wasn't easy but it sure as shit worth it. I am going to be working with some prominent researchers who's papers I cited and my TC more than doubled. No complaints, no regrets.

comp: https://leetcode.com/discuss/compensation/1585217/Amazon-or-Applied-Scientist-or-Boston-Remote

Learn from my experience what you will, I hope it helps, I don't like giving advice.

Comments (3)