The Intelexity team has developed a marketplace platform from concept to market launch. A marketplace is an online platform where numerous sellers offer their products or services, and buyers can search, compare, and choose the most suitable offers.
Our team of engineers initially focused on creating a solid foundation for handling a large flow of buyers and sellers. Today, the marketplace we have implemented offers over 3 million items from more than 6,000 sellers and is visited by over 200,000 unique users daily.
More about some of the implemented features:
For the client's team:
For suppliers:
For buyers:
Development:
As part of the Marketplace project, our team of engineers developed an architecture that fully meets the demands of high load and high availability. To ensure business operations, we used more than 20 microservices interconnected by the RabbitMQ message queue. This made complex and time-consuming computations virtually unnoticeable to the end-user. Various databases were responsible for data storage in the services, including classic SQL PostgreSQL, as well as more specialized NoSQL (Cassandra), KeyValue (HazleCast), and others.
The Development Team implemented:
QA:
Our team of QA engineers ensured the high quality of the product. Over 5000 cases were described. Both functional and non-functional load testing were performed using Jmeter. A framework for automated testing was also created, which was launched during the build stage. We used TestRail, RestAssured, Selenoid in our work.
DevOps:
As part of the Marketplace project, we built a full CI/CD process for the rapid delivery of changes for more than 20 microservices to production. To build CI/CD for such a complex system, we used Gitlab CI, Helm, Nexus, Chart Museum. We developed build pipelines from scratch for system components with built-in quality checks of the written code and vulnerability checks (SonarQube, Dependency Check).
As part of the Marketplace project, our DevOps engineers built a fail-safe hardware cluster of more than 50 SuperMicro servers, interconnected by Mikrotik, Huawei routers, and switches. For storing a large volume of data, Infortrend, Synology storage systems were used. Various monitoring systems were used to observe the cluster, including Zabbix.
As part of the Marketplace project, our DevOps engineers deployed a Kubernetes cluster to manage the microservice architecture. Integration between K8s and ProxMox was configured for the operation of databases and RabbitMq and Kafka queues. In addition, a backup system based on Synology backup storage technologies was set up.
For the distributed system, the DevOps engineers of our team built a monitoring system based on the ELK stack for monitoring business errors; Zabbix for the hardware part of the cluster, as well as Grafana and Prometheus for monitoring and alerting about failures within the k8s cluster.
Our team configured a business data analysis (BI) system. The analysis system was based on the Hadoop, Hive, Spark, Apache Druid, and Kafka stack.