Gaming and assessment backend
Workverse Simulation Platform
The backend, admin dashboard and AWS infrastructure behind a simulation-based soft-skills training game.
- Role
- Technology Architect at Workverse (02/2025 — 03/2026).
- Stack
- Node.js · Express.js · MongoDB · Firebase Auth · AWS · Docker · Next.js
Original illustrative artwork, not a screenshot of a real system.
The problem
A product company needed a complete backend for a training game: assessments, scoring, rewards, analytics, certificates and trustworthy sign-in on mobile devices, plus a dashboard for the organisations running it.
My role & responsibilities
- Architected the full backend on Node.js, Express.js and MongoDB.
- Built assessments, a scoring engine, badge rewards, analytics tracking and automated certificate generation.
- Implemented Firebase Auth, Google OAuth2 and Apple token verification with device-level identity rules.
- Deployed and scaled on AWS; containerised services; set up Nginx and CI/CD.
Architecture
01
Game clients
Mobile clients authenticate through Firebase, Google OAuth2 and Apple token verification.
02
API services
Node.js and Express services, containerised with Docker behind Nginx.
03
Data & storage
MongoDB for game and assessment data; S3 for assets and generated certificates.
04
Async work
SQS, Lambda and SES for background jobs and email, monitored through CloudWatch.
05
Admin dashboard
A Next.js dashboard lets organisations manage learners and licences.
Engineering decisions
- Verify identity on the server for every platform, not just on the client.
- Move slow or retry-prone work (certificates, email) to queues instead of the request path.
Challenges
- Enforcing identity rules per device without making sign-in painful.
- Keeping scoring consistent and auditable as assessment types grew.
What shipped
- Backend platform, authentication, scoring and certificate generation.
- Admin dashboard for organisations (dashboard.workverse.in).
- AWS deployment with Docker, Nginx and GitHub Actions CI/CD.
Next case study
Nimaya Naari
