Nuro Intern Software Engineer Interview Experience — Minesweeper and a Non-Thread-Safe Video Player in One 90-Minute Round

Company: Nuro

Role: Software Engineer

Round: Technical Screen

Seniority: Intern

We interviewed together on: Coding Algorithm + Coding System, 1 hour 30 minutes total. Coding Algorithm: a Minesweeper problem. The interviewer split it into Part 1 and Part 2. Part 1: without clicking any cell, output the board after revealing it — mainly testing whether you know what number to output for cells next to a mine. Part 2: DFS. On Part 2 I got stuck because I didn't fully clarify the problem, and with the interviewer's guidance I wrote a partially correct answer. Better to clarify first: you should only DFS when the surrounding cells have no mines AND the cell itself is empty. Mine: -1; unrevealed empty cell: 0; revealed empty cell with no mines around it: -2; revealed cell with mines around it: mine_count [0,8]. Coding System: Video Player Processor. They gave a Frame class and a VideoPlayer class with Read + Render methods, and asked you to write an on_play_click method that plays a video from start to finish, rendering a sequence of frames. The catch in this problem: you have to render strictly at 25 fps, and the Read and Render methods are not thread-safe. My idea at the time was to use a queue + mutex lock, but I got stuck because I couldn't hit 25 fps. The interviewer only pointed this out in the last 5 minutes, too late to fix it — I could only describe my approach verbally. After the interview I looked it up: the main idea is something like a publish-subscribe model. You can use threading.Condition to implement suspend/wake coordination between a "producer" and a "consumer" — create a producer thread as a background thread that keeps reading frames, and in the final function use a timestamp to sleep the main thread for 1/25 second before each render. This company is pretty tough — gaining some experience from it!

Nuro Intern Software Engineer Interview Experience — Minesweeper and a Non-Thread-Safe Video Player in One 90-Minute Round

Nuro·Software Engineer·Aug 2026
Technical ScreenInternhard

We interviewed together on: Coding Algorithm + Coding System, 1 hour 30 minutes total.

Coding Algorithm: a Minesweeper problem.
The interviewer split it into Part 1 and Part 2.
Part 1: without clicking any cell, output the board after revealing it — mainly testing whether you know what number to output for cells next to a mine.
Part 2: DFS.
On Part 2 I got stuck because I didn't fully clarify the problem, and with the interviewer's guidance I wrote a partially correct answer. Better to clarify first: you should only DFS when the surrounding cells have no mines AND the cell itself is empty.
Mine: -1; unrevealed empty cell: 0; revealed empty cell with no mines around it: -2; revealed cell with mines around it: mine_count [0,8].

Coding System: Video Player Processor.
They gave a Frame class and a VideoPlayer class with Read + Render methods, and asked you to write an on_play_click method that plays a video from start to finish, rendering a sequence of frames.
The catch in this problem: you have to render strictly at 25 fps, and the Read and Render methods are not thread-safe. My idea at the time was to use a queue + mutex lock, but I got stuck because I couldn't hit 25 fps. The interviewer only pointed this out in the last 5 minutes, too late to fix it — I could only describe my approach verbally.
After the interview I looked it up: the main idea is something like a publish-subscribe model. You can use threading.Condition to implement suspend/wake coordination between a "producer" and a "consumer" — create a producer thread as a background thread that keeps reading frames, and in the final function use a timestamp to sleep the main thread for 1/25 second before each render.

This company is pretty tough — gaining some experience from it!

Curated and edited by PracHub

Practice the questions from this interview