5 exercises on discussing p99 latency, bottlenecks, profiling, hot paths and caching trade-offs. Choose the most natural and professional option.
0 / 5 completed
1 / 5
In a performance review meeting, you want to report a latency problem precisely. Which phrasing is MOST professional and informative?
Reporting latency precisely: engineers describe performance with percentiles, not vague adjectives. "p99 latency of 800ms" tells the room exactly how bad the tail is, and contrasting it with an unchanged median ("it's a tail-latency problem") immediately narrows the diagnosis. Real phrasings: "p99 latency", "the tail is heavy", "median is flat but the 99th percentile spiked", "this affects ~1% of requests". Options A, C and D are subjective and give no actionable signal — a reviewer can't act on "slow sometimes" or "laggy".
2 / 5
A colleague suggests immediately rewriting a function to make it faster. You think you should measure first. Which response is BEST?
Profile before optimising: the professional norm is "measure, don't guess." Option B states the intent ("I'd like to profile it") and the reason ("I don't want to speed up code that isn't on the hot path"), which is both collaborative and technically sound. Useful phrases: "let me profile it first", "let's find the bottleneck before we touch anything", "we'd be optimising blind". Option D misuses "premature optimisation" — that phrase warns against optimising without evidence, which is exactly what profiling provides. Option A is blunt and unconstructive.
3 / 5
You've identified where the slowness comes from. Which sentence names the bottleneck most naturally?
Naming a bottleneck: "The bottleneck is in the database layer" is the idiomatic frame — engineers say something is the bottleneck or is the hot path. Option B then explains the mechanism ("an N+1 query... one call per row instead of a single batched fetch"), which is what makes the diagnosis credible. Common phrasings: "the bottleneck is X", "X is the hot path", "we're I/O-bound here", "this is CPU-bound". Options A and C are grammatically clumsy and vague; Option D assigns blame instead of describing the cause.
4 / 5
You want to propose caching to reduce load, while being honest about the trade-off. Which is the MOST balanced phrasing?
Proposing caching with the trade-off: strong performance proposals quantify the benefit and name the cost. Option B gives the upside ("cut database load by ~70%") and the well-known downside ("the trade-off is staleness... we'd need a TTL or invalidation"). Real phrases: "the trade-off is staleness", "we'd need an invalidation strategy", "set a sensible TTL", "cache-hit ratio". Options A and C overclaim — experienced reviewers distrust "always helps / no downside" because caching introduces consistency problems. Option D hides the trade-off entirely.
5 / 5
Someone calls a piece of code "the hot path." What does that phrase mean, and which explanation is correct?
"The hot path": the hot path is the code that runs most often on a performance-critical route, so even a tiny per-call cost becomes significant at scale. That's why teams say "this is on the hot path, so allocations matter here" or "keep the hot path allocation-free". Related: "cold path" (rarely executed code, where readability beats micro-optimisation), "critical path", "fast path". Option A confuses it with a "hotfix"; Option C with an incident-only code path; Option D with unreviewed code — none of which is what "hot path" means.