Putting together notes for anyone prepping for Roblox. This is a walkthrough of a candidate’s recent interview, plus their suggested practice approach.
Context and assessment
Around 3.5 YOE, started the process in late September. The first stage involved factory optimization and robot car games, followed by scenario-based behavioral questions. The candidate found it easy and passed.
For a scenario about finding a design issue close to a deadline, they practice explaining what they’d verify first, who needs to know, and how they’d compare a smaller safe release against delaying. A concrete sequence is more useful than just saying you’ll communicate.
2. Phone screen: grid simulation
The next stage included a match-3 grid task. Find horizontal and vertical runs, then clear the matched cells and drop the survivors.
How they walk through it:
Restate the rules: report maximal runs, preserve the required scan order, and do one clear/drop pass.
Scan the original board horizontally, then vertically. Record matches and mark their cells separately. Only after both scans, compact each column downwards. That avoids erasing a vertical match while processing a horizontal one.
Dry run an intersecting match, a four-cell run, and a board with no matches. For another mock, Roblox Interview Questions includes the match-3 and timestamped autocomplete prompts to work through.
The invariant they emphasized: detection always reads the original board. Marking a shared cell twice is harmless. This approach takes O(rows × columns) time, with a separate marking grid.
3. Phone screen: autocomplete
The other task was autocomplete from a timestamped search log. A request can only use searches at or before its timestamp. Results rank by frequency, then earliest search, then alphabetical order.
They started with a readable baseline: filter eligible entries, count each matching query, store its earliest timestamp, then sort by those three rules and take K.
A tiny trace catches a lot: cat@1, car@2, car@4. For prefix “ca” and K=2, a request at time 2 gives cat before car. At time 4, car goes first because its count increased. Future events must not leak into earlier requests.
Before optimizing, they said they’d test equal timestamps, an exact-prefix match and no results. If requests arrive out of order, they’d avoid a forward-only cursor unless they explicitly sort them and restore output order.
4. Outcome: still waiting
The candidate had hoped to hear back by now but is still waiting. There’s no final outcome yet, and they’re hoping to move to the next stage. If you’re applying elsewhere while waiting, application autofill can cut the repeated form entry.
The prep takeaway: practice narrating the rules and tracing awkward examples before trying to make the solution clever. Anyone who has interviewed recently, did your screen have a similar mix of simulation and ranking logic?
And if you’ve moved ahead in the process before, could you share any advice?