Useful Resources for ML / AI Interview Prep

Mar 12, 2021 15 Comments

I just finished a job search and I thought I would list things I found useful in case it can help others.

Websites - leetcode.com
I did the highest frequency questions (160 in total) from the companies I applied to. Easily worth the money I spent by subscribing for four months ($140) as this site is an amazing resource. I found it useful to pay for the subscription in order to access locked questions and see solutions. Things clicked once I was able to start seeing patterns. E.g., this one I can approach by recursion/memoization/dynamic programming, this one is knapsack, this one is backtracking, etc. In a day full of interviewing, it is amazingly nice to encounter a coding problem you are confident you can solve as soon as you hear the description. This turns a potentially stressful interview into a bye round.

Websites - confetti.ai
This site is amazing. It is like leetcode but for ML / AI. They have practice problems that require numpy and even kaggle-like problems where you submit output from a trained model and get scored.

Books - Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow
This book is a great overview of modern ML. I skipped the scikit-learn specifics but made sure I understood all the concepts.

Books - Designing Data-Intensive Applications
I was dreading the system design rounds and this book gave me the background I needed to feel more confident in them.

Podcasts - OCDevel's Machine Learning Guide
This podcast is a high level overview of ML and I found the host engaging. It is one of the few ML podcasts I could find that wasn't a series of in-depth interviews. I found it was useful to listen to it while driving or walking, and any time the host mentioned a topic I was unfamiliar with I made sure to research it more thoroughly.

Things I wish I knew in hindsight - Preparation
Being good at my current job is not enough to interview well. In my over-confidence I bombed one of my first interviews at a company I really liked. I wish I had realized how much I had to prepare earlier on in the process.

Things I wish I knew in hindsight - Breadth
I neglected to brush up on my SQL and that led to two awkward interviews which I could have avoided if I had just done a few SQL problems on leetcode.

Interviewing tips
1. Every company was willing to break the final interviews up over two days. Doing so made things a lot easier to manage on my end and a lot less stressful.
2. Every company except one was willing to tell me what topics would be covered in my interviews. Definitely worth asking so you know what to expect.
3. I was surprised at how many interviews were breadth as opposed to depth. Make sure you can talk about pretty much any topic for a minute. Every time I encountered a topic that I thought I should know about, I made a flashcard for it and before every interview I reviewed the flashcards to make sure I hadn't forgotten anything.
4. Every interview I did made subsequent ones easier. I would try to land interviews at as many companies as you can and use those to practice for the companies you care about.
5. Interviewing during the pandemic was surprisingly easy. I can only imagine how much harder this would have been if each interview would have required me to physically travel to the company in question.

My outcomes
5 resume rejections or no response (38%)
2 rejections after speaking with recruiter (15%)
1 rejection after first round phone screen (8%)
3 rejections after final round interviews (23%)
2 job offers after final round interviews (15%)

Hopefully describing my experience helps someone.

comments

Want to comment? LOG IN or SIGN UP
TOP 15 Comments
  • New
    dkeksz

    New

    dkeksz
    This OP post is an advertisement for confetti. It's very fake. Never seen such a vague post
    Mar 12, 2021 2
    • New
      zDHT25

      New

      zDHT25
      Huh? There's more text about leetcode, maybe it's an advertisement for that. Or maybe we can all afford to be slightly less cynical
      Mar 12, 2021
    • confetti is very raw. Difficult to navigate. Not intuitive and quite limited. Not worth the money. Agree with dkeksz - this is an ad.
      Mar 16, 2021
  • New
    HFqX72

    New

    HFqX72
    Congratulations on your offers!

    And also thanks for the tip on confetti. I've been interviewing for ML positions and it's hard to find resources like leet code but even harder for ML systems design.

    Edit: typo
    Mar 12, 2021 2
  • Genesis Research
    brudda

    Genesis Research

    brudda
    How many rounds of your onsite interviews were coding/Leetcoding?
    Mar 12, 2021 2
    • OP
      I had five virtual on-sites, each of which consisted of five interview rounds. The amount of coding varied by company. One had 0/5 coding rounds, three had 1/5 coding rounds, and one had 3/5 coding rounds.

      The remaining rounds were a mix of behavioral, ML breadth, ML design, and system design.
      Mar 12, 2021
    • Genesis Research
      brudda

      Genesis Research

      brudda
      Got it, thanks.
      Mar 12, 2021
  • How many YoE? Congrats!
    Mar 12, 2021 1
  • Microsoft / Eng
    yANH81

    Go to company page Microsoft Eng

    yANH81
    This is not complete without you sharing the offers' numbers.
    Mar 12, 2021 1
    • OP
      My goal in writing this wasn't to share info about my offers, it was to help other people interviewing. I will be making more than enough to support myself and my family.
      Mar 12, 2021