Question
A globally-replicated database (one leader per range, async followers in other regions) wants to serve reads from the local follower for latency, but stale-follower reads break two guarantees users notice: read-your-own-writes (a user updates their profile, then re-reads from a follower and sees the OLD value) and monotonic reads (a later read returns older data than an earlier one). Design the follower-read mechanism that gives bounded-staleness or consistent local reads without sending every read to the leader, and the trade-off between latency and freshness.
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.