Mechanism vocabulary: the precise term, then what the system does
Say the precise term, then one sentence on what the system does: the actor, a strong verb, the effect.
Predict first
Before you read: predict
ExamHall mock round. At 09:00 the submit endpoint starts failing. You read three things: the API's pg pool (max: 20, connectionTimeoutMillis: 2000) reports totalCount 20 · idleCount 0 · waitingCount 37; SELECT count(*) FROM pg_locks WHERE NOT granted returns 0; failed submits log timeout exceeded when trying to connect.
The interviewer: “So what actually happens in the database layer?” Which answer do you give?
The 30-second version
Interviewers grade the mechanism your words name, so a loose word reads as the wrong mechanism. Say the term, then what the actor does, with a strong verb. Keep one term, spell out team acronyms, and say the noun instead of "it". If the term won't come, describe the mechanism plainly.
Say the precise term, then one sentence on what the system does: the actor, a strong verb, the effect.
How it works
Step 1 of 9
Analogy: The family doctor and "dizzy"
A patient says she feels dizzy. "Dizzy" covers several mechanisms, so the doctor asks the one question that separates them: "Does the room spin, or do you feel you might faint?" The room spins for half a minute when she turns over in bed. The referral letter says "vertigo: the inner ear sends a false sense of spinning", with that example, not "presyncope", which would send her to a different clinic for a different test.
| At the surgery | In the interview |
|---|---|
| "I feel dizzy" | "The database locks up" |
| "Does the room spin, or do you feel faint?" | The tell between near-miss terms |
| Vertigo, plus one line on the inner ear | The term, plus what the system does |
| The wrong term sends her to the wrong clinic | The wrong term is graded as the wrong mechanism |
Breaks down when: the doctor can examine the patient, while you answer from readings; and the interviewer already knows the right term and grades the word you pick. Wrong inference: "patients are forgiven loose words, so interviewers will be too."
In real terms: before you say a term, check it names what the readings show; then say what the actor does.
Picture it

Try it
Answer first, then check. Nothing is saved.
Question 1 of 7
Ticketing round, the 10:00 on-sale. Two checkouts for adjacent seats ran at the same moment, each in its own transaction. Checkout A ran SELECT … FOR UPDATE on seat 14, then on seat 15; checkout B on seat 15, then on seat 14. B then failed with a database error and rolled back, and A committed. The pool had 3 of its 20 connections checked out.
The interviewer: “What happened between those two checkouts?” Which answer do you give?
Question 2 of 7
Ticketing round. The interviewer asks what frees a seat when a buyer abandons checkout. The system, as the design doc lists it:
seat_holds one row per held seat, expires_at = hold time + 10 min
hold-sweeper job every minute: DELETE FROM seat_holds WHERE expires_at < now()
GET /seats a seat is free when no seat_holds row names it
Your first answer was “After ten minutes the seat is released.” The interviewer: “Released by what?” Which answer do you give?
Question 3 of 7
Ticketing round. Asked why checkouts failed at the 10:00 on-sale, you said: “All 20 connections in the pool are checked out. Then the database locks, and checkouts fail after two seconds.” The interviewer stops you and asks which rows were locked.
Which version of your answer should you have given?
Question 4 of 7
Ticketing round. In your last team everyone called the pre-sale holding page “the WR”: it queues buyers before the on-sale and admits 500 a second to checkout. The interviewer asks how 50,000 buyers at 10:00:00 reach checkout without flattening it.
Which first sentence do you give?
Question 5 of 7
For each situation, write three lines, each starting with its label: Term: (the precise term), Mechanism: (one sentence: the actor, a strong verb, the effect) and Example: (one concrete case with a number). (1) Checkout B asks for seat 14's row, which checkout A has taken with FOR UPDATE and not yet committed; B sits until A commits, then carries on. (2) On the seat page, a then callback logs before a 0 ms setTimeout callback that was queued first. (3) During a deploy the payments service's process is stopped; a checkout's call to it fails straight away, before a byte is sent.
Write the three labelled lines for each situation.
Question 6 of 7
Ticketing round, a week later. The interviewer asks why one of two checkouts for seat 31 failed. Both ran at REPEATABLE READ. Checkout B read seat 31 as free; checkout A then set the row's held_by to 'A' and committed. B's own UPDATE of seat 31 then failed with could not serialize access due to concurrent update, and the row still reads held_by = 'A'. You know what you saw, but the term for it won't come to you.
What do you say?
Question 7 of 7
Ticketing round, a week later. A buyer saw a seat as taken 20 seconds after its hold had been deleted.
You explained: “The sweeper deleted the hold, but the seat map keeps the seat list in a 30-second cache, so it still showed the seat as taken.” The interviewer: “What still showed it?” Which rewrite of your last clause do you give?
Go deeper
Pro tip
Drill from the situation to the term, never the other way: one card shows what happened ("20 of 20 clients out, 37 waiting, no lock waiting"), you say the term and its sentence aloud, then flip. Recognising a term when you read it is not the same as producing it when asked.
Related lessons
Checked against the tools and docs as of 2026-10-07.