Lesson 19 · Senior CDC practice
Mock senior CDC interview pack
A retrieval-first mock pack for turning the whole CDC / streaming-ETL course into clear, interview-grade answers you can say under pressure.
Your win: run a realistic senior CDC mock interview on yourself, score your answers honestly, and turn weak spots into a focused review plan.
How to use this page like the strongest lessons
This page works best if you treat it like a real interview instead of a study sheet. Answer first. Then check the points. Then answer again more cleanly. That rhythm matters because recognition is not the same thing as recall.
The earlier CDC lessons are strongest when they keep turning knowledge into action. This mock pack should do the same. It is less about reading and more about proving what you can actually say under pressure.
The format
You will run three rounds. Each round is trying to test a different kind of fluency, not just a different topic list.
- Round 1 · Core CDC model — can you explain the basic pipeline clearly?
- Round 2 · Safety and operations — can you defend the guarantees and trade-offs honestly?
- Round 3 · Senior design judgment — can you review choices instead of only describing them?
- Time target — 60–90 seconds per answer
Round 1 · Core CDC model
- Why does this repo prefer log-based CDC over polling?
- What is the role of a replication slot?
- Why are publications managed by SQL migration here?
- What is the practical difference between a source and a sink connector?
- Why does the sink use
upsert? - Why are there three CDC stacks instead of “one pipeline”?
- Log-based CDC. Read committed changes from the WAL in order, capture deletes, and avoid polling load.
- Replication slot. Retain WAL until the source connector consumes it, preserving continuity across outages.
- Publication by migration. The repo keeps table-replication intent explicit and versioned instead of letting Debezium auto-create it.
- Source vs sink. A source captures change into Kafka; a sink applies that change into another system.
- Upsert. It makes repeated delivery safe by applying the same logical change idempotently.
- Three stacks. Same technique, separate operational deployments: data-sync, KEC warehouse, and lmsdwh.
Round 2 · Safety and operations
- Why is source recreation riskier than sink recreation?
- What problem does incremental snapshot solve?
- Why isn’t at-least-once the full safety story?
- What does hephaestus really do?
- Why is the delete-guard so important?
- What is the real weakness of generated sinks with no DLQ?
- Source risk. A source owns WAL continuity via the slot; a sink is only a derived applier.
- Incremental snapshot. Backfill existing rows for new tables without recreating the source connector.
- Safety boundary. Replay is safe only because the sink is idempotent, not because transport avoids repeats.
- hephaestus. Git-as-desired-state reconcile over live Connect clusters.
- Delete-guard. Prevent destructive churn on sources and ksqlDB-owned connectors; only JDBC sinks are safely deletable.
- No-DLQ weakness. Poison-record recovery is weaker even though restartability and monitoring exist.
Round 3 · Senior design judgment
- Why is schema evolution a pipeline problem, not just a DB migration problem?
- When would you choose outbox instead of plain CDC?
- How would you review whether a backfill plan is safe?
- How would you explain the no-DLQ trade-off honestly?
- What makes generated connector fleets operationally valuable?
- How would you summarize this repo’s CDC philosophy honestly?
- Schema evolution. One source change can affect event schemas, sink config, destination tables, and warehouse transforms.
- Outbox choice. Use it when you need explicit domain-event intent and a cleaner answer to dual-write risk than table replication semantics alone provide.
- Safe backfill review. Check slot continuity, source update-vs-recreate choice, publication changes, and incremental-snapshot behavior.
- No-DLQ honesty. Operational simplicity is higher, but poison-record recovery and preserved failure evidence are weaker.
- Generated-fleet value. Reduce drift, encode intent declaratively, and make git the source of truth for a large connector surface.
- Repo philosophy. Use log-based CDC as the system of movement, generated connectors as the scalable config layer, and hephaestus as the reconcile guardrail — while staying honest about at-least-once, no-DLQ gaps, and slot-sensitive operations.
Self-scoring rubric
| Score | Meaning |
|---|---|
| 0 | I could not explain it without notes. |
| 1 | I gave fragments, but the answer was incomplete or fuzzy. |
| 2 | I explained the main idea, but missed the trade-off, risk, or repo consequence. |
| 3 | I gave a strong, clear answer with model + trade-off/risk + repo consequence. |
Q1. The main rule of this mock pack is…
Sources. This pack synthesizes the whole course into retrieval practice.