Distributed Systems & Networking
UOLJudge – Real-Time Concurrency Platform
Role: System Architect // Timeline: 2025 – 2026

Core Metrics
- Handled 70+ concurrent participants and 50+ active submissions natively
- Achieved sub-100ms broadcasting for live leaderboard updates
- O(1) memory cleanup achieved for dead socket connections
Technology Stack
Languages
TypeScript, Node.js
Orchestration
WebSockets (ws), Docker Compose, Azure
Data Layer
PostgreSQL, Prisma
Frontend
Next.js
The Problem & Constraint
A live competitive programming and code-grading platform utilizing optimized database concurrency and custom WebSocket implementations to maintain zero-drift state synchronization across multiple university labs.
System Topology
Utilizes a standalone Node.js `ws` server independent of the Next.js frontend to maintain live competition state. Handles submission bursts entirely without an external Redis queue by optimizing PostgreSQL connection pooling (300 concurrent) and leveraging atomic database accumulator patterns.
Engineering Tradeoffs
- 01
Enforced a strict 'One Active Submission' rule utilizing Prisma `$transaction` at a `Serializable` isolation level to completely prevent TOCTOU race conditions.
- 02
Synchronously upserted a denormalized TeamScore model during submission transactions, replacing expensive on-the-fly aggregations with lightning-fast O(1) reads.