The primary objective was not simply to provide coaches with a digital tool for creating and managing trainings; it was essential to unify and systematise the entire process. To achieve this, we assisted the client in developing a product strategy and vision. The new system will not only enable the tracking of player progress but will also provide transparent oversight of the coaches' work. We built the training process using existing programmes as a foundation, developing structured cycles from them and implementing the functionality for flexible schedule creation.
The product is currently used by 54 teams, with over 500 players on the platform every week!
We designed the service architecture to scale seamlessly over the next two years as the number of teams, coaches, and players in the league grows. The system is also built to accommodate potential adoption by other leagues in Kazakhstan and abroad.
Since the system handles a moderate load, we chose a classic monolithic architecture for the backend, built with Nest.js, TypeScript, Sequelize, PostgreSQL, and Minio. Resource-intensive operations, such as PDF generation for training plans and logs, were handled by a separate microservice.
We developed the frontend as a single-page application (SPA) using React, Next.js, and TypeScript. To accelerate the launch, we used the Ant Design component library and customized it to fit project requirements.For backend access, we used the Hey API library to generate client code based on OpenAPI specifications, automatically generated from the backend codebase.
Byteminds delivered the project on time, met the goals, and showed great attention to our feedback. The team demonstrated a solid understanding of the project's objectives and communicated transparently with us.