Client work · anonymized

Real-Time Race Management Platform

Real-time race management for multi-judge fitness competitions — live leaderboards, peer sync, and gap calculation over SignalR on .NET 8 and PostgreSQL.

Role
Freelance Full-Stack .NET Developer
Stack
  • Blazor
  • .NET 8
  • PostgreSQL
  • SignalR

In a multi-judge fitness competition, standings change second by second — and every judge, organizer, and screen needs to see the same numbers at the same moment. Spreadsheets and manual tallies can’t do that. This platform can.

Solution & architecture

The system is a Blazor application on .NET 8 with PostgreSQL for persistence and SignalR doing the real-time work. Multiple judges enter scores concurrently; the platform keeps every connected client in sync, recalculates standings, and pushes updated leaderboards and gaps between competitors as the event unfolds.

My role

Full-stack freelance development — the Blazor front end, the .NET back end, the PostgreSQL data model, and the SignalR real-time layer.

Key technical decisions

  • SignalR as the delivery backbone. Live leaderboards are a push problem, not a polling problem. Updates reach every connected screen in real time, which keeps them consistent during the busiest moments of an event.
  • One leaderboard, everywhere. Standings and gaps are recalculated and synced to every connected client, so judges and screens always agree on the current state of the race.
  • PostgreSQL for event data. A relational model fits the domain — events, competitors, judges, scores — and holds up under concurrent writes from multiple judges.

Outcome

Built so organizers can run competitions with live standings instead of after-the-fact results — scoring, ranking, and gaps updating in real time while the race is still on. Client identity is withheld by agreement.