Drop us a line
If you are interested in the development of a custom solution — send us the message and we'll schedule a talk about it.
Azati team helped the famous CIS financial company to enhance the online banking platform functionality by implementing new features to calculate clients’ benefits and provide free services carefully.
The customer is a well-known banking company that carries out all the primary financial operations, including various transactions and activities such as making or accepting payments, trading, clearing, and settlement of accounts.
It is one of the largest CIS banks by assets, equity capital, loan portfolio, and customer accounts. In total, 465 bank offices were opened all over the world, including a subsidiary bank in the Netherlands and financial subsidiaries in the USA, Great Britain, and Cyprus.
High-quality banking services are the core aspect of ensuring a smooth workflow. Account opening and maintenance, funds transfers, balance tracking, operations history monitoring – all these features are included in online banking services users need every day.
The customer offers standard and advanced online features by the selected tariff plan free of charge if the user reaches a particular “goal”. Each month, the user can fulfill one of the options: a certain amount of transactions, monthly savings, or salary accruals. Upon reaching at least one of them, a corresponding package plan is provided for free.
Therefore, the main Azati objective was to develop the backend solution for the mobile and web version of the online banking application, named “tariff calculator”. Briefly, our team had to create the “goals accomplishment” algorithm assigned to the desired package plan.
Since the customer is keeping pace with the times, we used only cutting-edge technologies on the project, which significantly reduced the presence of any problems with development processes and subsequent integrations and updates.
Project management was built as effectively as possible with an early planning and accurate management workflow, accompanied by two-week sprints, creating all the necessary conditions for developers and their convenient work.
The only and, probably, the main issue on the project was caused by the extensive technical infrastructure of the company itself, which arose some problems for remote work.
# The main challenge:
Generally, the remote team connects via VPN to the customer’s network. However, our engineers had to connect to two different VPNs: the first one for development and the second one for interacting with the client via their custom mailing system. In other words, there was only a local way to communicate with the on-site team.
Therefore, to have a permanent connection to the remote workplace, our developers had to switch from one VPN to another systematically. Such an approach increased development time and complicated the communication process between teams. But due to our proactive approach, it was not such a big deal to cope with the issue.
First of all, our developers entered into the customer’s team for remote work. The team consisted of 4 Software Developers, a Business Analyst, a Product Owner, and a Quality Assurance engineer.
The project management workflow was based on the Scrum methodology. Each sprint was planned every two weeks, where the main loads were planned and distributed for each team member by the team lead. Thanks to a competent business analyst, if some problems arose during development, they were resolved on the fly.
The development process itself included all the most standard software lifecycle stages:
#1 Planning
This step considers setting sprint goals and determining actions to implement them, allocating available resources.
#2 Development
The development step leads to practical problem solving to achieve the sprint goals. The actual user stories are moved as small tasks in the sprint backlog where the real work starts.
#3 Testing and Product Demonstration
The finish line of each sprint is a demonstration of the complete sprint solution. The team composes a review that describes the sprint goals, the tasks set, and how they were solved. Based on the review and demonstration, the product owner decides what should be changed in the further development.
#4 Retrospective and the next sprint planning
A retrospective is conducted based on the product feedback received after the demo. Its main goal is to determine how the development process can be improved in the next sprint to avoid problems and work more efficiently.
The final backend solution has a microservice architecture and works as a layer between data buses and the front-end.
The system we developed received requests from mobile or web applications directly from the bank users. Depending on the package plan assigned to the client, the algorithm began to aggregate all the incoming data. Here we sent requests to third-party customer’s systems, processed the received information, and presented it in a user-understandable form.
The system developed by Azati can be divided into the following microservices:
Tariffs catalog microservice
This microservice is responsible for providing the user with all package plans available by the online banking application. Thanks to it, the user can view the complete list and define the one which can cover his needs.
Tariff calculator microservice
The tariff calculator performs all the necessary calculations to provide free services, taking all the fulfilled stipulations into account.
“Queue” microservice
This microservice “listens” to queues from different sources. It is necessary for synchronous interactions between all systems.
Configuration microservice
All configs for other microservices are stored here.
Since the project has started, our team has accomplished the following tasks related to the development and ongoing updates:
Developed several successfully integrated microservices based on cutting-edge technologies;
Created a high-quality algorithm for calculating the fulfillment of the goals to provide free customer service according to the package plan;
User history was integrated.
At the moment, our developers have finished their participation since our role and responsibilities on the project were accomplished. However, the customer’s product is still evolving, and all the functions developed by Azati were well implemented in production and are successfully used by bank clients.
JavaScript, Ruby
The customer asked Azati to audit the existing solution in terms of general performance to create a roadmap of future improvements. Our team also increased application performance and delivered several new features.
Python
Stock Market Trend Discovery with Machine Learning
At Azati Labs, our engineers developed an AI-powered prototype of a tool that can spot a stock market trend. Online trading applications may use this information to calculate the actual stock market price change.
Python
Semantic Search Engine for Bioinformatics Company
Azati designed and developed a semantic search engine powered by machine learning. It extracts the actual meaning from the search query and looks for the most relevant results across huge scientific datasets.
Java, JavaScript
E-health Web Portal for International Software Integrator
Azati helped a well-known software integrator to eliminate legacy code, rebuild a complex web application, and fix the majority of mission-critical bugs.
JavaScript, Ruby
Custom Platform for Logistics and Goods Transportation
Azati helped a European startup to create a custom logistics platform. It helps shippers to track goods in a real-time, as well as guarantees that the buyer will receive the product in a perfect condition.
If you are interested in the development of a custom solution — send us the message and we'll schedule a talk about it.
JavaScript, Ruby
HR Planning SoftwareThe customer asked Azati to audit the existing solution in terms of general performance to create a roadmap of future improvements. Our team also increased application performance and delivered several new features.
Python
Stock Market Trend Discovery with Machine LearningAt Azati Labs, our engineers developed an AI-powered prototype of a tool that can spot a stock market trend. Online trading applications may use this information to calculate the actual stock market price change.
Python
Semantic Search Engine for Bioinformatics CompanyAzati designed and developed a semantic search engine powered by machine learning. It extracts the actual meaning from the search query and looks for the most relevant results across huge scientific datasets.
Java, JavaScript
E-health Web Portal for International Software IntegratorAzati helped a well-known software integrator to eliminate legacy code, rebuild a complex web application, and fix the majority of mission-critical bugs.
JavaScript, Ruby
Custom Platform for Logistics and Goods TransportationAzati helped a European startup to create a custom logistics platform. It helps shippers to track goods in a real-time, as well as guarantees that the buyer will receive the product in a perfect condition.