The cover shows the final Roster View Revamp. The essay follows the First Draft, Workbench and final Revamp. Open an image to inspect it at full size.
Operations were breaking on the ground. I designed a roster calendar, and we worked through the night to ship the first version. It was still broken in places. We improved it in passes after that.
The interface was for the operations teams planning and checking employee assignments. They needed to read across a week, find unfilled shifts, and spot assignments that violated constraints. A calendar could contain the right information and still make those tasks difficult if every tile demanded a separate reading.
The design problem was the density of that repeated information: employee, shift, store, timing, allocation and attendance. The tile was the smallest unit, but its hierarchy affected the readability of the whole roster. I worked through what had to stay visible in each cell and what could be explained elsewhere.
Assignment tiles from First Draft, Workbench and the final Revamp, enlarged for comparison.
The first-draft tile gave the shift name, time and store their own lines. A small colored marker distinguished the shift type. That made one assignment explicit, but repeated the same three-part structure throughout the calendar.
The workbench tile cuts off both “Shift A · BLR…” and “12 pm — 3…”. The time range competes with the shift and store labels for space.
The final cell makes the time range the main label and uses the surface to communicate attendance status. Store and attendance details are available separately. This gives the weekly grid a consistent structure for comparing shifts across employees and days.
The earliest designs explored grouping the calendar by shifts or by employees. Role filters separated packers, shift incharges, QC and security. An orange border and “Editing Roster” label marked the editing state, with Publish Roster kept in the header.
The First Draft board shows the larger context: several versions of the calendar alongside the assignment sheet. These were alternatives for organizing and editing the same dense information.
The assignment sheet showed shift timing, selected days, suggested and allocated counts, and the employees being assigned. The calendar and sheet exposed different levels of the same planning task: an overview of coverage and the details of an assignment.
The workbench developed the create-and-publish flow. It included an empty calendar, editable cells, populated assignments, violation summaries and a publication confirmation. I also explored a shift-based allocation view alongside the employee calendar.
The Workbench create-and-publish sequence shows how the calendar supported adding assignments, reviewing the populated roster and correcting violations.
The warning area named the kinds of violations, including weekly-hours limits, week-off limits, night-shift eligibility and seat shortfalls. Warnings appeared above the calendar while affected assignments were marked inside it. The assignment dialog kept selected days and allocation counts visible during the edit.
The final version used compact rows and a shared legend for ongoing, complete, half-day, failed, absent and pending states. Week off, leave and holiday appeared directly in the cells. Shift times remained visible across the week.
Half-day used a striped fill. Week off used an icon and a label. These details distinguish worked shifts, incomplete attendance and days when no work was scheduled. The shared legend explains the status vocabulary once, outside the repeated tiles.
The Roster Plan could expand above the employee calendar to show shift-level counts and adherence. Overtime appeared as an additional shift within an employee’s row. Tooltips held employee and attendance details, and the daily view laid shifts out against a time axis.
The full final revamp board shows the final design’s collapsed and expanded plans, overtime, tooltips and daily timeline together.
The redesign changed where each piece of information lived. Shift times and status stayed in the weekly grid. Coverage sat in the expandable plan, and attendance details opened in tooltips. Each tile carried less repeated text, leaving more room to read the roster across the week.