Playbook / Staff+ coding / Staff+ coding bar — how this round is graded

Staff+ coding bar — how this round is graded

Expected question

"We still do a coding round for Staff. What does a strong answer look like?"

Variant forms

  • "How is Staff coding graded differently from mid-level?"
  • "What do interviewers listen for if the problem is only medium difficulty?"
  • "Should I offer concurrency and distributed design unprompted in a coding round?"
  • "How much time should I spend clarifying vs coding vs testing aloud?"
  • "What are downlevel signals in a Staff coding interview?"
  • "How do I narrate complexity and tests without sounding scripted?"
  • "When should I stop optimizing and declare the solution good enough?"
  • "How do coding rounds differ at AI labs vs classic FAANG for Staff?"

The question, as it might actually be asked

"We still do a coding round for Staff. What does a strong answer look like?"

Where this actually gets asked

Coding is still in Staff / Principal loops at Meta, Google, Amazon, and a lot of AI labs — often one medium round. They're grading communication and judgment harder than puzzle novelty (prep guides and coach reports, 2025–2026). Treat company names as archetypes unless you've got a primary source.

How you'd talk while coding

I'd spend the first two minutes locking the contract — scale, concurrency, nulls, ties — then say the brute path out loud so they know I can ship something, then the O(1)/O(log n) version I'm actually coding. While I type, I narrate the invariant ("map and list stay in sync"). After the happy path, I walk two or three tests. Staff+ extension is one sentence with a stop line: "I'd mutex the structure; sharding is a follow-up if we care about throughput — I won't design Redis Cluster unless you want that door opened."

What interviewers listen for

SignalStrongWeak
Clarifying questionsScale, concurrency, API contractStarts coding immediately
SolutionEnd-to-end correctPartial clever fragment
Code qualityReadable names, clear invariantsGolfed one-liners
ComplexityStated before/after codingNever mentioned
TestsWalks 2–3 cases aloud"Looks right"
Staff extensionConcurrency / API / failure — when asked or briefly offeredJumps to distributed systems unprompted

Clarifying questions you should ask first

See the pattern in every coding/0N-*.md entry. Default set:

  1. Constraints on N / QPS / memory?
  2. Single-threaded vs multi-threaded callers?
  3. Exact semantics on ties, duplicates, nulls?
  4. Mutate input or return new structures?

What not to discuss in a coding round

  • Full multi-region architecture (wrong round — point to system design)
  • Rewriting the language runtime
  • Claiming O(1) without an invariant
  • Silence after writing code (always narrate tests)

How to use this folder

  1. Read the problem; timebox 5 minutes of clarifying + approach on paper
  2. Implement without looking at the reference
  3. Compare: approach ladder, Staff+ deep dive, "what not to discuss"
  4. Practice saying complexity and two tests out loud

What's expected at each level

  • Mid-level: Working happy path; needs a nudge on edges.
  • Senior: Clean medium + complexity + basic tests aloud.
  • Staff+: Same, plus API clarity and one credible concurrency/production extension that doesn't eat the clock.
  • Principal: Teaches the invariant; ties the structure to a system they've actually owned.

Follow-up questions to expect

  • "What do you do in the first two minutes?" — Lock contract, invariant, and target complexity before I touch the keyboard.
  • "When do you stop extending?" — After correct code, two tests, and one relevant production note. Then I ask if they want more depth.
  • "How do you show Principal signal without becoming system design?" — Name the reusable invariant and the metric that would catch a violation.
  • "They want distributed immediately?" — Finish the local correct solution first, then bound the distributed talk to two minutes.