Challenges/Read AI/General/Keeping Meetings in Sync

Keeping Meetings in Sync

Simplify and stabilize Read's meeting sync system

System Design
Data Synchronization
Conflict Resolution
API Integration
Backend Engineering
Estimated Time:
1 hour
Difficulty:Intermediate
Status:Not started
Start this challenge

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

System Design Clarity — 40% Practical Problem Solving — 30% Conflict Resolution Thinking — 20% AI Usage Transparency — 10%

What to Submit

Required Submissions:

  1. 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
  2. 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
  3. 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

Document · 1 page maxRequired

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

Document · 1 page maxRequired

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

Video · 7-10 minRequired

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