For one of its clients, MakoLab developed an advanced platform for creating comprehensive online car presentations online.
It supports the car sales process on the Internet and is now being used by companies both in Poland and globally. Shortly after the launch of the platform, nearly half a million photos of vehicles offered for sale online had been processed through it. Given the rapidly growing requirements concerning data collection and processing and, at the same time, faced with the need to ensure that the services provided are of the highest possible quality, the developers of the application decided to transfer it to the Microsoft Azure cloud platform. The implementation was carried out by a team of experts from MakoLab, a certified Microsoft partner in Poland.
Features of the solution
The solution makes it possible to prepare virtual presentations of vehicles online. Using the mobile application, people responsible for selling cars can put together a professional presentation of a vehicle, with a 360-degree view in just a few minutes. The advanced tool provides automatic photo import and creates a ready-to-publish presentation by drawing on detailed data about a given vehicle from the central Eurotax Glass database. Once ready, the offer can be automatically exported to dealers’ websites or car sales portals.
The growing popularity of the solution and the interest expressed by dealers encouraged the creators of the tool to make a further investment in its development and move it to the Microsoft Azure platform, in other words, the Microsoft cloud solution that provides dedicated mechanisms for processing and storing large quantities of data.
Platform migration to Microsoft Azure. Significantly improved scalability
What were the reasons behind the decision to transfer the platform to Microsoft Azure?
Bogusław Święcicki, Head of Research & Development at MakoLab, explains it like this:
The decision was primarily driven by the rapidly growing needs to increase server resources in connection not only with the growing number of users and cars being presented, but also with the possibility of fast upscaling, depending on the requirements at a given time. With that in mind, we recommended migrating the solution and came to an agreement on the type of support to be provided by Microsoft. In our shared opinion, based on previous analysis, this was the best possible option for the solution, mainly on account of the support provided by an experienced Microsoft architect and the opportunity of making a POC available to our developers.
The real use of resources. Challenges.
The main challenge arising from the project’s business conditions was the problem of estimating needs in terms of performance and the disc resources needed by clients in order to launch the current processes on the platform. To this end, we implemented an App Service Plan. Depending on resource consumption, it is possible to manage performance effectively and to increase or lower it extremely rapidly. It works particularly well for marketing campaigns and the ensuing increased user activity.
With this platform, the vital element is the file storage mechanism, Blob Storage, which is a solution both economical and flexible. The space is theoretically unlimited, but the client only pays for what they use. In addition, the easily upscaled SQL database facilitates clients’ data storage and the maximum use of resources by way of the Elastics pool. The project also employs the Cosmo DB function to store exported advertisements.
Monitoring the availability of services and their proper operation
Another critical challenge we faced with the platform was monitoring the availability of services and the accuracy of their operations. Azure Monitor and Application Insight mean that it is possible to identify problems in real time and immediately react to any irregularities in the operation of the application. Ensuring the security of services and the correct implementation of the platform is equally as vital. The Azure Advisor recommendation service helps to detect atypical requests and immediately informs the administrator when something occurs which is inconsistent with the applicable standards. This ensures the flash exposure of any gaps in the system, which can then be quickly diagnosed and repaired.
Easy configuration and test environment management
The developers of the tools were faced with the necessity of using an independent SMTP server for mass mailing. The Send Grid function is perfect for configuring notifications from the system with information concerning queries about a product. Azure DevOps makes it possible to configure the code repository in one place and rapidly build and publish new versions of the application. It also facilitates the management of production and testing environments and integration with other Microsoft tools, in other words, Microsoft Teams, which means the team can immediately be informed of changes or emerging problems.
As Szymon Wojciechowski, the IT Project Manager leading platform development project at MakoLab, explains:
The use of Microsoft Azure’s functionality has provided both more scalability and savings. On the one hand, theoretically, the possibilities are unlimited, and on the other hand, the fees are only calculated on the basis of the resources that are called upon and used. In the case of the platform, this could involve uploading more photos to the system, for example, or a sudden increase in the traffic on pages, resulting in the use of more server resources at a given moment.
Microsoft Azure is also convenient for the developers responsible for the trouble-free operation of the application. Using the Application Insights service, the extensive system of logs and metrics facilitates effective and efficient checking as to which requests are not working and not only as to how many tasks have been completed, but also at what time. Keeping track of the application’s operations provides the capability of reacting fast and preventing crises. At the same time, the smaller fragmentation of the code makes it easier to introduce someone new to the project.
Data from the application are stored in a warehouse using LRS (Local Redundant Storage technology). The system is based on three copies of the data held within one data centre. In other words, they are stored on three independent discs, which also affects the security criteria. In addition, thanks to the Soft delete function, it is possible to recover a deleted file over a period of 7 to 365 days. The ability to restore previous versions of the settings is another noteworthy aspect, as is the rapidity with which a test environment can be set up; it can be created by a developer in just a few minutes. This is particularly important when new features and improvements are continually being introduced into the tool, which is a precise description of the platform’s current stage of development.
The efficient migration to the Microsoft Azure platform was possible thanks to the partnership between MakoLab and Microsoft and to their exchange of experience. Combining the knowledge and technology of both made it possible to meet user expectations and, as a result, to ensure the highest possible quality of services for end customers starting the process of buying a car on the Internet.
MakoLab is a digital project house, a team of technology experts accomplishing projects in the digital transformation field. In line with our byword, User-Inspired Solutions, we fuse engineering skills and creativity to create intuitive IT tools for ordinary end users.