back to projects

Shifts

A scheduling app for security teams. Manages 24/7 shift rotations, availability tracking, and automatic schedule generation.

2025-01 · Maintained · Angular / TypeScript / Tailwind CSS

The Problem

Security teams running 24/7 operations need a way to manage shift rotations fairly. Manual scheduling in spreadsheets doesn’t account for availability, preferences, or equal distribution of weekend/holiday shifts.

What I Built

A scheduling tool that handles the complexity of round-the-clock security staffing:

  • Shift rotation management — define shift patterns and rotation rules
  • Availability tracking — team members mark when they’re available or need time off
  • Fair distribution — algorithm ensures weekend and holiday shifts are spread evenly
  • Calendar view — visual overview of the full schedule with drag-and-drop adjustments

Technical Approach

Built with Angular and a signal-based architecture. The scheduling algorithm considers constraints (max consecutive shifts, minimum rest between shifts, preference weighting) to generate balanced schedules automatically.

What I’d Do Differently

Would add push notifications for shift changes — currently relies on team members checking the app, which means last-minute swaps sometimes get missed.