Back to Work

Case study

ShiftDraft

Browser-local shift scheduling product that plans weekly coverage from templates, staff availability, roles, and rule constraints.

This project belongs in the portfolio because it shows end-to-end product execution in a real operations domain: deterministic generation, manager trust, dense workflow UI, and a scheduling engine built around repeatable weekly use instead of vague automation promises.

At a glance

  • Browser-local shift scheduling product that builds weekly drafts from templates, team availability, and rule constraints.
  • Deterministic generation, guaranteed-hours behavior, and coverage tuning are treated as first-class product features.
  • Manager-in-the-loop workflow designed for review, balancing, explanation, and export instead of opaque automation.
Open ShiftDraft

What I was solving

Managers building weekly schedules are usually stuck between fragile spreadsheets and generic tools that hide the real constraints. I wanted a product that could start from reusable templates, respect availability and role fit, and still give the manager full visibility into what the draft was doing.

What made it hard

Scheduling gets difficult when hard constraints, guaranteed hours, overlap rules, and coverage gaps start colliding. The challenge was building something powerful enough to generate useful drafts without turning it into a black box that managers could not inspect or safely override.

What I chose

ShiftDraft is organized around a clear operational workflow: set up roles and team members, define a normal week with templates, generate a draft, tune coverage, balance hours, review changes, then export. The system stays deterministic and rules-driven so the output is repeatable and explainable.

How it feels to use

The interface is meant to feel practical immediately. Someone can load a demo, start with a preset, or import data, then move through setup, schedule review, coverage tuning, and export without losing track of what is ready, what changed, or why the system made a recommendation.

What it shows

  • Next.js App Router, TypeScript, Tailwind, and Dexie over IndexedDB for a browser-local product surface
  • Multi-pass scheduling pipeline with warm-start, greedy assignment, must-fill swaps, guarantee fulfillment, and reassignment optimization
  • Deterministic draft behavior with constraint validation and explainable change-event trails during review
  • Operational UI built around setup, schedule generation, coverage tuning, hours balancing, and print or export flows

What I learned

  • Constraint safety matters more than flashy automation claims in operational software.
  • Managers trust generated output more when the system stays deterministic and exposes why changes happened.
  • Browser-local products can handle serious workflow software when persistence, validation, and editing are treated as core product work.