A signal is lost by silence, or by a red flag.
Unspoken reasoning leaves a blank. Saying “eventual consistency for the wallet” writes a concern. Not knowing a product is rarely the problem.
A box for every technology you know?
Bad: For scale
Kafka, Redis, Cassandra and MongoDB, none tied to a requirement.
Good: Every box earns its place
“Kafka comes off: at 35 writes a second nothing needs buffering.”
Mistakes are made in the first half and billed in the second.
A requirement you never asked about costs nothing at minute 4 and everything at minute 30, when the curveball lands on it.
10×
the load you’d build for, by mistake
40 million events a day ÷ 10⁴ s instead of 10⁵ gives 12,000 a second at a 3× peak, not 1,200. You’d shard what one primary handles.
“Two URLs, same code?” You hashed each URL into seven characters and said: “astronomically rare.”
The arithmetic
62⁷ ≈ 3.5 × 10¹² codes; 1.8 billion are taken by year five. About 500 collisions a day.
One ID allocator, never mentioned. Then the interviewer asks what happens when it dies.
The difference
Name it first and it reads as judgement. Make them ask, and the notes say “failover raised by me”.
Caught a slip? Four beats, under a minute.
- Notice: a number, hint or clock flags it
- Name it in one sentence
- Fix it with the number that forced it
- Continue with the plan
Same prompt, but each level sinks on a different mistake.
Mid-level: over-engineering for 35 writes a second. Senior: waiting to be led. Staff: a polished design with no rollout, cost or year two.
Remember
Rounds are lost on evidence, not knowledge. Ask before drawing, number every adjective, tie each box to a requirement, decide, and name your SPOF first. Slipped? Notice, name, fix, continue.