12.8 — The 3-Level Answer System
Opening scenario
Interviewer: “What’s a struct?”
Candidate A: “It’s a value type.”
Candidate B: “It’s a value type — copied on assignment, stack-allocated when possible, no inheritance, gets free Equatable/Hashable synthesis.”
Candidate C: “It’s a value type — copied on assignment, stack-allocated when possible, no inheritance. I default to structs over classes because they prevent shared mutable state bugs; I reach for class only when identity matters, inheritance is required, or I need ARC lifecycle hooks. The COW optimization means even large collections are cheap to copy.”
All three are right. Candidate A is technically correct. Candidate B demonstrates knowledge. Candidate C demonstrates judgment. This chapter is about how to be C, on demand, for any question.
Context — why levels exist
Interviewers calibrate by listening for scope of consideration. A junior should know the right answer. A mid should know how it works. A senior should know when not to use it.
| Level | Question signal | Answer pattern |
|---|---|---|
| Junior | “What is X?” | Define X, give one example |
| Mid | “How does X work?” | Define + mechanism + tradeoff |
| Senior | “When would you use X?” / “How would you design Y?” | Define + mechanism + tradeoff + recovery + adjacent options |
The 3-level template
LEVEL 1 (Junior — 1 sentence): Definition in your own words.
LEVEL 2 (Mid — 2–3 sentences): Mechanism / how it works under the hood.
LEVEL 3 (Senior — bridge phrase + alternatives + costs):
"I'd also consider…" + when it breaks + maintenance angle.
Examples for “What is Combine?”:
- L1: “Apple’s reactive framework — chains of publishers and subscribers for event streams.”
- L2: “Built on
Publisherprotocol with operators (map,filter,debounce); subscribers receive values viasinkorassign. Backpressure via demand.” - L3: “For new code I’d actually lean on
AsyncStreamandAsyncSequence— Apple’s investment in Combine has slowed since Swift Concurrency landed. Combine remains the right tool for KVO/NotificationCenter bridging and existing pipelines. The cost of migrating Combine to async is mostly mechanical; the cost of building greenfield on Combine is taking on an aging API.”
The bridge phrases
Memorize three. Use one per senior answer:
- “I’d also consider…” — signals you’re aware of alternatives without disparaging the question.
- “In production I’ve seen…” — adds operational experience to theory.
- “The tradeoff is…” — directly names the cost/benefit.
Avoid: “Actually…” (sounds corrective), “It depends…” without specifying on what (sounds evasive), “Best practice is…” (sounds dogmatic).
Recognizing question scope
Listen to the verb:
| Verb | Likely scope |
|---|---|
| What | Junior / definition |
| How does it work | Mid / mechanism |
| When would you | Senior / judgment |
| Why is it / why would | Senior / rationale |
| How would you design | Senior / system thinking |
| Tell me about a time | Behavioral (separate framework) |
| Walk me through | Mid + Senior / process narration |
When the verb is ambiguous, default to L2 and offer L3 as a continuation. “It’s X (L1+L2). I’d also consider… (L3)” lets the interviewer stop you if they want to go elsewhere.
Answering questions about unfamiliar technologies
You will be asked about something you don’t know. The senior move:
- Be honest about scope: “I haven’t shipped X in production, but I’ve read about it…”
- Reason from first principles: “Based on the name and what I know about similar tools…”
- Compare to what you know: “If it’s similar to Y, then I’d expect the tradeoffs to be…”
- Express curiosity: “I’d want to spike on it for a day to verify.”
Never fabricate. Interviewers smell it instantly and you lose more than the answer was worth.
Recovering from a wrong start
You’re 30 seconds into an answer and realize you misunderstood the question. Two options:
Bad: silently change course mid-answer, hope they don’t notice. Good: “Let me restart that — I was answering for X but I think you’re asking about Y.” Restate the question, then proceed.
Senior engineers do this all the time in code review. Interviewers respect the meta-skill of self-correction.
The Lab approach to practicing
This works alone or with a study buddy:
- Pick 5 questions from 12.7.
- Set a 90-second timer. Answer out loud.
- Listen to the recording.
- Score yourself: Did I hit L1? L2? L3 with bridge phrase?
- Rewrite the L3 answer in writing — that becomes your reference.
Two weeks of this rebuilds your answer muscle. By week four it’s instinctive.
Common misconceptions
- “Senior answers are longer.” No — they’re deeper, not longer. A great senior answer can be 30 seconds.
- “You should always go to L3.” No — match the question. L3-ing a “what’s an optional” answer reads as showing off.
- “Bridge phrases sound rehearsed.” They sound rehearsed only if you don’t use them in daily speech. Practice them at work first.
- “Admitting limits hurts you.” Interviewers prefer “I don’t know but here’s how I’d find out” over fabrication, every single time.
- “This only matters for FAANG.” Every interviewer at every level filters for judgment. The framework is universal.
Seasoned engineer’s take
The 3-level system is not a script — it’s making your thinking audible. The interviewer needs to hear that you’ve considered the tradeoffs; if you have, you’ll say so; if you haven’t, the silence reveals it. Once internalized, you stop thinking about levels and just naturally include the right amount of context.
TIP: Apply this on the job too. Code review comments at L3 (“I’d also consider…”) land softer than corrections, and they’re more useful.
WARNING: Don’t perform the system. If you’re saying “I’d also consider…” without having an actual alternative in mind, the interviewer knows. The framework helps you organize knowledge you have, not fake knowledge you don’t.
Interview corner
Junior: “Walk me through how you’d answer a question you don’t know.” “I’d be honest about scope, reason from analogies, and ask clarifying questions. Then I’d commit to looking it up after the interview.”
Mid: “How do you handle a question that has multiple right answers?” “I’d pick the one I’d actually use, explain the mechanism briefly, then say ‘I’d also consider X if the constraint were Y’ — surfacing the alternatives without seeming wishy-washy.”
Senior: “How do you calibrate the depth of your answer to the interviewer?” “I listen to the verb in their question — ‘what’ for definition, ‘how’ for mechanism, ‘when’ for judgment. I default to mid-level depth with a senior bridge sentence, and watch for the interviewer’s body language or follow-up — they’ll either invite me to go deeper or move on. Mid-interview I’m reading whether they want breadth or depth and adjusting accordingly. The skill is treating the interview as a conversation, not a quiz.”
Red-flag answer: Always L3 for every question. Reads as performative.
Lab preview
Lab 12.3 (mock technical interview) has a section on practicing the 3-level system: 20 questions with self-scoring rubric across all three levels. Done weekly for a month, it becomes how you naturally answer at work.