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 designed and developed a group of 5 interconnected applications that provide a real-time service, which redefines the traditional flow of ordering & payment in venues, meanwhile working to the benefit of both venue owners and visitors.
A Canadian startup company focused on business automation and digital transformation. The customer decided to make the processes in line with current highly-technological reality.
The customer wanted to empower bar visitors. Allow clients to buy entrance tickets and place orders paying within seconds.
Another opportunity laid in empowering venue owners with an internal business application. This application processes orders and payments, tracks sales statistics reducing costs and attracting more clientele.
The customer builds 5 interconnected applications that are plugged into one robust ecosystem.
Two mobile apps (iOS and Android) for guests
The application for waiters and bartenders
The web portal for a venue owner & administration
CRM for the customer to manage business accounts
We’ve taken the project on the execution phase, which by itself posed a number of challenges.
First of all, the code was written using the outdated versions of technologies (legacy code). The sufficient part of the code was written outside of the paradigm of the chosen framework.Moreover, the code was neither documented, nor it was covered by any tests.
Several problems with 3rd party services integrations existed. Hence, both email service and push-notification delivery service failed to deliver messages smoothly, as sometimes messages failed to reach the recipient. The app’s database was badly designed, which made its data difficult to use. What’s worse, there was no documentation at all.
There were other obstacles to be dealt with prior to adding new features.
At the moment the client turned to us, he was struggling with maintaining the applications all deployed on a non-stable, hardly scalable and cost-insufficient hosting platform.
At the same time, there was an urgent need to technically address the ever-growing load on the system, as on some days — typically on the weekends and during big events — requests for data processing would increase up to 100-300 times compared to the average.
Given the very fresh concept of the project and a high level of uncertainty concerning the product features, there was no strict set of requirements on the project, which makes it increasingly difficult to manage. Moreover, the project has strict deadlines.
These terms pose a great challenge in deciding on system architecture and technical implementation choices.
We refactored code, covered it with tests and created proper documentation. We also optimized and improved application response time, the database structure, eliminated the problems 3rd party integrations.
We made a successful migration to another cloud hosting. Alongside, we setup the on-demand group of clusters, which would start working automatically as the number of requests (load) increases. Thus, the whole system now works safely and reliably — even on the days of an intense load.
To ensure transparency, speed and high quality of work, we established the development processes, client requests tracking and communication, which hadn’t existed before on this project.
It was important for our customer to test the hypotheses before making the final decision on whether to introduce it in the app or not. We’ve used focus group testing techniques. Our team kept in mind that new features could be added anytime as well as the existing ones could be eliminated to achieve maximum flexibility.
The customer wanted the mobile app for venue guests to be published on the App Store before the so-called “patio” period begins. We adopted continuous integration and delivery, so the team started releasing a constant flow of software updates into production.
The solution includes five applications that are connected to one robust ecosystem via the cloud.There are two mobile apps for venues visitors, an application for waiters, an application for avenue owner & administration, a custom CRM for the customer itself.
Consumer mobile applications (iOS, Android):
Application primary functionality includes:
Bartender application (Android):
The primary objective of this application is to provide bartenders and waiters an ability to assign and manage the visitor’s orders via their Consumer app. Staff also use this application to check the entrance tickets that are now encrypted in QR codes.
Merchant Administrator web-application:
This application is intended for business owners and administration staff. There is role-based access. The user of this application can check sales statistics in real time, manage menu and prices, track orders & transactions, etc. The app is highly customizable— it can be used by different venues to satisfy their diverse needs.
Global Administrator web-application:
The primary objective of this application is to provide the customer ability to handle inbound requests from venue owners, and also manage the existing client’s information.It is a custom CRM solution.
The product was successfully launched in Canada in summer 2018 and is now gaining popularity. Soon it will be introduced on the Colombian market. The project is still ongoing; new features are being developed and launched with each release. Now we are working on adding new localization and another payment gateways.
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.