Tapway data-driven project on the monitors

Tapway

Tapway is a web-platform that offers Big Data and Internet of Things solutions to multiple industries. Our goal was to implement tracking functionalities to let the platform provide businesses with a wealth of data for successful marketing research that improves customer experience.

  • Industry - Enterprise Software
  • Services - IT Consulting / Web Development
  • Main Technologies - Python / Flask / DynamoDB

Up to 97%

increase of system performance speed.

90% of Code

executed at the stage of quality assurance.

Big Data & IoT Business Solutions

Tapway is a web-platform that provides business owners with data-related capabilities to help them boost their business efficiency. The cooperation with our company let Tapway improve the real-time data gathering and analytics to allow small and large businesses to conduct advanced marketing research, build personalized customer experience, and make sales go up. To achieve the desired result, our team implemented technologies for big data, data mining, cloud computing, and IoT processes.

Introduction to the Problem

Tapway handed in the project with a ready codebase that required much improvement. As the company’s need for more data started to grow, the system couldn’t handle multiple queries correctly and quickly. So, our primary goal was to scale the service and optimize the system performance speed. Our client required to enable the motion sensors by Aruba, Meraki, and Ruskus to register customers and extract their personal metrics, behavior, movement, and timing data for marketing purposes and customer experience improvement. In the course of the work, our developers was running multiple tests to ensure the high quality of implementations.

Challenges & Solutions

Making a Scalable and Fast Service

The first task was to scale the service, since more data was required to meet client requirements. The initial system’s architecture was implemented incorrectly because too many responsibilities were set for the backend. The growing number of queries were slowing down the system, so we changed the architecture by moving query aggregation from the backend to the database. Earlier, the number of queries received by the database was 80,000 and it could take more than 2 minutes to send and receive a query. By delegating responsibilities to the database, we decreased the number of queries, which boosted the speed from 2 minutes to milliseconds. We used Elastic Beanstalk for dynamic scaling and ensured stable load distribution of the system.

Boosting Speed on Database Level

Our team worked with two databases to improve the system performance. We used DynamoDB as a database to handle an enormous number of action queries. Though its select queries and relation capabilities were slow, it served productively as a cloud database for data aggregation. To increase the speed of select queries, we utilized the relational PostgreSQL database instead of the non-relational DynamoDB. PostgreSQL aggregates consumer accounts and stores them to accomplish select queries. The consumer accounts are retrieved from the access points where the consumer first authorized.

Enabling Motion Sensors Activity

Our developers maintained motion sensors by Aruba, Meraki, and Ruskus that gather data on what exactly people do inside the premises. As soon as a person steps in and out of the store, restaurant, or a similar place, it activates the motion sensors that register the consumer. Then, the guest Wi-Fi system and video technologies enable tracking the number of people present at the spot, counting consumer dwell time, defining zones where the buyers stand, and following their movement. All data is captured in real time and represented on live heatmaps that show how people move in the premises.

Achieving Maximum Code Quality

Because of the system’s specific nature, it was mandatory to accomplish the entire testing process only in the production mode. To ensure the high quality of code and make further system maintenance easier, our specialists ran a sheer number of tests to obtain complex results. Consequently, almost all code was executed during the testing process, which means that more than 90% of code coverage was achieved.

01 / 04

And, as a result…

Our experience in big data projects, information extraction methods, and IoT systems made it possible to successfully implement data collecting and tracking technologies for Tapway. We modified the existing code to ensure a scalable, fast, and responsive service that helps business owners study their customers better and efficiently use this knowledge in business. This platform has already helped many industries grow their profits by providing them with valuable consumer data for winning marketing strategies.

Team & Time

  • 1 Project Manager
  • 1 QA
  • 1 Developers
  • 9 Months

Technologies

  • Python
  • Celery

Make a top-notch system with advanced data technologies now!

estimate
or
contact