Question
Design a calendar system where users create events, invite attendees, view free/busy availability, receive reminders, and edit recurring series across time zones. ## Requirements - Define APIs and storage for calendars, events, attendees, recurrence rules, exceptions, and reminders. - Represent instants and display time zones correctly across daylight-saving transitions. - Support editing an entire series, one instance, or this-and-future instances. - Resolve concurrent edits and preserve an auditable revision history. - Compute free/busy efficiently for users with many calendars and access restrictions. - Deliver reminders reliably without sending duplicates. State scale, read/write patterns, consistency expectations, and privacy rules before choosing storage and indexes. ## Follow-ups 1. Find a meeting time across many attendees. 2. Handle room resources and capacity. 3. Sync with external calendar providers. 4. Rebuild reminder schedules after rule or timezone changes.