Poker App
Real-time multiplayer poker with matchmaking and tournament support — the latency-sensitive half of a gaming platform.
- Sector
- Real-time gaming
- Scope
- Game server · Matchmaking · Tournaments
- Users
- Players at a shared table
- Status
- Shipped

Poker is unforgiving to build because every player at a table has to see the same hand in the same order, and a dropped connection cannot be allowed to decide a pot.
We built the real-time layer: table state that survives a reconnect, matchmaking that fills seats without stalling, and a tournament structure that runs blind levels and payouts on its own.
The table, the lobby, and the store behind them.




Discovery before specification
Before a feature was specced we watched people do the job it replaces. The spec usually changes after that, and it is cheaper to change it then.
A shared channel, not an account manager
The client had a channel with the engineers writing the code, and a standing invitation to the morning standup.
Something on staging every week
Work was judged by using it rather than by reading a percentage. Two-week plans, re-planned on Fridays, so a wrong assumption cost a sprint instead of a quarter.
Reviewed, tested, handed over
Every change was read by a second engineer before it merged. Tests, a README and a recorded walkthrough came with the handover.