Create compliant schedules
Quickly plan schedules that align with contracted hours, labor laws, and scheduling rules.
Helping Schedule Managers move from repetitive manual planning toward automated schedule creation — while balancing customer needs, technical constraints, and an evolving design system.
Phase 1 established the implementation and administrative foundation for automated scheduling. In Phase 2, the focus shifted to designing Oracle’s Advanced Scheduling solution: an automated experience that helps Schedule Managers create schedules more efficiently.
To better understand customer needs and inform product direction, I initiated a partnership with our internal research team. The research uncovered a key insight that influenced how scheduling information should be organized and presented.
As the project evolved, technical limitations constrained what we could deliver in the initial release. Anticipating these challenges, I explored alternative design approaches to ensure we could still deliver a valuable V1 experience within the available constraints.
I designed and delivered an automated scheduling experience that enables Schedule Managers to generate schedules and automatically assign shifts based on existing work patterns, shifts, and scheduling rules — reducing manual effort and providing a more efficient path to schedule creation.
This release represents V1 of a multi-year initiative, establishing a foundation for future enhancements to the advanced scheduling experience.
The project focused on the core scheduling workflow: generating a schedule from a blank slate, reviewing and editing assignments, and publishing the finalized schedule.
Schedule Managers must continuously evaluate staffing needs, worker availability, contracted hours, scheduling rules, and labor regulations. They need to ensure the right people are assigned to the right shifts while meeting operational and workforce requirements.
Creating compliant, well-balanced schedules is time-consuming and repetitive. Managers need to understand coverage at multiple levels: whether enough registered nurses are scheduled for a given day, and whether individual workers are under or over their contracted hours.
Quickly plan schedules that align with contracted hours, labor laws, and scheduling rules.
Spot understaffed job roles and shifts so coverage gaps can be resolved before publishing.
Identify workers under or over their contracted hours to help minimize unnecessary overtime and fatigue.
I initiated a partnership with our internal research team to better understand how Schedule Managers identify staffing gaps and make decisions about reallocating workers.
One key question was how much of the schedule they needed to see at once. Would a daily or weekly view be enough, or did they need visibility across the full scheduling period and beyond?
While initial requirements emphasized organizing data by job role and day interval, research revealed that customers wanted visibility beyond the standard five-week scheduling period — ideally across the entire year. They needed context to recognize coverage patterns and evaluate opportunities to reallocate workers across days and shifts.
“Do I have enough day nurses on Monday? If not, could I ask a night nurse to come in earlier, or could I ask a Tuesday day nurse to come in on Monday instead?”
Design implication: The experience needed to do more than display staffing gaps. It needed to give managers enough scheduling context to evaluate alternatives and make informed staffing decisions.
My explorations focused on two questions: how much scheduling information should be visible at once, and how could I maximize the amount of useful information on screen?
I explored daily, weekly, and two-week views, informed by competitor analysis and customer research. Participants expressed a strong preference for continuous scrolling across the full five-week scheduling period, making it easier to understand staffing patterns without repeatedly switching views.
Using the Redwood Gantt page template, I explored its built-in parent-child grouping pattern to organize resources by job role. However, the indentation in the resource column created excessive empty space and reduced the amount of scheduling data visible on screen.
I explored organizing shifts chronologically while placing open shifts at the top. This brought staffing gaps to the forefront and helped managers focus on coverage needs before reviewing already-assigned shifts.
I explored grouping multiple open shifts rather than displaying each as a separate row or node. I collaborated with the Redwood Gantt design team to develop a customized Gantt node component, reducing visual repetition and preserving more scheduling context on screen.
I hadn't seen other designers working on Workforce Management products actively partnering with our internal research team, so I took the initiative to establish that collaboration. We worked through how to partner, clarify responsibilities, and make research useful to the design process. The partnership also encouraged greater awareness of the research team's services across the team.
Research indicated a preference for continuous scrolling across the five-week period, but technical limitations affected what we could support in V1. Because I had anticipated implementation constraints, I had explored an alternative approach. I could pivot while keeping the core customer need — easier visibility into staffing information — at the center of the design.
The Redwood Gantt component was evolving alongside my project, creating gaps between its capabilities and the scheduling experience's needs. As the enhancement backlog grew and priorities shifted, our VP directed the team to limit enhancements to high-priority requests.
I partnered with the Redwood Gantt product manager and developer on a practical visual customization rather than relying on major changes to the shared component. After delivering V1, I pursued Oracle's Redwood affiliated program to explore adding the customized components to the shared library for other designers to use.
What I took away: Constraints don't remove the need to advocate for users. They make it more important to identify the underlying need, explore alternatives early, and collaborate closely with product and engineering partners.
I designed and delivered V1 of the automated scheduling experience, enabling Schedule Managers to generate schedules and automatically assign shifts using existing work patterns, shifts, and scheduling rules.
The solution established a foundation for a more efficient scheduling workflow, helping managers move from manual schedule creation toward automation while keeping staffing requirements and scheduling constraints in view.
Generate schedules and assign shifts based on work patterns, staffing demand, and scheduling rules. Support 15-, 30-, or 60-minute intervals, with drag-and-drop adjustments.
Review variances across FTE hours, budgeted hours, and staffing demand to help balance coverage requirements with workforce and budget constraints.
Account for labor laws, union regulations, minimum and maximum hours, fatigue management, seniority, and other scheduling rules.
As V1 of a multi-year initiative, this release established a starting point for expanding Oracle's advanced scheduling capabilities. The work also created an opportunity to feed practical component improvements back into the broader Redwood design system.