Data Reliability and Fault Tolerance Questions

Designing pipelines that survive failures: retries, idempotency, checkpointing, exactly-once semantics, dead-letter handling, and recovery/replay. Covers reasoning about partial failures, poison messages, and consistency guarantees under faults. The resilience angle distinct from monitoring (detecting and alerting on a failure) and from Workflow Orchestration and Scheduling (the DAG/scheduler mechanics that decide whether and when a task runs again, including backfills and dependency management): this topic owns whether the data itself stays correct, not lost, not duplicated, not corrupted, when a process is retried or replayed.

HardSystem Design
29 practiced

Discuss techniques to approach exactly-once guarantees when integrating with a non-idempotent third-party API that only supports at-most-once semantics. Propose system-level redesigns such as the outbox pattern, dedicated idempotency proxies, or compensated eventual-consistent workflows, and analyze trade-offs.

EasyTechnical
29 practiced

What is the circuit breaker pattern and how is it used to make downstream API calls safer in data pipelines? Describe parameters such as failure threshold, cooldown window, and how this interacts with retry/backoff policies and backpressure.

HardTechnical
35 practiced

Design an at-least-once ingestion pattern with a dedup store using DynamoDB (or a similar key-value store) as the idempotency state. Provide pseudocode showing conditional writes, idempotency tokens, and TTL for keys, and explain how you would handle throttling and scaling in a hot-key scenario, expiry of idempotency metadata to bound storage, and recovery after a network partition.

EasyTechnical
29 practiced

Describe checkpointing versus snapshotting in stateful stream processors: what gets checkpointed and why it's necessary, how each is implemented, their impact on latency and throughput, and recovery-time trade-offs. When is incremental checkpointing preferable to a full snapshot? How often would you checkpoint in a low-latency pipeline processing 50k events/sec, and what does an on-call engineer need to know to restore a job after an operator crash (including offsets and external-sink consistency)?

MediumTechnical
38 practiced

Write Python-style pseudocode for a streaming operator that performs idempotent writes to an external datastore using Redis to track processed message IDs. Requirements: persist processed IDs in Redis atomically with write intent, use TTL or compaction to prevent unbounded growth, and handle crashes and replays safely. Explain the failure modes.

Unlock Full Question Bank

Get access to all 45 Data Reliability and Fault Tolerance interview questions and detailed answers.

Sign in to Continue

Join thousands of developers preparing for their dream job.