System design: Global bank with multi-region data consistency
A digital bank operates in multiple geographic regions (e.g., EU, US, APAC). Users can log in and perform operations (balance checks, transfers, card payments) from anywhere.
Prompt
Design a data architecture that keeps customer/account data consistent across regions.
Requirements
-
High availability and low latency for reads (users worldwide).
-
Correctness for money movement (no double-spend).
-
Tolerate regional failures and network partitions.
-
Clear consistency model: what must be strongly consistent vs what can be eventually consistent.
Discuss
-
Replication strategy (sync/async, leader-based vs multi-leader).
-
How to handle cross-region writes (especially transfers).
-
Conflict resolution and idempotency.
-
Operational concerns: recovery, reconciliation, auditing, observability.