Кейс М.Видео
Веб-сервис для персонализации промо-акций — включая анализ поведения пользователей, формирование индивидуальных предложений и обработку данных в реальном времени.
О проекте
Наша команда реализовала проект для одной из крупнейших российских розничных сетей по продаже бытовой техники и электроники – М.Видео. Перед нами стояла задача создать новый микросервис с нуля в составе e-commerce экосистем ы компании. Сервис предназначался для персонализации предложений и формирования индивидуальных промо-акций для пользователей на основе их покупательского поведения, истории просмотров и взаимодействия с сайтом или приложением. Это позволило бы повысить уровень заинтересованности аудитории и увеличить количество новых продаж.
Система анализирует, какие товары клиент просматривает, с какого устройства заходит, как часто возвращается, когда была последняя покупка и какие категории товаров вызывают наибольший интерес. На основе этого формируются персонализированные предложения и акции.
Задачи
Основные цели и задачи проекта включали:
- разработку нового микросервиса с нуля в рамках архитектуры проекта;
- реализацию логи ки персонализированных промо-акций на основе пользовательских метрик;
- покрытие ключевого функционала интеграционными и нагрузочными тестами;
- обеспечение стабильности и масштабируемости системы при высокой нагрузке.
Чтобы выполнить задачи, мы привлекли нашу команду специалистов. Так как проект требовал быстрого запуска, мы сразу погрузились в его особенности и структуру.
Реализация
Мы выстроили работу в гибком формате, что позволило команде быстро реагировать на изменения и параллельно вести несколько направлений разработки. Архитекторы проектировали структуру микросервиса и определяли принципы взаимодействия компонентов, разработчики реализовывали бизнес-логику и настраивали Kafka-потоки для обмена данными в реальном времени, а тестировщики обеспечивали стабильность и предсказуемость системы.
Такой подход помог сохранить высокий темп без потери качества. Мы уделяли особое внимание чистоте и читаемости кода, автоматизации тестов и контролю производительности, чтобы итоговое решение было устойчивым под нагрузкой и удобным в дальнейшей поддержке и развитии.
Технологии
Python
- Проектирование архитектуры нового микросервиса: необходимо было встроить сервис в существующую инфраструктуру М.Видео. Команда разработала оптимальные схемы интеграции и взаимодействия с другими компонентами системы.
- Высокий объём событий в Kafka: стандартные методы обработки сообщений не обеспечивали требуемой производительности. Была внедрена асинхронная обработка данных и оптимизирована сериализация/десериализация сообщений, что позволило достичь стабильной работы системы при нагрузке.
Ключевые задачи и решения
- Микросервисная архитектура: сервис создан как автономный модуль, интегрирующийся в общую систему М.Видео.
- API и события Kafka: реализованы REST API для получения пользовательских данных и событий, поступающих из Kafka.
- Обработка данных в реально м времени: с помощью Faust организована асинхронная обработка потоков событий.
- Оптимизация базы данных: разработаны модели и схемы взаимодействия с PostgreSQL через SQLAlchemy, обеспечив высокую скорость запросов.
- Тестирование: код покрыт интеграционными и перформанс-тестами, что гарантировало стабильность сервиса при больших объемах данных.
Результат
Всего за несколько месяцев команда разработала и запустила микросервис, который отвечает за персонализированные промо-акции. Теперь система в реальном времени анализирует поведение пользователей и предлагает каждому индивидуальные скидки и предложения – это заметно повысило конверсию и вовлеченность клиентов.
Новый сервис органично встроился в архитектуру e-commerce-платформы М.Видео и готов к масштабированию, чтобы поддерживать дальнейшие цели и задачи компании.
Примеры работ

Автоматизированная система для дистанционного обслуживания клиентов
Веб-приложение для дистанционного обслуживания юридических лиц, включая работу с банковскими картами, отчетностью и электронными подписями.

Сервис онлайн-оформления банковских карт
Веб-приложение для управления счетами и заказа карт — включая детские и на третьих лиц