A super-app for one of the largest food retail chains in Europe. 10 million MAU

We turned an ordinary mobile app into a super-app with innovative financial services and banking. And powered big data analysis by Metabase BI

Project preview

We've integrated the X5 Bank and Express-Scan services into the application and organized work with data.


This case study describes how an agile approach to organizing teams and processes can successfully solve the challenges of mobile application development.

Client

We were approached by one of the largest corner grocery store chains in eastern Europe. Founded in 1998, it now has 18,000 stores nationwide part of the X5 Group.


The main requirement of the client was to quickly develop a number of services on a fairly short notice. In order to solve their problems, customers were looking for teams that had the right set of experts and could quickly get involved in the work.

imaga Superpower

We know how to select teams for a specific task, quickly integrate into customer processes and get to work immediately.


imaga provided ready mobile development and product analytics teams for the grocery store chain's projects.

Project preview

Tasks

We cooperated closely with the grocery chain's teams on two fronts:


1. Financial services

Two new services (X5 Bank and Express Scan) were integrated into the app.


2. Product analytics

We assigned imaga specialists to work with customer data. We deployed the necessary infrastructure to implement self-service analytics.


Before showing you the results of working together with the client, here's a little backstory.

Background

We have been working with the grocery chain since 2018, and our collaboration began with the development of a mobile app.

Prerequisites

The app is being developed by a sizable group of internal experts, but there are always numerous tasks to complete.


The solution was to bring in a competent performer from the market to strengthen the in-house team.

Project preview

Finservices: Teams


The financial services development team consisted of 8 people (mobile developers, backend developer, tester, analyst, manager).


In less than a week, we immersed ourselves in the specifics of the project, understood the product code, studied the backlog and prioritized tasks together with the Product Owner of Pyaterochka. Then, we started the development.

Finservices: integration of X5 Bank and Express Scan

The tasks were implemented in a month . To meet that deadline, we built the following workflow:

  • On the grocery chain's side: product expertise, ideas and features.
  • On imaga’s side: participation in solution design, development, implementation of functional and segmentation logic, integration with third-party systems.

Financial services: X5 Bank


At the end of 2021, X5 Group launched by financial services under the X5 Bank brand. The first was the digital X5 Card, which combines the grocery chain's loyalty card and banking services (payments, money transfer, refunds for purchases, etc.).


In December 2021, we launched an MVP solution in the grocery chain's app. Since the beginning of 2022, we’ve developing its functionality. For example, we added onboarding, help with frequent card-related questions, and information about specials and bonuses.

Project preview
Project preview
Project preview

The team led development on the app side in parallel with the bank team’s integration development. Due to the specifics of the infrastructure and security rules, there was virtually no opportunity to test the functionality until launch day. But we were able to launch successfully with minimal debugging because we designed the queries, responses, and stubs in a proper way.

Avatar

Dmitry Radaev

Delivery Manager

Brand logo

Finservices: Express Scan

Express Scan is a handy tool for in-store shopping. It’s a service that turns your phone into a cash register. The customer scans the barcodes of goods in the store and pays for them in the app.


We were responsible for integrating this service into the grocery chain app. The work was carried out jointly with the Express Scan developers on the X5 team.

Project preview

We elaborated different behavioral scenarios. For instance, if the user is not allowed to use the phone camera, we’ll let you know about it and assist you in setting it up.


We also didn’t forget to account for the subtleties of sales in certain categories of goods.

Project preview

Financial services: Technology

The work on the project was carried out in the sprints, while the backlog was formed together with the client.


Backend stack:

  • Python 3.9 (FastAPI, aiohttp, Celery), PostgreSQL 11, Redis, RabbitMQ, MongoDB. Docker, k8s.


Frontend stack:

  • Swift, MVP, RSwift, Firebase, SwiftLint, AppsFlyer, SPM, Realm, SnapKit, IVCollectionKit, Alamofire, Fastlane, Gitlab CI.
  • Kotlin, MVVM, Coroutines, Cicerone, Room, Adapter Delegates, Koin, Firebase, Gitlab CI.

Project preview

Analytics: Teams

The product analytics team consisted of two to four people at different stages: analysts, a tester, an analytics team leader, and a manager.


The team was formed in accordance with the client’s needs. Two IGAMA experts were enough for standard tasks at the start. When the project began to develop, the team expanded.

Product Analytics

In the first phase, we operated in the analytics area by collecting data (app + web) and turning it into reports/dashboards for customers within the company.


We then defined the ways of development, approved them and launched the project for the implementation of Self-Service analytics. This made it possible for our staff to quickly locate the required data without the help of analysts.

As part of the task, we have:

  • We created a hierarchy of metrics.
  • We deployed an ETL layer.
  • We implemented a BI tool for data visualization.
  • We developed a data catalog.
  • We prepared the documentation.

Analytics: Metrics hierarchy

Metrics hierarchy is a system of metrics that is divided into subprojects (financial services, OS, loyalty, delivery, etc.) within the grocery chain app. It enables you to identify metric dependencies and evaluate the impact of each process's metric on the ultimate objective.


To create the hierarchy, we completed the following steps:


1. Conducted an audit of all the markup the customer had.


Finding out what was done well and what was not. Prepared the ToR for updating the markup. All critical points were immediately corrected so that unnecessary events wouldn’t clog up the data.


2. Held interviews with product managers.


This step allowed us to establish what data they needed to track in order to make decisions. We delineated all of these metrics, from the more general to the more detailed ones.


Next step: get this data from all sources and transfer it to the Metabase data visualization and analysis service.

Project preview

Analytics: an ETL layer and Metabase

For data visualization, we decided to use the Metabase BI tool. It helps address the tasks at hand and has a low entry threshold for the user.

To employ Metabase, we had to deploy the entire ETL infrastructure.

Project preview

After the launch, we kept up with the ETL layer’s development, connecting more data and sources and converting more Data Studio dashboards into Metabase.


Metabase wraps all collected data into clear graphs, charts, and dashboards. In total, we track almost 140 different metrics, which include:


  • Total MAU (monthly active users)/DAU (daily active users) for the entire app;
  • MAU/DAU by sections;
  • Number of activated plastic cards in a month;
  • Android/iOS installations in a month.

Project preview

Analytics: data catalog


Data catalog comprises metadata (description of the information) in Russian, which can be combined with the backend data. Such descriptions make technical data more understandable and readable.

Project preview

After that, the data is visualized in the Metabase visualizer. Now, the user doesn’t need to waste time and effort on the «translation» of event names (especially in large reports), the information is easy to read and understand.

Analytics: Documentation


After we’d set up all the analytics systems and built a process for working with them, we documented the highlights:


  • We described all the dashboards;
  • We explained how the ETL layer works;
  • We developed protocols for task assignment and team interaction.


This allowed employees to quickly become familiar with the new rules and properly organize their workflow.

This grocery chain is one of the largest data projects, with 100,000 unique events alone, which is a whole lot. Usually the number is around 100 or less. We’ve attempted to lighten the load on the analysts by making use of self-service analytics, which has also sped up the process of gathering the necessary data for data customers. For instance, dashboards have helped us reduce the number of (ad hoc) requests for unloads. It was up to five a month at the beginning of 2021, but now it only happens once every two to three weeks.

Avatar

Tatjana Gainutdinova

Delivery Manager

Brand logo

Analytics: teamwork organization

With tasks planned for the coming week, the work was completed in sprints. We increased the sprints to two weeks after realizing that our tasks were lengthy. Story points were another addition.


The Delivery Manager used in different rituals, introducing or abolishing them to suit the situation.

Project preview
Project preview

Results

  • We maintained in the current analytics system while ensuring quick R&D task development.

  • We simplified handling large volumes of data, making it more visual (Metabase), understandable (Data Catalog) and accurate (Metrics Pyramid).

  • We reduced the workload of analysts for some tasks by over 2 times.

Get in touch

Would you like to say hello or find out more information?

Let's talk