AiLearn AI Coding
hardOpen-ended · your tools60 min Premium

Schedulr

A meeting and task scheduler that honors dependencies and availability, topological ordering plus interval scheduling.

Topo SortGreedy / Packing

Problem

A greenfield build: a scheduler for tasks and meetings. Clone the starter repo, use your own editor and AI tools, and build under a 60-minute timer.

The spec

  • A Task { id, duration, dependencies[], availability[] } where availability is a list of time windows.
  • schedule(tasks) returns a conflict-free assignment when one exists: each task placed in a window, after all its dependencies complete.
  • When a conflict makes a clean schedule impossible, report which tasks conflict rather than producing garbage.
  • Greedy first-fit placement is fine — you must be able to say why and where it's not optimal.

Two patterns meet here: topological ordering for the dependency half, and greedy interval placement for the time half. Deciding how they compose is the problem.

What interviewers watch

  • Entities modeled before logic (Task, Window, Schedule)?
  • Dependency order computed separately from placement — or tangled into one loop?
  • What happens when constraints conflict: explicit reporting, not silent overbooking?
  • Are the ordering and availability tests written first?

Submission

Export your code and AI chat transcript, note tools and time, and submit for a verdict.

Deliverables

  • A task model with dependencies, duration, and preferred slots
  • A scheduler that respects dependency order and availability windows
  • Conflict-free placement when possible; explicit conflict reporting otherwise
  • Tests for dependency ordering, gaps, and overbooking