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[] }whereavailabilityis 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