Incident drills

Two- to five-minute nuggets

A pre-drawn architecture is already failing. Talk through what broke and how you would fix it with the AI interviewer.

Drills follow the same access as their parent question in the library — free rounds stay free; Plus rounds need Plus to start.

Full design rounds

All incident drills

Or start any drill directly — grouped by parent question.

Design an ad click aggregator · Data engineering

View all
Plus
Data engineering·Incident drill

Real-time Metrics Diverge from Advertiser Invoices

Finance reports a persistent 5% discrepancy between daily customer billing statements and live dashboard telemetry, leading to publisher payment disputes.…

4 min

Design ad click prediction · ML

View all
Free
ML·Incident drill

Brand-new campaigns get almost no impressions

Launch day reports show new campaigns stuck below 200 impressions despite high budgets. Auction simulators show their ads ranked last because pCTR estimates sit…

3 min

Design an AI answer engine · AI engineering

View all
Plus
AI engineering·Incident drill

External Fetch Unbounded Timeouts

P99 answer latency jumped from 1.5s to 14s. LLM latency remains low, but web search and page fetch threads are starving the application pool.…

3 min
Plus
AI engineering·Incident drill

Bypassed Citation Faithfulness Verification

User reports show answers containing fabricated statistics attributed to real source links, causing factual drift in answers.…

3 min

Design a multi-tenant API gateway · Backend

View all

Design a search autocomplete service · Backend

View all
Plus
Backend·Incident drill

Autocomplete Trie Traversal Latency Spike

p99 autocomplete query latency spiked from 4ms to 850ms on single-character queries during morning traffic peaks. Application CPU utilization hit 100%.…

3 min
Plus
Backend·Incident drill

Real-time Trends Index Buffer Exhaustion

Breaking news search queries are missing from autocomplete suggestions. Stream processing metrics show rising consumer lag and backpressure.…

3 min
Plus
Backend·Incident drill

In-Place Trie Index Update Memory Deadlock

Every night at 02:00 UTC when the daily batch index deploys, search servers show 500 error spikes and read timeout rates jump to 35% for 3 minutes.…

4 min

Design a change data capture pipeline · Data engineering

View all
Free
Data engineering·Incident drill

CDC Replication Slot Disk Full

Primary PostgreSQL database disk space utilization reached 98% and alerted critical after the CDC connector went offline during a deployment.…

3 min
Free
Data engineering·Incident drill

CDC Initial Load Data Loss Handover

Data warehouse reports missing record updates for mutations that occurred while the multi-hour initial database snapshot process was executing.…

4 min
Free
Data engineering·Incident drill

Out-of-Order CDC Update Overwrites

Data warehouse tables display stale entity values even though the source OLTP database committed newer updates.…

3 min
Free
Data engineering·Incident drill

Schema Evolution Pipeline Stall

The downstream CDC target ingestion job is throwing unhandled deserialization exceptions, backing up the pipeline queue.…

3 min
Free
Data engineering·Incident drill

Phantom Records from Ignored Deletes

Hard-deleted records in the production database remain permanently visible in downstream analytical reports.…

3 min

Design a chat system · Backend

View all
Plus
Backend·Incident drill

Stale Session Registry Routing Blackhole

Users report sent messages show a single checkmark (sent) but are never received by online recipients until the recipient restarts their mobile app.…

4 min
Plus
Backend·Incident drill

Offline Push Queue Thundering Herd

Push notification queues are backing up with millions of delayed messages. Online users report getting duplicate push notifications for messages they already re…

3 min

Design ChatGPT · AI engineering

View all

Design clickstream event tracking at scale · Data engineering

View all

Design an AI code assistant · AI engineering

View all
Plus
AI engineering·Incident drill

API keys appear in assistant prompt logs

Security scan found live AWS keys in exported prompt traces. Three enterprise tenants threatened to disable the product after a support engineer downloaded debu…

3 min
Plus
AI engineering·Incident drill

Agent loops burn quota on repeated failed test runs

A single user session issued 400 shell tool calls in ten minutes, tripping rate limits for the whole org. Billing alerts show 50× normal token usage with no suc…

3 min
Plus
AI engineering·Incident drill

Accept rate dropped but dashboards still green

Product analytics show suggestion accept rate fell from 32% to 19% over two weeks, yet internal SLO dashboards report 99.9% availability. Leadership asks why me…

3 min

Design a collaborative document editor · Backend

View all
Plus
Backend·Incident drill

Undo stack reverts another user's edits

Designers report undo removed a coworker's paragraph from an hour ago. Audit logs show shared global undo stack keyed only by document id.…

3 min

Design a collaborative whiteboard client · Frontend & mobile

View all
Plus
Frontend & mobile·Incident drill

Crossing strokes disappear for remote users

Design review boards lose ink when two people draw overlapping lines. Remote clients see gaps while the local author still sees their stroke.…

3 min
Plus
Frontend & mobile·Incident drill

Board appears empty after laptop sleep

Users returning from sleep see a blank canvas until hard refresh. Console shows websocket reconnected but snapshot fetch 404 on stale revision token.…

3 min

Design a configuration control plane · Platform

View all
Plus
Platform·Incident drill

Invalid config YAML crashes every edge agent

All CDN edge agents restarted in a loop after a config publish. Global error rate hit 40% until rollback; schema allowed a negative TTL field that agents parse …

3 min
Plus
Platform·Incident drill

Canary stuck at 5% while bug fix waits days

A critical TLS fix remains on 5% of agents for 72 hours. Promotion pipeline blocked because canary metrics compare to wrong baseline window.…

3 min

Design harmful content detection · ML

View all
Plus
ML·Incident drill

Aggressive threshold blocks 30% of benign posts

After tuning NSFW model threshold down, creator reach dropped sharply and appeals queue grew 10×. False positive rate jumped while recall barely improved.…

3 min
Plus
ML·Incident drill

Label taxonomy change silently breaks retraining

Weekly retrain job accuracy collapsed after moderators started using a new 'borderline' label not mapped in the training pipeline. Production still serves old m…

3 min
Plus
ML·Incident drill

Adversarial padding fools image moderator

A coordinated spam campaign used thin noise borders to drop NSFW scores just below threshold. Automated removal rate fell 60% for two days.…

3 min

Design a data alerting system · Data engineering

View all
Plus
Data engineering·Incident drill

Same incident pages on-call twenty times

Database failover generated 22 identical PagerDuty incidents because each shard evaluator opened a new alert key instead of deduping on correlation id.…

3 min
Plus
Data engineering·Incident drill

On-call drowned in per-shard CPU alerts

Night shift received 400 CPU alerts from individual Kafka brokers though cluster capacity was fine. Mean time to acknowledge rose above 30 minutes.…

3 min
Plus
Data engineering·Incident drill

Deploy broke alert rule without anyone noticing

A typo in label matcher stopped all payment error alerts for six days until finance noticed reconciliation gaps. CI had no alert rule tests.…

3 min
Plus
Data engineering·Incident drill

Friday traffic spike pages false anomaly

Every Friday evening on-call gets paged for 'anomaly' on signups though pattern is normal weekly seasonality. Trust in anomaly alerts eroded.…

3 min

Design a data quality & observability framework · Data engineering

View all
Plus
Data engineering·Incident drill

Renamed column broke report with no lineage alert

CEO dashboard showed blank revenue for a day after an engineer renamed a field in the raw layer. No alert fired because downstream job silently null-filled.…

3 min
Plus
Data engineering·Incident drill

Null rate spike unnoticed for a week

Customer age field became 90% null after a mobile bug but quality checks only ran monthly. Segmentation models degraded silently.…

3 min
Plus
Data engineering·Incident drill

Quality scan times out on skewed partition

Daily quality scan missed SLA because one huge tenant partition dominated scan time; other partitions finished in minutes.…

3 min

Design a safe deployment platform · Platform

View all
Plus
Platform·Incident drill

Bad canary promoted before error budget burned

A memory leak canary reached 50% fleet before anyone noticed RSS climb; auto-promotion continued because HTTP 500 rate stayed flat while OOM kills rose.…

3 min

Design a distributed caching service · Backend

View all
Plus
Backend·Incident drill

Users see stale settings after update

Feature flag updates take up to five minutes to appear. Incidents traced to reads served from async replica lagging 200k writes behind primary.…

3 min
Plus
Backend·Incident drill

Viral product page melts one cache shard

Flash sale SKU drove 500k RPS against one memcached instance while siblings idle. p99 product page latency hit 2 s though overall traffic normal.…

3 min

Design a distributed lock service · Distributed systems

View all
Plus
Distributed systems·Incident drill

Network partition elects two lock masters

Two clients both believed they held the global inventory lock during a zone partition. Oversell of 1,200 units resulted before merge.…

3 min
Plus
Distributed systems·Incident drill

Crashed worker holds lock until TTL expires

Batch pipeline stalled 30 minutes because a worker died holding the shard lock. No other worker could proceed until lease expired.…

3 min
Plus
Distributed systems·Incident drill

Lock waiters pile up and timeout together

Black Friday checkout saw 50k threads blocked on the same promo lock; when holder released, thundering herd crashed payment service.…

3 min
Plus
Distributed systems·Incident drill

Clock skew causes premature lock expiry

Rare duplicate cron runs at midnight when NTP drift caused lock service to think lease expired 400 ms early on two nodes.…

3 min

Design a distributed message queue · Distributed systems

View all
Plus
Distributed systems·Incident drill

Hot customer id saturates one Kafka partition

Enterprise customer ingestion lagged hours while other partitions empty. Consumer lag dashboard showed partition 7 at 50M messages.…

3 min
Plus
Distributed systems·Incident drill

Manual offset reset duplicated week of charges

Operator reset consumer group offset to earliest during debugging; billing service reprocessed seven days of events duplicating invoices.…

3 min
Plus
Distributed systems·Incident drill

Retry storm duplicates shipment events

Warehouse shipped duplicate packages after consumer retries on transient DB errors. Exactly-once claim but no idempotency keys on write path.…

3 min

Design a document ingestion pipeline for RAG · AI engineering

View all
Plus
AI engineering·Incident drill

Scanned PDF upload OOMs parser workers

Ingestion queue depth hit 200k after customers bulk-uploaded 400-page scanned PDFs. Parser pods OOMKilled looping retries on the same files.…

3 min
Plus
AI engineering·Incident drill

Deletes not propagated to search index

GDPR erasure requests completed in primary store but documents still appear in search results weeks later. Tombstone stream consumer lagging 14 days.…

3 min
Plus
AI engineering·Incident drill

Zip bomb slipped through ingestion sandbox

Parser cluster outage after nested zip expanded to 800 GB logical size. Antivirus scan skipped for 'trusted' enterprise uploads.…

3 min

Design dynamic pricing for ride-hailing · ML

View all
Plus
ML·Incident drill

Price hike collapsed conversion overnight

Dynamic pricing raised rides 25% in a dense city; completed trips fell 40% while competitors held flat. Elasticity model trained on pre-pandemic data.…

3 min
Plus
ML·Incident drill

Pricing experiment leaked to control users

Finance noticed control city revenue drop matching treatment algorithm. Feature flag misconfigured to 100% rollout in neighboring geofence.…

3 min
Plus
ML·Incident drill

Quote flickers every refresh anger users

Support tickets spiked about 'bait price' when quotes changed 15% between two refreshes seconds apart. Smoothing filter disabled during load test leftover flag.…

3 min
Plus
ML·Incident drill

Runaway surge multiplier during outage

During partial dispatch outage, surge hit 8× normal while supply recovered; regulators contacted about price gouging. Hard cap feature flag off in prod.…

3 min
Plus
ML·Incident drill

Stale driver GPS caused false surge

Surge pricing activated citywide though plenty of drivers were online. Location pipeline lagged 12 minutes dropping available supply counts.…

3 min

Design a data warehouse for an online store · Data engineering

View all
Free
Data engineering·Incident drill

Product rename broke historical reporting

Category performance YoY report shows NULL category for half of last year after SKU merge. SCD2 effective dates have a gap day without overlap handling.…

3 min
Free
Data engineering·Incident drill

Incremental load missed late-arriving returns

Weekly inventory snapshot understated returns by $2M because incremental job cut off at warehouse close while returns arrived from stores until 3 a.m.…

3 min
Free
Data engineering·Incident drill

Refunds counted as revenue and adjustment

Finance close double-subtracted refunds appearing in both gross revenue and refund fact without netting logic. Net revenue off by $800k for the month.…

3 min

Design ETA prediction for food delivery · ML

View all
Plus
ML·Incident drill

ETA wrong after sudden road closure

ETAs underestimated by 18 minutes across a corridor after bridge closure. Traffic feature pipeline still served pre-closure speeds for 45 minutes.…

3 min
Plus
ML·Incident drill

Overconfident ETA window anger customers

Complaints rose when meals arrived outside the 5-minute quoted window though model RMSE was fine. Interval always ±3 minutes regardless of route variance.…

3 min
Plus
ML·Incident drill

Training-serving skew on route encoding

Live ETA bias spiked after deploy though offline eval looked good. Serving hash encodes road segments differently than training pipeline after library upgrade.…

3 min
Plus
ML·Incident drill

ETA drift went unalerted for two weeks

Mean absolute error crept up 30% over two weeks after map vendor change. Monitoring dashboard only tracked p95 latency not error vs actuals.…

3 min

Design a reusable ETL/ELT framework · Data engineering

View all
Plus
Data engineering·Incident drill

Framework retry duplicated warehouse rows

Job retry after worker kill inserted duplicate fact rows doubling inventory counts. Framework marks stage complete before commit flush.…

3 min
Plus
Data engineering·Incident drill

Historical backfill starved live SLA jobs

Same-day sales mart missed SLA while backfill consumed all Spark executors for 48 hours. Live jobs queued behind low-priority backfill flag mis-set.…

3 min
Plus
Data engineering·Incident drill

Silent upstream rename broke downstream KPI

Marketing funnel KPI flatlined after upstream renamed event field. ETL framework lineage graph outdated; no impact analysis ran on schema change.…

3 min
Plus
Data engineering·Incident drill

Credential rotation broke all nightly jobs

Every warehouse load failed at midnight after DB password rotation. Framework still mounted old secret volume until manual pod restart.…

3 min

Design an A/B test analytics pipeline · Data engineering

View all
Plus
Data engineering·Incident drill

Experiment exposure undercounted breaking analysis

Launch review showed neutral results but product saw lift. Exposure logs dropped 35% of mobile sessions after SDK upgrade missed assignment callback.…

3 min
Plus
Data engineering·Incident drill

Click-through computed with wrong denominator

Experiment declared winner on 20% CTR lift but metric divided clicks by sessions instead of impressions, overstating lift for heavy users.…

3 min
Plus
Data engineering·Incident drill

Sample ratio mismatch invalidated experiment

After launch, chi-square test shows 54/46 split instead of 50/50 with p-value 0.001. Browser bug sent more Chrome users to treatment.…

3 min
Plus
Data engineering·Incident drill

Same user counted twice across devices

Experiment exposure counts exceeded unique users by 22% because assignment used device id while outcomes joined on account id created after login.…

3 min

Design a feature store · ML

View all
Plus
ML·Incident drill

Inference P99 Spikes to 800ms During Flash Sale

Checkout recommendation models miss latency SLO: P99 feature fetch latency jumps from 12ms to 800ms during a flash sale while online store CPU pegs at 100%.…

4 min

Design news feed ranking · ML

View all

Design cloud file storage · Backend

View all
Plus
Backend·Incident drill

App Servers OOM During Viral File Drop

API fleet memory saturates during a campus-wide file share event; upload throughput collapses despite auto-scaled pods.…

4 min

Design a fraud detection data platform · Data engineering

View all
Plus
Data engineering·Incident drill

Velocity Check Queries OLTP DB at Checkout

Checkout P99 fraud decision latency exceeds 400ms; payment DB CPU spikes correlate with card velocity rule evaluation.…

4 min

Design user data deletion across a data platform · Data engineering

View all
Plus
Data engineering·Incident drill

DB Restore Resurrects Erased Users

Disaster recovery restore from last week's backup reintroduces 4,000 users who completed GDPR erasure.…

3 min
Plus
Data engineering·Incident drill

Invoice Retention Keeps Deleted User PII

Finance compliance requires 7-year invoices but erasure pipeline deletes entire customer records including billing artifacts.…

3 min

Design a geo-replicated database · Distributed systems

View all
Plus
Distributed systems·Incident drill

Clock Skew Reorders Events Across Regions

Audit log shows purchase B before purchase A despite A happening first globally; support refunds wrong orders.…

3 min

Design an image-heavy feed client · Frontend & mobile

View all
Plus
Frontend & mobile·Incident drill

Scroll Past 500 Posts Crashes App With OOM

Instagram-style feed crashes on mid-tier Android after long scroll sessions; heap dumps show thousands of retained image views.…

3 min

Design an IoT sensor telemetry platform · Data engineering

View all
Plus
Data engineering·Incident drill

One-Year Chart Query Times Out

Dashboard year-view queries exceed 60s timeout; raw 1-second samples scanned for single device chart.…

4 min
Plus
Data engineering·Incident drill

Silent Devices Not Detected Within SLA

Critical freezer sensors stop reporting for 45 minutes before anyone notices; SLA requires 1-minute detection.…

3 min

Design a distributed key-value store · Distributed systems

View all

Design a lakehouse for analytics and ML · Data engineering

View all

Design leader election for a service cluster · Distributed systems

View all
Plus
Distributed systems·Incident drill

Network Partition Elects Two Leaders

Two scheduler leaders run simultaneously assigning conflicting shard ownership during WAN blip.…

4 min

Design an LLM evaluation platform · AI engineering

View all

Design an LLM gateway · AI engineering

View all
Plus
AI engineering·Incident drill

Team Blows Token Budget Mid-Request

Long streaming completion finishes at 2x token budget; finance cannot attribute overage until after response ends.…

3 min

Design an LLM inference platform · AI engineering

View all

Design a centralized log ingestion pipeline · Data engineering

View all

Design a metrics and observability platform · Platform

View all

Design a micro-frontend platform · Frontend & mobile

View all

Design mobile release and feature flags · Frontend & mobile

View all

Design an ML model monitoring system · ML

View all
Plus
ML·Incident drill

Silent feature drift before labels arrive

Checkout conversion looks stable in business dashboards, but fraud block rate dropped 18% over two weeks. Ground-truth chargeback labels lag 30 days, so model a…

4 min
Plus
ML·Incident drill

Cohort alert storm overwhelms on-call

PagerDuty fired 400 alerts in one hour after a minor deployment. Most cohorts have fewer than 50 events per day, and static thresholds were copied from the glob…

3 min
Plus
ML·Incident drill

Analysts query raw PII in prediction logs

Security review flagged that model monitoring logs store full billing addresses and emails. A data analyst exported 2M rows for drift analysis without field-lev…

3 min

Design a low-latency ML model serving platform · ML

View all
Plus
ML·Incident drill

Dynamic batching blows p99 latency

Image classification p99 latency jumped from 120 ms to 2.1 s during a traffic spike. GPU utilization is healthy at 85%, but clients time out at 500 ms.…

4 min
Plus
ML·Incident drill

Canary serves wrong model version

A/B test shows new model v3 underperforming v2, but shadow metrics on v3 look excellent. Support reports specific enterprise tenants always get v2 scores labele…

3 min
Plus
ML·Incident drill

Autoscale lag during viral spike

A trending product launch drove QPS from 200 to 3,000 in three minutes. Error rate hit 40% with HTTP 503 while cluster autoscaler added GPU nodes over eight min…

4 min

Design a multi-region failover strategy · Platform

View all
Plus
Platform·Incident drill

Split-brain writes after network partition

After a cross-region network blip, two regions both accepted write traffic for 90 seconds. Order IDs collided and inventory counts diverged by 1,200 units.…

4 min
Plus
Platform·Incident drill

Stale reads right after regional failover

Failover to the secondary region succeeded in DNS, but users saw account balances from six hours ago for 20 minutes. Payment retries caused duplicate holds.…

3 min
Plus
Platform·Incident drill

DR region still calls failed primary

Regional failover appeared successful, but checkout still failed because the DR stack synchronously called an identity service that remained pinned to the down …

3 min

Design a news feed · Backend

View all
Plus
Backend·Incident drill

Celebrity post stalls fan-out workers

Posting for a user with 80M followers timed out after 30 s. Fan-out worker queue depth hit 2M jobs and normal users’ feeds lagged 45 minutes behind.…

4 min
Plus
Backend·Incident drill

Deleted posts still appear in feeds

Moderation removed a harmful post, but millions of precomputed feeds still show it 12 hours later. Mobile pull-to-refresh intermittently surfaces the deleted co…

3 min
Plus
Backend·Incident drill

Feed cache stores full posts and OOMs

Redis memory usage climbed 3x after enabling rich media previews in feeds. Editing one viral post required scanning millions of feed keys to patch embedded JSON…

3 min

Design push notification ranking · ML

View all
Plus
ML·Incident drill

Ranking ignores per-user send budget

Push opt-out rate spiked 12% after a marketing campaign. Some users received 28 pushes in one day despite a product policy of max 3 ranked notifications per day…

3 min
Plus
ML·Incident drill

Quiet hours ignored for travelers

Complaints flooded support after users in Europe received shopping alerts at 3 a.m. local time. The ranker schedules on UTC hour buckets using signup timezone o…

4 min
Plus
ML·Incident drill

Same event ranked on push and email

Users report duplicate alerts for the same order shipment on push, email, and SMS within two minutes. Engagement dropped because each channel ranker optimizes i…

3 min

Design a notification delivery service · Backend

View all
Free
Backend·Incident drill

APNs rate limit drops critical alerts

During a security incident, password-reset pushes failed for 18% of users. APNs returned HTTP 429 and the service had no retry backoff or priority queue separat…

4 min
Free
Backend·Incident drill

Duplicate pushes after at-least-once queue

Users received the same promo push twice within 30 seconds. Logs show two delivery attempts with identical payload hash but different worker attempt IDs.…

3 min
Free
Backend·Incident drill

App silently drops notifications over quota

Enterprise customers report missing in-app alerts while push volume looked normal. Internal metrics show 35% of enqueue requests rejected with HTTP 429 from the…

3 min

Design offline-first mobile sync · Frontend & mobile

View all
Free
Frontend & mobile·Incident drill

Offline edits clobber each other

A user edited a shared note on phone and laptop while offline for a flight. After reconnect, one device’s paragraph vanished with no warning.…

4 min
Free
Frontend & mobile·Incident drill

Deleted items reappear after sync

Users deleted tasks while offline, but items popped back after syncing from an older tablet that still held the rows locally.…

3 min
Free
Frontend & mobile·Incident drill

Reconnect sync saturates mobile network

After a week offline, the app froze on ‘Syncing…’ and consumed 400 MB in minutes. Users on cellular complained about data caps.…

3 min

Design real-time fraud scoring · ML

View all
Plus
ML·Incident drill

Fraud scoring breaches checkout latency SLO

Checkout p99 rose from 180 ms to 950 ms after enabling a new graph feature. The fraud service blocks the payment API synchronously on every request.…

4 min
Plus
ML·Incident drill

Hot merchant key melts feature store

A flash sale on one merchant drove fraud feature Redis CPU to 100%. Latency correlated with a single feature key read millions of times per minute.…

3 min
Plus
ML·Incident drill

Model outage blocks all payments

When the ML scoring cluster crashed for 12 minutes, checkout returned HTTP 503 for every card payment. No rule-based fallback path existed.…

3 min

Design a text snippet sharing service · Backend

View all
Plus
Backend·Incident drill

Viral paste melts read path

A paste linked from a trending forum drove read QPS to 200k on a single short id. Origin DB CPU pegged at 100% despite Redis in front.…

4 min
Plus
Backend·Incident drill

Expired pastes linger for days

Compliance audit found 1.2M pastes older than their TTL still downloadable. The nightly cron sweeper fell 18 hours behind after a DB migration.…

3 min
Plus
Backend·Incident drill

Malware paste served before scan completes

Security team flagged malware download links served from new pastes for up to 90 seconds. Upload API returns 201 immediately while async scanning queues behind …

3 min

Design a payment processing platform · Backend

View all
Plus
Backend·Incident drill

Client retry double-charges customer

Merchants report duplicate charges when shoppers double-tap pay or when mobile clients retry timed-out requests. Two capture records share the same cart id but …

4 min
Plus
Backend·Incident drill

Captured payment missing from ledger

Finance reconciliation shows $240k in processor settlements without matching internal ledger entries. App servers updated payment status then crashed before pub…

4 min
Plus
Backend·Incident drill

Processor timeout leaves unknown payment state

Shoppers saw payment failures and placed second orders, but the processor actually captured both attempts. Internal status stayed PENDING after HTTP timeout to …

3 min

Design a payments reconciliation pipeline · Data engineering

View all
Plus
Data engineering·Incident drill

Payout file processed twice

Merchants received duplicate bank transfers for the same settlement batch. Ops re-uploaded a CSV after a timeout, and both runs inserted payout rows with differ…

4 min
Plus
Data engineering·Incident drill

Ledger and processor totals disagree by a day

Daily reconciliation report shows a persistent $1.8M mismatch that disappears tomorrow. Processor settles on UTC midnight while internal ledger cuts off at US/P…

3 min
Plus
Data engineering·Incident drill

Penny drift breaks audit trail

Auditors flagged thousands of 1-cent variances between order totals, fee splits, and processor settlements after introducing floating-point math in a fee servic…

3 min

Design People You May Know · ML

View all
Plus
ML·Incident drill

PYMK shows deleted contacts

Users see friend suggestions for people they unfriended months ago. The daily graph feature batch finished 36 hours late and serving still reads yesterday’s pre…

3 min
Plus
ML·Incident drill

Blocked user appears in PYMK

A user who blocked their ex still received a ‘people you may know’ card with that person’s photo. Support escalations cite harassment concerns.…

4 min
Plus
ML·Incident drill

Realtime graph features lag social actions

New users see empty PYMK for 48 hours while veterans get instant suggestions. Realtime friend accept events queue behind a backlog, so online features miss fres…

3 min

Design video playback analytics with sessions · Data engineering

View all
Plus
Data engineering·Incident drill

One movie counted as dozens of sessions

Analytics shows average session length of 4 minutes for a 2-hour film. Heartbeat events every 30s create a new session whenever mobile OS pauses the app briefly…

4 min
Plus
Data engineering·Incident drill

Watch time inflated on seek/scrub

Reported watch minutes exceed available content duration by 3x for binge watchers. Scrubbing backward generates overlapping progress events summed naively.…

3 min
Plus
Data engineering·Incident drill

Late mobile events corrupt session order

Session funnels show impossible sequences: ‘complete’ before ‘start’. Devices offline for hours upload buffered events that land out of order in the stream proc…

3 min

Design a retrieval-augmented generation system · AI engineering

View all
Plus
AI engineering·Incident drill

Search returns docs user cannot access

An employee asked the assistant about a confidential HR policy and received excerpts from executive-only docs. Vector search ranked by similarity only; ACL filt…

4 min
Plus
AI engineering·Incident drill

Assistant cites revoked policy

Support bot told customers an old refund policy after legal published an update. Search index refresh runs nightly; doc deletes are not tombstoned in the vector…

3 min
Plus
AI engineering·Incident drill

Model answers without supporting chunks

Users received confident wrong answers about API rate limits. Retrieval returned weak matches but the LLM still generated specifics not present in any chunk.…

3 min

Design an API rate limiter · Backend

View all
Plus
Backend·Incident drill

Centralized Redis Outage Causes Total API Blackout

API Gateway endpoints return 500 Internal Server Errors across all routes. Upstream services report 0 incoming requests while overall API availability drops to …

3 min
Plus
Backend·Incident drill

Hot API Key Saturates Single Redis Shard

Latency spikes to 1,500ms for high-tier API users. CPU usage on a single Redis cluster shard hits 100%, while adjacent shards remain under 5% utilization.…

4 min
Plus
Backend·Incident drill

Non-Atomic Counter Read-Write Allows Quota Bypass

Audit logs show a client with a strict tier limit of 1,000 requests/minute successfully executed over 12,000 requests in a single second without receiving HTTP …

3 min

Design a real-time analytics platform · Data engineering

View all
Plus
Data engineering·Incident drill

At-least-once stream doubles metrics

Live dashboard showed 2x actual signups during a Kafka consumer rebalance. Unique user counts looked fine but event totals inflated.…

4 min
Plus
Data engineering·Incident drill

Late events fall outside tumbling windows

Hourly active user chart undercounted mobile traffic every evening. Offline clients burst-upload events that arrive 40 minutes late and were dropped by strict t…

3 min
Plus
Data engineering·Incident drill

Cross-region failover duplicates aggregates

During region failover drill, global QPS metric spiked to 2x actual. Both us-east and eu-west aggregators wrote the same event ids to the global Redis counter f…

3 min

Design a recommendation system · ML

View all
Free
ML·Incident drill

New users see blank home feed

Day-0 retention dropped after launch in a new country. Users with no click history received empty recommendation responses because the ranker returned 404 when …

3 min
Free
ML·Incident drill

Two-stage rec misses latency SLO

Home feed p99 latency hit 800 ms after expanding candidate retrieval from 200 to 10,000 items. Ranker GPU queue backed up while ANN search stayed fast.…

4 min
Free
ML·Incident drill

New model ranking worse in production

Offline AUC improved 8% but online CTR dropped after deploy. Training logs used imputed defaults for missing features while serving returned null and a differen…

3 min

Design a ride-hailing service · Backend

View all
Plus
Backend·Incident drill

Two drivers assigned one ride

Riders reported two drivers arriving for the same trip during surge. Support logs show two ACCEPT transitions on one ride id within 200 ms in different regions.…

4 min
Plus
Backend·Incident drill

Nearby drivers list is stale

Riders waited 12 minutes while the app showed three drivers ‘2 min away’. Those drivers had gone offline or moved neighborhoods; location index TTL was 5 minute…

3 min
Plus
Backend·Incident drill

Surge pricing stuck after event ends

After a stadium concert, surge multiplier stayed at 3.5x for 90 minutes in a geohash that no longer had demand. Drivers avoided the area while riders still saw …

3 min

Design a customer warehouse with SCD Type 2 · Data engineering

View all
Free
Data engineering·Incident drill

Late CRM row creates overlapping SCD2 intervals

Customer dimension queries for ‘as of March 15’ return two active addresses. A CRM correction effective February 10 arrived on March 20 and was inserted without…

4 min
Free
Data engineering·Incident drill

Daily load creates duplicate SCD2 versions

Customer dimension row count grew 40% month-over-month though business changes were flat. Nightly extracts re-insert identical rows because change detection com…

3 min
Free
Data engineering·Incident drill

GDPR delete leaves PII in history

Privacy request verified removal from the active customer row, but analysts still queried historical SCD2 versions containing email and phone from prior years.…

3 min

Design search ranking for an online store · ML

View all
Plus
ML·Incident drill

Raw Click Labels Teach Ranker to Love Top Slots

After retraining the search ranker on six months of click logs, NDCG on human-rated sets drops 8%. Merchandising reports that highly relevant products in positi…

3 min
Plus
ML·Incident drill

Winning A/B Test Hides Tail Query Regressions

A new ranker wins the A/B test on overall conversion (+1.2%) but support tickets rise for long-tail queries. Reformulation rate on tail segments increases 35% w…

3 min

Design a secrets management platform · Platform

View all

Design service discovery for a growing fleet · Platform

View all

Design an internal developer platform · Platform

View all
Free
Platform·Incident drill

Emergency SSH Escape Hatch Bypasses All Guardrails

A Sev-1 fix required kubectl exec into production as root, disabling network policy and exporting customer data to a laptop. Post-incident review finds no appro…

4 min
Free
Platform·Incident drill

Deploy Pipeline Skips CPU Limit Policy Gate

A new service deploys without CPU limits and starves neighboring pods on shared nodes. Noisy neighbor causes cluster-wide latency spike.…

3 min

Design a customer support AI agent · AI engineering

View all
Free
AI engineering·Incident drill

Retry Storm Creates Duplicate Ticket Updates

Customers receive three shipping-label emails for one request. Tool logs show UpdateTicket invoked multiple times with identical arguments after LLM retries.…

4 min

Design a distributed task scheduler · Backend

View all
Free
Backend·Incident drill

Polling the Job Store Saturates Database CPU

Scheduler DB CPU pegs at 95% during peak. Job dispatch latency rises from 200ms to 8s. EXPLAIN shows millions of SELECT ... FOR UPDATE SKIP LOCKED scans per min…

4 min
Free
Backend·Incident drill

One Tenant's Job Flood Starves Everyone Else

Platform-wide job latency SLO breaches while one enterprise tenant enqueues 2M backup jobs in an hour. Other tenants wait hours in FIFO queue.…

3 min

Design a text-to-image generation service · AI engineering

View all
Plus
AI engineering·Incident drill

Adversarial Prompts Bypass Image Safety Filter

Trust & safety flags 200 generated images in an hour containing disallowed content. Prompts use unicode homoglyphs and split banned tokens across languages.…

3 min

Design a high-demand ticketing platform · Backend

View all
Plus
Backend·Incident drill

Flash Sale Double-Books the Same Seat

Concert on-sale generates 200 support tickets for duplicate seat assignments. Two confirmation emails reference seat A-12 for different orders.…

4 min
Plus
Backend·Incident drill

Abandoned Holds Lock Inventory for Hours

Show appears sold out while UI shows 400 seats in 'held' state. Revenue lost because holds from abandoned carts never expire.…

3 min
Plus
Backend·Incident drill

Payment Captured but Booking Record Missing

Payment provider shows 1,200 successful captures without matching confirmed orders in booking DB after DB failover during on-sale.…

4 min

Design a distributed model training platform · ML

View all
Plus
ML·Incident drill

Gang Scheduling Deadlock Leaves 80 GPUs Idle

Cluster shows 80 free GPUs while 15 large training jobs stay pending for 6 hours. Each job needs 8 GPUs simultaneously but cluster fragments into 7-GPU islands.…

4 min
Plus
ML·Incident drill

Shared NFS Metadata Storm Slows All Jobs

Input pipeline stalls; GPU utilization drops to 30% cluster-wide. NFS metadata ops/sec peg while thousands of workers list same dataset directory.…

4 min

Design a unique ID generator · Distributed systems

View all
Plus
Distributed systems·Incident drill

Duplicate Worker IDs Collide After Auto-Scale

Collision rate jumps when Kubernetes HPA doubles ID generator pods. Two pods assigned worker_id=17 via modulo on pod name hash clash.…

4 min
Plus
Distributed systems·Incident drill

Sequence Bit Overflow Stalls Generator at Peak QPS

ID API latency spikes to 2s during flash sale while QPS is 80k per node. Generator busy-waits for next millisecond after exhausting 12-bit sequence in one ms.…

3 min
Plus
Distributed systems·Incident drill

Client Parses ID Layout That Changed Server Side

Sharding router sends 30% of traffic to wrong database after server adds datacenter bits to ID format. Mobile apps embed timestamp extraction logic.…

3 min

Design a URL shortener · Backend

View all
Free
Backend·Incident drill

Redirect latency spikes after a viral link

A celebrity shared a short link and redirect p99 latency jumped from 20 ms to over 800 ms. The cache layer shows near 100% CPU and the database read IOPS triple…

4 min
Free
Backend·Incident drill

Duplicate short codes under load

Two API servers occasionally return the same short code for different long URLs. Support tickets mention wrong redirects after heavy create traffic.…

3 min

Design YouTube video recommendations · ML

View all
Plus
ML·Incident drill

New Creator Videos Never Leave Explore Pool

Uploads from new channels get under 50 impressions unless creator is manually featured. Ranker scores rely on channel historical watch hours unavailable for new…

3 min
Plus
ML·Incident drill

Offline Lift Does Not Match Online Experiment

New ranker shows +5% offline AUC but online A/B is flat and long-session users churn. Offline eval uses random negatives not matching production candidate gener…

3 min

Design video streaming · Backend

View all
Plus
Backend·Incident drill

Default 4K Autoplay Burns Egress Budget

Monthly CDN egress bill jumps 35% after UI change defaults mobile autoplay to highest rung. Most phones never switch down on cellular.…

3 min

Design visual image search · ML

View all
Plus
ML·Incident drill

Embedding Model Upgrade Requires Full Reindex

Team ships v2 vision model with incompatible embedding space; mixed v1/v2 vectors in same index collapse search relevance until full 5-day reembed completes.…

3 min
Plus
ML·Incident drill

Deleted Products Still Appear in Visual Matches

Users tap visually similar items and land on 404 product pages for delisted SKUs. Vector index retains embeddings after catalog tombstone without delete propaga…

3 min

Design a real-time voice AI agent · AI engineering

View all
Plus
AI engineering·Incident drill

Turn Latency Exceeds 800ms Voice UX Threshold

Users interrupt the assistant mid-sentence; session abandon rate rises 22%. Traces show 1.4s from end-of-speech to first audio byte due to serial STT, LLM, TTS …

4 min
Plus
AI engineering·Incident drill

Assistant Talks Over User During Barge-In

Customers yell 'stop' repeatedly while TTS continues for 3 seconds. Turn-taking state machine ignores VAD during playback.…

3 min

Design a distributed web crawler · Backend

View all