The schedule used to take twenty hours a month. Now it takes minutes.
ChiefDesk builds your block schedule around your program’s actual rules — night blocks, buddy pairings, duty hours, weekend fairness — and gets it right the first time.
| Shift | Mon | Tue | Wed | Thu | Fri | Sat | Sun |
|---|---|---|---|---|---|---|---|
| Zone 7 Night | Vance | Quinn | Vance | Lin | Lin | Lin | Lin |
| Zone 3 Night | Serra | Vance | Marsh | Quinn | Quinn | Roth | Roth |
| Zone 8 Night | Rivas | Marsh | Quinn | Marsh | Marsh | Novak | Novak |
| Zone 7 Day | Amara | Reyes | Osei | Osei | Shah | Osei | |
| Zone 3 Day | Kaur | Beck | Amara | Roth | Reyes | Shah | |
| Zone 8 Day | Wong | Osei | Reyes | Novak | Osei | Reyes | |
| Zone 2 Day | Lin | Lin | Diaz | Reyes | |||
| Zone 7 Afternoon | Roth | Beck | Shah | Nolan | Rivas | ||
| Zone 3 Afternoon | Nolan | Novak | Wong | Beck | Vance | ||
| Zone 8 Afternoon | Novak | Wong | Serra | Kaur | Kaur | ||
| Zone 2 PM | Diaz | Kaur | Diaz | Diaz | Beck | Kaur | |
| Trauma AM | Reyes | Amara | Beck | Shah | |||
| Peds | Shah | Roth | Novak | Amara | Serra | Kaur | Vance |
| Mon | Tue | Wed | Thu | |
|---|---|---|---|---|
| Zone 7 Night | Vance | Lin | Lin | |
| Zone 3 Night | Serra | Vance | Roth | |
| Zone 2 Day | Kaur | Amara | ||
| Trauma AM | Reyes | Beck | Shah | |
| Peds | Osei | Novak | Diaz |
That’s not your program. It doesn’t have to be.
What you just watched is one program’s schedule — its zones, its night blocks, its rules about who can cover what. Yours are different. That’s the point.
ChiefDesk isn’t a template you bend to fit. Your shift names, your structure, your night patterns, your definition of a fair month — those become the rules the schedule is built from.
And it doesn’t take a project to set up. You don’t have to document anything or map your program onto someone else’s model. We ask the questions; you already know the answers. Most programs are running on their own rules inside a week.
You don’t have to write any of it down.
Here’s the part everyone dreads: explaining a scheduling system that lives entirely in your head to someone who’s never worked a shift.
You don’t. You send us last year’s schedules, and we read them.
Most of your rules are already in there — who works nights and how many, which shifts need a senior, what your program does about weekends. We come back with what we found and ask about the parts we couldn’t see. You answer from memory, because you already know.
| M | T | W | T | F | S | S | |
|---|---|---|---|---|---|---|---|
| Okafor | N | N | N | N | · | · | · |
| Lin | D | D | · | D | D | PM | · |
| Reyes | · | PM | PM | PM | · | N | N |
| Patel* | D | D | D | · | D | · | · |
| Boyd | N | · | · | N | N | N | N |
| Marsh | PM | PM | D | · | · | D | D |
- Night block
- PGY-1 6 · PGY-2 5 · PGY-3 4
- Trauma
- PGY-2 and above
- Thursdays
- No morning shifts
- Weekends
- ≥2 free, ≤2 worked
- Zone 2
- Solo-capable
Most programs are running on their own rules inside a week.
One month can be fair. A year is harder.
Any schedule looks even inside one block. The complaints come from the fifth one — the resident who has worked the last three holidays, the one who somehow keeps drawing nights.
Nights, weekends, trauma and peds are tracked across the whole year, and a resident who’s carried more than their share goes into the next block weighted away from it.
It’s a pull, not a rule — it bends the next schedule toward the person who’s owed, and it only counts blocks you’ve published. A draft you’re still arguing with doesn’t move anyone’s numbers.
And when someone asks why they have three weekends and Ellis has one, the answer is a table, not a memory.
| Resident | Nights | Weekends | Trauma | Peds |
|---|---|---|---|---|
| PGY-310 residents | ||||
| Amara | 15 | 8 | 11 | 6 |
| Diaz | 15 | 8 | 10 | 9 |
| Kaur | 16 | 8 | 11 | 7 |
| Nolan | 14 | 8 | 10 | 6 |
| Ode | 15 | 7 | 11 | 6 |
| Osei | 14 | 8 | 13 | 6 |
| Rivas | 15 | 7 | 12 | 7 |
| Serra | 18 | 8 | 13 | 6 |
| Shah | 14 | 8 | 14 | 8 |
| Wong | 15 | 8 | 15 | 6 |
| Range | 14–18 avg 15.1 | 7–8 avg 7.8 | 10–15 avg 12 | 6–9 avg 6.7 |
| PGY-26 residents | ||||
| Beck | 19 | 8 | 13 | 6 |
| Patel | 16 | 8 | 15 | 7 |
| Quinn | 18 | 5 | 12 | 6 |
| Roth | 18 | 8 | 12 | 6 |
| Tran | 23 | 8 | 10 | 6 |
| Vance | 19 | 8 | 10 | 8 |
| Range | 16–23 avg 18.8 | 5–8 avg 7.5 | 10–15 avg 12 | 6–8 avg 6.5 |
Then someone needs the Tuesday off.
This is the part that used to cost you a weekend. One change, and every rule you were holding in your head has to be checked again by hand.
Move the shift. Anywhere it can’t go tells you why before it lands — the wrong training year, someone already on that day, a resident who’s on jeopardy.
Nothing else in the block moves unless you move it.
Rest gaps, night-block length and buddy pairing aren’t checked here — the full validator runs over the whole block before you publish.
You know how this goes
You start out trying to build a schedule people will actually be happy with. Somewhere around hour twelve, that becomes just making sure every shift has a name on it.
Then someone requests a swap and half of it has to be rebuilt.
And in June, whatever you figured out leaves with you.
What ChiefDesk does
Minutes, not weekends.
Generate a full block, then change something and regenerate — it doesn’t unravel.
Fair, and provably so.
Nights, weekends and trauma tracked across the year. When someone asks why they got three weekend nights, you have an answer.
- Nights
- 15
- Wknds
- 7
- Trauma
- 11
- Peds
- 6
It survives July.
Your program’s rules live in the system, not in your head. The next chief inherits a tool, not a spreadsheet and a phone call.
- Night block
- PGY-1 6 · PGY-2 5
- Trauma
- PGY-2 and above
- Weekends
- ≥2 free, ≤2 worked
Built with a chief resident, for a real EM program. Running live since 2025.
Taking over as chief in July?
That’s the right time to set this up. Get in touch and we’ll walk through your program’s rules together.