The Coding Round
Prepare for the coding round by practicing clear problem-solving, implementation, testing, and communication. Follow your assessment’s instructions rather than assuming a particular task format or permission to use AI. For the R7 practice problem, validate request and call identifiers, reject duplicates and foreign or missing results, and return payloads in expected-call order. Explain the invariant, data structures, complexity, and failure handling while distinguishing type annotations from runtime checks. Run the test suite, inspect its output, and add a boundary test. Check malformed and empty inputs. Use permitted assistance critically, and explain every submitted line yourself.
Three tool results arrive for three expected calls. Can you return them? A surprising number of candidates say yes, and the bug they ship is the kind an FDE coding stage is built to catch. Coding problems in this loop tend to be small and practical. The hard part is deciding what must be true before the function returns, then proving the code enforces it while you explain your choices out loud.
What does the coding stage test?
OpenAI’s interview guide lists pair coding, take-home projects, and technical tests among possible assessment formats, and formats vary by team. It says interviews look at how candidates approach problems, make decisions, and communicate reasoning. For engineering interviews, OpenAI generally looks for well-designed solutions, high-quality code, optimal performance, and good test coverage.
The FDE coding stage is usually practical rather than an algorithm puzzle: a well-defined task close to real integration work. The role description explains why. It calls for writing and reviewing production-grade code, communicating across disciplines, and making sound decisions under pressure.
When the task arrives, read the instructions first. Note the deliverable, the allowed tools, the input and output contract, and any constraints. Ask about anything ambiguous before you build an assumption into the code.
What is the R7 problem?
Here is a typical practice task. Northstar request R7 expects tool calls c1, c2, and c3. Each result record has a request_id, a call_id, and a string payload, and records can arrive in any order. Write a pure Python function that returns the payloads in expected-call order, but only if every expected call has exactly one valid result for R7.
Pin down the assumptions before typing:
Expected IDs: Every expected call ID is a unique, nonempty string, and so is the request ID.
Records: Every record has the three fields. IDs are nonempty strings and payloads are strings; an empty payload is allowed.
Empty case: No expected calls and no records produce an empty list. Any record when no calls are expected is invalid.
Failure: A foreign request, unknown call, duplicate call, missing call, or malformed input raises
ValueErrorbefore any list is returned.
The invariant is the ...