OpenAI Machine Learning Engineer Interview Experience — Four Technical Problems, Told Not a Match
Company: OpenAI
Role: Machine Learning Engineer
Round: Onsite
Seniority: General
Outcome: Rejected
Company: OpenAI
Role: Machine Learning Engineer
Round: Onsite
Seniority: General
Outcome: Rejected
Question 1: 1NN
This one's got a lot of write-ups already on the forum, so I won't go into detail here.
Question 2: Infectious disease
The first three parts were exactly the same as what's already on the forum. The fourth part: at any given moment, for a plant that isn't dead yet, if it has >=K infected neighbors, it enters a dead countdown (dies after D days); if it has >=T but <K infected neighbors (T <= K), it enters a recovery countdown (recovers after D days, same as part 3). The fifth part: starting from day 1 you can choose to burn down an entire row or column at any point — find the burning strategy that minimizes the number of dead plants. I started with greedy and got it wrong, then switched to brute force and still failed a few test cases.
Question 3: Noisy data / annotator
This one felt pretty open-ended overall. They gave you a labeled dataset where annotator quality varied. They gave you a model and training code — you'd first train a version to get a baseline number, then you were on your own to try some method of cleaning the data to improve performance after training. They mixed in a lot of basic knowledge questions along the way, things like precision, recall, F1, etc. The dataset was a pandas dataframe — it seemed like you were also allowed to convert it to numpy to work with it, but I'd still recommend getting familiar with various pandas operations.
Question 4: Matrix cumprod
There have been some write-ups about this one on the forum recently too. Overall, the task was to compute the prefix/cumulative product of N DxD matrices. Part 1 was just writing a simple in-place computation, then they asked about time/space complexity, then why you can't take the gradient this way. Part 2 was writing an out-of-place version — write the forward pass, then the backward pass. Part 3 was Hillis-Steele scan — they gave a general HS scan function, and the forward pass was simple, you just call it directly. The backward pass was harder — you had to use the same HS scan function to compute it. I never quite figured it out by the end, I could only describe the general idea.
I got lucky and passed all the tech rounds, but unfortunately the onsite decided I wasn't a great match. HR said they could help ask the engineering team. Does anyone with similar experience have advice on what else I could try in this situation?