About the client.
Fandom Sports is an online betting platform with various gamification elements such as mystery boxes, prizes, achievements, events, missions, and leaderboards. It allows users to perform online betting individually or by challenging multiple users.
- 15+ Developers
- 17+ Months Engagement
- Web Solutions
Project Requirements.
Fandom needed to build an in-built gamification service that would enable the site to handle heavy request loads and respond in near real-time. They approached Deqode to expand on this domain and scale up their platform within an aggressive timeline.
The requirements were:
- The system should have the ability to be scaled up
to billions of users with just little effort - Gamification elements should be highly configurable
so that the admin can easily manage them - The system should be highly available, consistent and efficiently handle
the request of millions of users-per-second - To create dynamic, customizable leaderboards for 1 billion users which can provide ranks of users in real-time
Challenges.
- The major challenge was to design a robust architecture for gamification service which is highly available, efficient and could be scaled up to manage data of billions of players in real - time
- The gamification elements should be highly configurable so that the admin can easily manage the various elements and configure them as per his/her requirement
- To make the gamification service fairer, we had to design mystery boxes that open prizes with weighted randomness and should adjust the hit probability of prizes accordingly
- To handle millions of write operations per second
- To create leaderboards that are customizable and to rank millions of users on various leaderboards in real-time.
Solution.
The Deqode team studied the behavioural patterns of the audience, considering all the technical limitations that might appear along the way and added the features that would make this application outstanding among other similar applications.
Our team built a system that utilised distributed technology to store users data and enable consistency. We also,
- Designed a highly robust GCP architecture for gamification service - including the user interfaces and admin consoles for every component of the solution
- Used Cassandra database to process data of billions of players and manage ranks of billions of players
- Implemented Node.js for backend development to execute various asynchronous operations parallelly to reduce response time
- Created custom scenarios for NFL, NBA, MLB and NHL for better user experience
- Developed a leaderboard and custom chat section for real-time updates of debate
- The unique microservice has high availability, turntable consistency and masterclass distributed architecture
Key features of the Solution.
- Configurable Gamification Elements
- Customizable Leaderboards
- Highly Available
- Horizontally Scalable
- Simplified Admin Dashboard
- Secure
- Consistent Tuning of Data