Introduction
- Tree of Knowledge (TOK) is in the business of creating game formats for cross platforms as well as designing game apps for mobile applications. They have produced some of the iconic reality TV shows such as Kaun Banega Crorepati and Mastermind India Series. TOK are the producers of the Indian version of popular global reality quiz TV show “Who Wants to Be a Millionaire.”
- Nativebyte was assigned the task of building a fresh new quizzing application suite which could help TOK set up new quizzes and make it available at scale with various television channels. The idea was to make the platform up and running in no time as soon as a business requirement comes up.
Problem
- Handling more than five million concurrent users, the quizzing platform has too many moving parts including an admin console, an analytics engine, a game management panel, mobile apps where users can play the game, web app where non-app users can play, SDK to integrate with channels, a game engine and a lot more.
- All these components have to work in perfect harmony and must perform smoothly even when there are several million users simultaneously playing the game, which is a common in television shows. We also have to maintain strong audit logs and use trails.
Solution
- We started with building a micro-service based application architecture with several layers of caching and controls.
- Dedicated micro-services gave us the confidence that we can scale the services independently as per need in realtime and issue with one service would not affect other services.
- We divided the management, game-play and analytics into different subset of apps which are loosely coupled with each other through minimal connectors.
- The games can be set under game, season and episode hierarchy, giving the producers flexibility to run the app campaigns in sync with television programs.
- A common pool of questions can be set and continuously updated by the editing staff. The questions are flagged as used when put in a game stack and removed from available questions as soon as a stack airs. This helps keep the question set always rotating and reduces redundancy of questions in games.
- Editor staff can clone and edit existing questions to create new ones and make notes against questions. They can also create audio/video playback questions. Questions can be created in Indic languages.
- The games are pure configuration driven structures and its behaviour can be changed by tweaking lifelines settings, timing gaps before question, while question and after question appears with methods to also fine-tune the duration for which its options appear.
- Players need not worry about sketchy internet connections and it is smoothly handled by the application with preloading of contents including media files with multi-variance support and offline sync support.
- Each user action is logged and stored including time of response, option chosen, score gained, lifeline activity, etc. This helps build our analytics and fine-tune user experience. At the same time, it helps gain strong audit policy and ensures that all players are treated fairly and justly.
- The admins can see analytics and reports in realtime and drill down and drill up into reports as per need.
- The platform can also talk to third party integrations to drive various business needs.
Products and Toolset
With focus on scale and security, we built this application from ground up taking care of minutest of optimizations. The tech stack is divided into multiple independent layers and runs on highly scalable infrastructure. It can scale up and scale down as per usage, ensuring that the cost is optimized.
Caching at app level, CDN level, code level and database level ensures that the users get smoothest possible experience without any delays or lags, even with a load of more than 5 million concurrent players.
Building the mobile application on a hybrid framework has ensured that we are able to achieve the same level of experience for both – Android and iOS.
Security and Reliability
The application uses state of the art PITR recovery solution along with advanced BCP and DR. The application is well tested by external security experts ensuring that the game is safe and fair for all users.