BETTING APP​

Intuitive app with pre match and live betting

business need

The client reached us to enhance his existing team with several strong mobile developers in order to speed up the process of development and increase overall product quality.

The product is a SaaS for sports betting applications. The client has more than 10 different betting apps, that were originally built from one codebase, but at the moment differ a lot and in most cases could be treated as separate apps.

When the feature is done, it has to be distributed across all apps, which increases the complexity of development taking into account that the code was quite different for some modules.

Overall code quality and architecture were poor and one of our goals was to improve these two aspects.

1Initial Information

Since the application was already live, we had no technical specifications or any other documents. Instead, we were provided with tasks on Jira with each task describing what should be implemented. Besides that, we had several meetings with the client’s team to clarify long-term needs.

2Data analysis and clarification

Work was started with a throughout code analysis and review of the architectural approach. Our goal was to identify potential bottlenecks and places for improvement.

Another point was to clarify requirements specified in Jira tasks as some of them had very limited descriptions.

3Analysis outcomes

After the code review was completed, we identified several areas for improvement that had to be done, to build new features on a good foundation.

We decide to implement “Clean Architecture” in new modules and move the entire project to it. Clean Architecture allows keeping code organized and easy to work with. Refactoring was done to remove useless pieces of code and optimize overall app performance and stability.

Key Features

Pre match and live betting

Following sport event and doing your bets is fast and easy.

Instant update

All bet changes are updated instantly with the help of socket.io technology.

SaaS for Sports Industry

Product is a SaaS that provide it’s services to the clients. Any client can start their own betting business much faster by using this solution.

Development Process

our journey with the betting applicaiton

Beginning

As the application was launched but still was in the early stages with just minimal features, we were able to make significant changes to the architectural approach and implemented a Clean Architecture into the project. That required some rework, but as a result, the project became way more stable and easy to work with.

Solution as a service

The main idea of the service is not the betting application itself, but a SaaS product that provides the ability to companies to start their own betting services. Due to this specific, we had to pay attention not only to the app development but also to the infrastructure behind it, to make sure the product remains flexible and all features can be easily distributed among all clients. Some features were client-specific, meaning that only one or several clients will be using them. Such an approach adds another layer of complexity to development and generally is not desired, as with more clients and more custom features added to the product it becomes practically unmanageable as a whole product, becoming a set of separate applications. For this project, custom features worked due to the limited amount of clients and good organization of code delivery.
mobile devlopment approach, betting app architecture

What is Clean Architecture

Clean architecture stands for an architectural approach which helps to produce systems that are:

  • Independent of Frameworks.
  • Testable.
  • Independent of UI.
  • Independent of storage method.
  • Independent of any external dependency.

The main idea of this architecture approach is that the app must be build based on Dependency Inversion. In the context of architecture, it means that we must decouple and group our objects based on their logical purpose. Also, the dependency has its flow – from more abstract to less abstract; from data to UI implementation. It is pure logic: We have data -> we want to use it -> we want to organize and/or analyze it -> we want to view it.

App features

In more than one year of cooperation, we have implemented a number of interesting features. Among others, users were really pleased with the simple and easy cash-out process and clear bet management.
betting app. screenshot1
Users can view and edit their bets, as well as stay up to date with the current state of their bet through instant updates via the application.

Each user can make a full, partial and auto cash out of all winning bets.

lottery app. screenshot

Results

In 1 year we reworked the product to follow Clean Architecture principles, refactored the code, and greatly improved the overall stability of the solution. GRT extended the functionality of the application by adding various features, basically tripling the amount of functionality the product had before.

Another very important achievement was simplifying the code management of the SaaS platform.

All the above allowed the client to obtain several great contracts and they continue to grow the business using the renewed service.

Similar Projects

Check out what else we have done

CYSM

Application for Columbian shapeware manufacturer

Lottery App

Best 4D Lottery application

The Cultivist

The world’s global art club

ZIROOP

Non-Stop Dating & Clubbing

CYSM

Application for Columbian shapeware manufacturer

Lottery App

Best 4D Lottery application

The Cultivist

The world’s global art club

ZIROOP

Non-Stop Dating & Clubbing