Как backend-разработчики RedLab создали ecom-сервис
Компания RedLab оптимизировала работу интернет-магазина
Задача:
Срочно модернизировать систему, реализовать программные и архитектурные изменения в backend-компоненте, который отвечает за внутреннюю логику работы сервиса.
Причина:
К моменту обращения веб-сервис имел несколько значительных недостатков: медленную доставку контента и большую нагрузку на базу данных.
О проекте
Интернет-магазин для покупки товаров имеет интеграцию с платежной системой, удобно спроектированный каталог, поиск по сайту, «умный» фильтр и программу лояльности. Для ускорения загрузки страниц и улучшения обработки пользовательских запросов клиент хотел увеличить производительность серверной части продукта.
Перед RedLab стояли следующие задачи:
- Оперативно предоставить специалистов с необходимым уровнем компетенций: подключение за 24 часа команды из 5-ти backend-разработчиков.
- Оптимизировать работу ПО: обеспечение высокой скорости загрузки страниц и стабильной работы интернет-магазина при увеличении числа покупателей.
- Улучшить систему обработки заказов: быстрое выполнение вычислений, необходимых для предоставления ответов пользователям.
Реализация
Технологический стек:
- Java
- Spring
- PostgreSQL
- React
- Node.js
- MongoDB
- React Native
- Redux
- HTML
- CSS
- jQuery
После получения запроса мы приступили к формированию проектной команды:
- За 2 часа подобрали кандидатов строго с релевантным опытом: project-менеджера, аналитика, трех Java-разработчиков и двух React-разработчиков. В течение последующих 14 часов клиент провел технические интервью со специалистами и удостоверился в их экспертности.
- После утверждения сотрудников оформили доступы, получили токены и осуществили подключение команды к ИТ-инфраструктуре клиента.
- Детально изучили проект, функциональные и бизнес-требования к продукту, рассмотрели используемые технологии и зафиксировали результаты, которые компания ожидает по завершению работ.
- Совместно с заказчиком провели оперативный онбординг, что позволило в первый же день приступить к работе.
В ходе проекта были реализованы следующие задачи:
- Выполнили процедуры бэкапа, а также кэширование, чтобы сохранить статические ресурсы и результаты запросов. Удалось избежать повторных вычислений на сервере.
- Реализовали индексирование для ускорения поиска, а также использовали репликации и шардинг для распределения нагрузки.
- Интегрировали сеть доставки контента (CDN), которая помогает ускорить доставку изображений до покупателей.
- Доработали механизм начисления кэшбека и накопления баллов. Добавили возможность присваивать статусы пользователям.
Кроме того, в ходе работ компания RedLab обеспечивала прозрачность процессов и трудозатрат, фиксировала промежуточные итоги работ в таск-трекере клиента, а также предоставляла отчеты по каждому из этапов выполненных задач.
Благодаря аутсорсингу разработчиков на Java и React ритейлер смог улучшить производительность интернет-магазина в кратчайшие сроки и сократить время загрузки страниц с 7 секунд до 2,5 секунд.