
Pinterest Machine Learning Engineer Interview Questions
& Process
Real candidates share what happened, how many rounds they had,
and how the experience turned out.
Based on 62 interview experiences · FREE TO READ
Candidate interview experiences
First-hand accounts from people who interviewed at Pinterest.
Machine Learning Engineer
I had an initial HR screen that lasted 30 minutes. Then, I was set up for a 60-minute technical phone screening. Unfortunately, no one showed up for the technical interview. Due to some bad HR management, when I tried to get help, no HR rep was available. I got a response a day later saying the meeting was rescheduled for a week later because of miscommunication between their EU and US offices. A week later, the technical interviewer spent most of the time on topics not related to my previous work instead of discussing the projects I had been involved in. They asked typical ML questions during the technical interview, like about L1/L2 regularization and the vanishing gradient problem, and how activation functions could help. To wrap up the session, they threw in a Leet-Code medium question. I managed to finish the solution, but I didn't have enough time to debug edge cases. I received an automatic rejection two days later.
- Could you write a function that rearranges a list of article types such that no two consecutive articles share the same type? If this is not achievable, the function should return False.
- What is L1/L2 regularization and can you explain the mathematical reasoning behind why L1 promotes feature sparsity compared to L2, including derivations?
- Describe the vanishing gradient problem and suggest activation functions that can help mitigate it.
Machine Learning Engineer
Started with an initial Leetcode round that included some ML specific questions about LLMs. Then, the onsite involved two more Leetcode rounds and two systems design interviews. Honestly, this was one of the worst interview experiences I've ever had. The interviewers seemed uninterested. Many were rushed, and one interviewer even had to leave his rented office room, so he just hung up without time for questions or a goodbye. The worst part was one interviewer actively trying to trick me. I gave the correct answer, and she'd ask 'are you sure,' then I'd confirm, and she'd press 'are you reallyyy sure' until I doubted myself and changed my answer, only for her to say 'wrong!' They put the least effort into their interview process compared to any company I've interviewed with. The questions are lazy, and there's clearly no interviewer training.
- Can you explain what an LLM is?
- Do you know about BFS or DFS questions?
Machine Learning Engineer
The interview process is pretty standard with a few stages. First, a recruiter screening, then a technical call, and then a full day of interviews (four in my case): Algorithms and Data Structures, Probability and Statistics, Machine Learning System Design, and a Hiring Manager interview. All stages were manageable. The questions let you get started and then build up. The interviews weren't too stressful, and the interviewers were nice and helpful. They give you enough time to prepare, like scheduling calls 2-3 weeks out. It did take a while to hear back though, almost two weeks.
- Technical screening and algorithms interviews involved Leetcode-style questions, similar to Medium difficulty problems but not exact matches.
- A probability question involving complex dice rolls or coin flips (combinatorics) to calculate the probability of a specific event.
- An ML System Design question focused on tasks relevant to Pinterest's business.
Pinterest Machine Learning Engineer Interview Questions
Quoted word for word from Pinterest interview reports.
“Given an integer array parent representing a forest of rooted trees with n nodes, where parent[i] is the parent of the i-th node. If parent[i] == i, then node i is the root of a tree. Otherwise, parent[i] < i, meaning that the parent always has a smaller index. Every node has exactly one parent, except the root. You are also given an integer nodeToDelete, representing a node to delete. Your task is to delete nodeToDelete and all of its descendants from the forest. Deletion is done in-place by setting parent[x] = -1 for every deleted node x. Return the updated parent array.”
Read reports →“Given an array of website names and page views, calculate the occurrence count for each subdomain.”
Read reports →“Given a mapping such as this one, form neardup clusters: collections of almost identical images. In the example above, we would form the following groups: (A, B, D, I, G, K), (C, E), and (F).”
Read reports →“What is the maximum increasing subsequence in a binary tree, given that the tree is not sorted?”
Read reports →“Regarding neural networks, does vanishing gradients occur more at the beginning or the end?”
Read report →“Should the learning rate be increased or decreased when the loss is oscillating?”
Read report →“Does the vanishing gradient problem typically occur earlier or later in a neural network?”
Read report →“Could you write a function that rearranges a list of article types such that no two consecutive articles share the same type? If this is not achievable, the function should return False.”
Read report →“What are the distinctions between L1 and L2 regularization?”
Read report →Formats, difficulty and experience
Across all 62 Pinterest interview reports.