English · Español
Lab 00 — 1-Hour Mock Interview Checklist (Asciinema-Recordable)¶
🇪🇸 Drill de auto-entrevista de 60 minutos: 5 preguntas × 12 minutos cada una, grabable en asciinema para revisión posterior. Mezcla whiteboard, coding, paper read, design y behavioral.
Setup (5 min before starting)¶
- Terminal in a clean directory:
/tmp/mock-interview-$(date +%Y-%m-%d). - Pen + paper at hand for whiteboard questions.
-
asciinema rec session.caststarted. (pip install asciinemaif needed.) - Timer visible (terminal or phone).
- No browser tabs open except the one for the prep file. No googling during the session.
- One bottle of water.
The 60-minute structure¶
| Block | Time | Question type | Source |
|---|---|---|---|
| 1 | 12 min | Whiteboard ML question | Random from theory/01 (Q1-Q25) |
| 2 | 12 min | Coding drill | Random from theory/04 (drills 1-12) |
| 3 | 12 min | Systems design prompt | Random from theory/02 (prompts 1-5) |
| 4 | 12 min | Paper read + discussion | Random from theory/03 (4 papers) |
| 5 | 12 min | Behavioral anecdote | Random from theory/05 (anecdotes 1-10) |
How to pick the question¶
The night before, run:
# Pick one of each type uniformly at random.
python3 -c "
import random, datetime
seed = int(datetime.date.today().strftime('%Y%m%d'))
random.seed(seed)
print('Whiteboard: Q', random.randint(1, 25))
print('Coding: Drill', random.randint(1, 12))
print('Systems: Prompt', random.randint(1, 5))
print('Paper: Paper', random.randint(1, 4))
print('Behavioral: Anecdote', random.randint(1, 10))
"
Don't peek further into the question content until the timer starts.
Block 1 — Whiteboard ML (12 minutes)¶
- Min 0-1. Read the question aloud. Restate in your own words. Ask one clarifying question to no one in particular (interview muscle).
- Min 1-9. Speak the 3-paragraph model answer continuously. Do not consult notes. Write on paper if it helps.
- Min 9-12. Self-fire the L1 → L2 → L3 follow-up tree from
theory/01. Speak each answer for ~60 seconds.
Self-grade. Did you cover all three paragraphs? Did you go all 3 levels deep? Score 0-3.
Block 2 — Coding (12 minutes)¶
- Min 0-1. Open a blank
.pyfile. Write the function signature. - Min 1-10. Implement the drill. No internet. No copy-paste from the reference stub.
- Min 10-12. Run a quick correctness check (synthetic input, eyeball output, or a
printof the shape).
Self-grade. Did the code run without errors? Did the output match expectations? Did you hit the common bug listed in theory/04? Score 0-3.
Block 3 — Systems design (12 minutes)¶
- Min 0-2. State 3-5 clarifying assumptions aloud. (The interviewer is your phone's voice recorder.)
- Min 2-5. Capacity math on paper. QPS, GPUs, memory budget, dollar cost.
- Min 5-9. Sketch the architecture diagram on paper. Label every box.
- Min 9-12. Name at least 4 failure modes and the mitigation for each.
Self-grade. Did you put a number on every estimate? Did you cite a relevant phase? Score 0-3.
Block 4 — Paper read (12 minutes)¶
The paper-read block is compressed — in a real interview it's 20-30 min. This is a calibration drill.
- Min 0-1. Title, abstract, conclusion. Write the 1-sentence claim.
- Min 1-4. Figures and tables. Mark the headline figure.
- Min 4-9. Method section. Re-derive the central equation on paper.
- Min 9-12. Speak: claim, headline figure, equation, one weakness.
Self-grade. Did you nail the claim in ≤25 words? Could you reproduce the central equation without the paper open? Score 0-3.
Block 5 — Behavioral (12 minutes)¶
- Min 0-1. Read the anecdote prompt. Take 30 seconds to plan the STAR structure on paper.
- Min 1-3. Tell the story aloud. Hit Situation, Task, Action, Result, Reflection. Target 90 seconds.
- Min 3-12. Self-fire follow-ups:
- "What was the dumbest thing you tried first?"
- "What would the opposing view say?"
- "What did your manager think?"
- "How would you do it differently with infinite resources?"
- "What is the next thing you would build on top of this?"
Self-grade. Did you hit 90 seconds on the main story (±15s)? Did you use first-person "I" throughout? Score 0-3.
Post-mortem (10 min after the session)¶
- Stop asciinema (
Ctrl-D). - Replay at 2x speed. Note where you hesitated, where you used filler ("um", "uh", "like"), where you went off on a tangent.
- Score the session: each block 0-3, max 15. Track the score over time.
- Update gap list. What did you not know? Pick one item to drill before tomorrow.
- Commit the cast (optional):
learners/borja/mock-interviews/YYYY-MM-DD.castwith a 1-paragraph reflection inlearners/borja/mock-interviews/YYYY-MM-DD.md.
Cadence¶
- Weeks 1-2: 1 session every 2 days. Target ≥ 8/15.
- Weeks 3-4: 1 session every day. Target ≥ 11/15.
- Final week before a real interview: 1 session in the morning + 1 in the evening; alternate blocks.
Optional advanced variants¶
- The "noise" variant. Have a friend interrupt you mid-answer with a follow-up. Simulates the real interview rhythm.
- The "wrong assumption" variant. Misread the question on purpose and see how soon you correct. Trains noticing your own mistakes.
- The "second chair" variant. Pair with another candidate; you grade them, they grade you. Calibrates your own scoring.
- The "across companies" variant. Run a session targeted at one company per week (per
theory/06). Tune the question mix to that company's signals.
Sample scoring tracker (markdown)¶
| Date | Question | Whiteboard | Coding | Systems | Paper | Behavioral | Total | Notes |
|---|---|---|---|---|---|---|---|---|
| 2026-05-23 | Q1, D1, P1, Pap1, A1 | 2 | 3 | 2 | 2 | 2 | 11 | Forgot RoPE detail |
→ Final lab: 01-paper-pitch-cards.md