Code Room
System designHard
Question
Design a change-data-capture pipeline that streams every insert/update/delete from a fleet of production OLTP databases into a data lake and several downstream consumers, with no gaps and no double-counting. You must handle initial backfill of huge existing tables, then switch seamlessly to live tailing, survive DB failovers, and propagate schema changes (a column added/renamed) without breaking consumers. Scale: 500 tables, 1M row-changes/sec aggregate.
What a strong answer looks like
Clarify scale and constraints first. Propose a clean component breakdown, then go deep on the hard parts — data model, bottlenecks, consistency, failure modes — and name the trade-offs you are making.
Learn the concepts
Loading whiteboard…
Run or narrate your approach, then ask the coach.