Grokking the System Design Interview, Volume II
Vote

0% completed

Google Calendar: System Definition

Step 1: System Definition

Let's design a calendar service like Google Calendar. It lets millions of users schedule meetings and events. A user creates an event, invites other people, and reserves a resource like a meeting room. It works the way a shared paper calendar does, but at a much larger scale. The system has these key entities:

User. An account holder with personal details and preferences, like a name and a time zone. Each user owns one or more calendars. Their events live in those calendars.

Event. A scheduled meeting or appointment

.....

.....

.....

Like the course? Get enrolled and start learning!
P B

P B

· 7 months ago

How do we handle when an invitee Accpets/Declines a specific instance of a recurring event? Do we also create Exceptions for such?

shivani agrawal

shivani agrawal

· 4 months ago

one important aspect that i noticed missing while explaining , is the overall design and how the meeting booking can be done in distributed setup.

Had the solution take a different approach and explained this with SAGA or 2PC that would had made more sense and completeness for the overall design/architecture.