← Back

Premier Sports Lighting

Senior Software Engineer · Since 2025
ASP.NET Core · Blazor Server · .NET MAUI · SQL Server · EF Core · Raspberry Pi · DMX/sACN

Overview

Premier Sports Lighting installs and remotely controls lighting for sports fields. As senior engineer, I work across the whole software platform behind it: the central API, the customer web portal and mobile app, internal support tools, and the on-site controllers that switch and choreograph the lights.

The problem

Field lighting has to come on reliably, on schedule, at sites spread across many customers, often over cellular connections. Customers want simple control from their phones. Staff need to diagnose equipment remotely. The platform had grown quickly, and it needed stronger security, better reliability, and more automation so problems got caught before a customer noticed.

What I built

  • API security overhaul — consolidated user and staff authentication, simplified the JWT design, moved dozens of API controllers behind required authorization, added service accounts for unattended machine-to-machine callers, and fixed a cross-user session leak in the customer portal.
  • Customer portal — Blazor Server app for scheduling, theatrical scene and chase controls, lightning strike maps, and a built-in support ticket system with FAQs.
  • Customer mobile app — .NET MAUI app for per-site field control, built on the existing API, with local-first logging that syncs in the background.
  • Show control on the controllers — replaced a third-party lighting console with direct sACN output on Raspberry Pi controllers, including a chase engine, cached scenes with offline fallback, and music-synced shows.
  • Scheduling automation — automatic sunset-based lighting schedules per field, with customer-set shutoff times, plus a daily verification agent that alerts staff when a schedule is missing.
  • Support tooling — internal MAUI app for remote equipment diagnostics and command sequences, app release and update management, and an email-to-ticket pipeline so customer replies thread back into support tickets.
  • Device provisioning — scripted setup and master imaging for field controllers, with services and watchdogs configured out of the box.

Rejoining the server...

Rejoin failed... trying again in seconds.

Failed to rejoin.
Please retry or reload the page.

The session has been paused by the server.

Failed to resume the session.
Please retry or reload the page.