Realtime quiz service

A realtime multiplayer quiz backend built for the ELSA engineering challenge: players join a quiz, answer together and watch the leaderboard update live. Ships as a Docker Compose stack with a written system-design document.

  • Python
  • Docker
  • Docker Compose
  • WebSockets

The brief was a realtime quiz: many players in the same room, answers scored as they arrive, and a leaderboard that stays in step for everyone watching.

Running it

The whole stack comes up with docker-compose up -d, which is the point — the reviewer should not have to install a database to read the code. It claims ports 8000 and 8080; the demo app is on 8080.

Design notes

The reasoning behind the data model, the scoring path and how the leaderboard stays consistent under concurrent answers is written up in system-design.md in the repository, alongside the code.