Keeping Meetings in Sync
Simplify and stabilize Read's meeting sync system
Create a free account to upload your work. Your progress saves as a draft until you submit.
What You'll Be Doing
Role: Senior Backend Engineer Team: Backend Infrastructure Location: Remote
Scenario — "Keeping Meetings in Sync"
Read AI connects to Google Calendar, Outlook, Slack, and Zoom to summarize and analyze meetings. When users update or delete events, Read must stay perfectly aligned — no duplicates, no ghosts, no outdated data.
Problem: Events can arrive out of order or from multiple providers describing the same meeting. Sometimes only one instance of a recurring meeting moves or gets canceled.
Your Task: Design a lightweight sync service that keeps Read's internal event store consistent. It should:
- Ingest updates from multiple providers
- Use timestamps or version keys to decide which update wins
- Handle creates, updates, deletes, and recurring exceptions
- Resolve duplicates or overlaps in a predictable way
Example event input:
{
"provider": "google_calendar",
"op": "updated",
"id": "gcal_123",
"start": "2025-10-16T17:00:00Z",
"updated_at": "2025-10-08T09:02:00Z"
}
Submit a video walking us through your approach, along with a system design sketch and a conflict resolution plan.
Challenge Guidelines
- Video: 7–10 minutes (continuous recording, one take)
- Written Artifacts: Two short (max 1 page each) documents
- Scenario: Simplify and stabilize Read's meeting sync system
- AI Usage Declaration: Required
What You'll Accomplish
Design event synchronization systems across multiple providers
Implement conflict resolution strategies for distributed data
Handle out-of-order updates and eventual consistency
Build predictable deduplication logic
Design for reliability in asynchronous systems
How Your Work Will Be Scored
What to Submit
Required Submissions:
- System Design Sketch (Required)
- Format: PDF or Document
- Length: 1 page maximum
- Outline or sketch how events flow through your sync service and how you determine the "latest" version
- Sync & Conflict Resolution Plan (Required)
- Format: PDF or Document
- Length: 1 page maximum
- In plain language, describe how your service handles duplicates, missing data, or late updates — and how you'd prevent noise or unnecessary retries
- Video Recording (Required)
- Format: MP4
- Length: 7-10 minutes (continuous recording, one take)
- Must include all three components detailed below
Submission Guidelines
Video Requirements:
Your 7-10 minute video must include ALL three components:
1. Introduction (1-2 minutes)
- Share one example of a time you automated something or improved reliability in a backend system
2. Traits Assessment (2-3 minutes)
Which kind of challenge fits you best — and why?
- Scenario A — "The Thursday Fix" (Execution): You've found duplicate meetings caused by one bad update order from Google Calendar. You need to ship and verify a small, safe fix today.
- Scenario B — "The Pattern Hunt" (Discovery): You notice recurring data mismatches between Slack, Zoom, and Calendar events. No one's scoped it yet — you'll investigate and design a lasting solution.
There's no "correct" choice — just share your thoughts.
3. Challenge Response (3-5 minutes)
Walk us through your approach to the main challenge:
- How would your system decide which event version is correct?
- How would you handle missing, late, or conflicting updates?
- What's one quick improvement you'd ship first to boost reliability?
AI Usage Declaration:
At the end of your video, please state:
- ☐ I did not use any AI tools
- ☐ I used AI tools (briefly describe how, including prompts and edits)
System Design Sketch
Format: .pdf, .doc, .docx, .rtf, .txt, .md
Outline or sketch how events flow through your sync service and how you determine the "latest" version of an event.
Sign in to upload files
Sync & Conflict Resolution Plan
Format: .pdf, .doc, .docx, .rtf, .txt, .md
In plain language, describe how your service handles:
- Duplicates
- Missing data
- Late updates
- How you'd prevent noise or unnecessary retries
Sign in to upload files
Video Recording
Format: .mp4, .mov, .webm
Record a continuous, one-take video walking through your design.
1. Introduction (1-2 minutes)
- Share one example of a time you automated something or improved reliability in a backend system
2. Traits Assessment (2-3 minutes) Which scenario fits you best — and why?
- Scenario A — "The Thursday Fix" (Execution): You've found duplicate meetings caused by one bad update order from Google Calendar. You need to ship and verify a small, safe fix today.
- Scenario B — "The Pattern Hunt" (Discovery): You notice recurring data mismatches between Slack, Zoom, and Calendar events. No one's scoped it yet — you'll investigate and design a lasting solution.
There's no "correct" choice — just share your thoughts.
3. Challenge Response (3-5 minutes)
- How would your system decide which event version is correct?
- How would you handle missing, late, or conflicting updates?
- What's one quick improvement you'd ship first to boost reliability?
AI Usage Declaration: At the end, state whether you used AI tools (and briefly describe how).
Sign in to upload files
Create a free account to upload your work. Your progress saves as a draft until you submit.
On this page