Learning on Web Dev Open is free for all.

Interview Prep · Low Level DesignDesign a meeting room scheduler
← Low Level Design

Design a meeting room scheduler

Medium40 minFree, no account

Overlapping intervals, two people booking the same slot, and recurrence rules that fight daylight saving.


The question

Design the booking core for meeting rooms: find free rooms in a window, book one, and handle recurring meetings.

Two people may try to book the same room for the same slot at the same moment.

Functional
  • Find rooms free for a given interval, filtered by capacity and equipment.
  • Book, modify and cancel.
  • Recurring bookings: weekly, with exceptions.
  • Show a room's schedule for a day.
Non-functional
  • A room is never double-booked.
  • Attendees are in several time zones.
  • Availability lookup must not scan every booking ever made.
40:00Commit to an answer before you open the solution. Reading it first teaches you to recognise good answers, which is not the skill being tested.

Stuck?

0 of 3 hints taken

The worked solution

written by a person · not a grade

Score yourself

0 of 5 marked
  • A correct overlap predicate with the boundary decision stated20
  • Solved double-booking with a database-level constraint, not check-then-insert30
  • Stored recurrence as a rule plus exceptions25
  • Handled time zones with UTC plus the originating zone15
  • Bounded the availability query rather than scanning10

We run no AI here and nothing on this page grades you. The score is yours, and the useful number is the one you get on the same problem a month from now, cold.

kept in this browser only