Location sharing service
Your task
Design a friends/family location-sharing service (like 'find my friends') for 200M users, where a user shares live location with a chosen set of contacts and can stop sharing at any time. Requirements: a sharer's location reaches their contacts within seconds; sharing is bidirectional and granular (per-contact, time-limited 'share for 1 hour' modes); revocation is immediate; and historical location is minimized for privacy. Describe the data model for the sharing graph, the real-time delivery, how revocation propagates instantly, and the privacy/retention trade-offs.
It covers
- Privacy
- Geo distributed
- Data retention