
До того как Заказчик пришёл к нам, у него уже был интернет-магазин “Новацентр”, который срочно нуждался в переработке, потому что:
- Использовалась CMS Битрикс, доработки которой стоили неоправданно дорого.
- Был устаревший (не user friendly) дизайн.
- При загрузке данных из 1С (а это более 80 тысяч товаров) сайт зависал, и обновление информации о товарах занимало около суток.
Заказчик понимал, что с таким сайтом увеличить продажи не получится, поэтому решил все переписать с 0.
Мы выбрали следующий технологический стек:
- Django, Python, Postgress для бекенда
- микросервисную архитектуру для обмена номенклатурой на базе RabbitMQ
- и React для фронтенда.
Эти технологии позволяют легко управлять большими объемами данных и быстро обмениваться информацией о товарах.
Реализация:
Разработка функционала интернет-магазина происходила по СПРИНТам. Один СПРИНТ – это 1 месяц работы. В начале каждого СПРИНТа заказчик ставил задачи от бизнеса, которые принимал менеджер проекта с нашей стороны.
Задачи были разные - некоторые простые, и можно было сразу сказать, сколько времени уйдет на их реализацию, а были, наоборот, сложные, которые требовали аналитики и декомпозиции (разделения на подзадачи).
Шаг 1 Постановка задач и аналитика
Руководитель проекта со стороны заказчика приносил «идеи» от бизнеса. Его интересовал конечный результат, а не то, как мы его добьемся. Поэтому мы проводили тщательный анализ каждой задачи:
- Выясняли бизнес–цели заказчика (общались с его отделом маркетинга, руководителями отдела продаж и так далее)
- Изучали, как такая или подобная задача реализована у конкурентов
- Проводили «мозговые штурмы»
Иногда мы рисовали UML - диаграммы (схемы, которые помогают разработчикам, аналитикам и заказчикам понимать, как работает программа), после чего отправляли информацию в отдел разработки, который производил оценку трудозатрат.
В итоге мы предоставляли заказчику решение и сроки разработки. Так было со всеми идеями.
Далее заказчик выбирал задачи, которые мы включим в предстоящий СПРИНТ, и, по завершении согласования, команда приступала к работе.
Шаг 2 Дизайн и прототипы
Перед стартом разработки, мы прорисовывали дизайн. Это дополнительный шаг помогал «синхронизироваться» и понять, что мы видим результат одинаково. Дизайн в данном случае был прототипом - на нем было видно, какие окна откроются перед пользователем, если он нажмет ту или иную кнопку.
Иногда мы меняли планируемый СПРИНТ на основании дизайна – у заказчика могли появиться дополнительные пожелания, но это было редко – чаще всего все «переменные» учитывались на этапе аналитики.
Шаг 3 Разработка, тестирование и продакшн
Разработка функционала осуществлялась по месячным СПРИНТам на основании задания на разработку и дизайна. Конечно, на протяжения всего периода мы осуществляли тестирование. Разработчики сразу передавали выполненные задачи тестировщикам, чтобы оперативно решать возникающие вопросы.
Если появлялись какие-либо трудности (особенно это бывает при настройке интеграций со сторонними сервисами или оборудованием), мы оперативно подключали команду, приглашали сотрудников заказчика и находили оптимальное решение.
Готовый и протестированный функционал показывали на staging-сервере. Заказчик проверял и утверждал задачи. После согласования мы отправляли акт, счет и после оплаты выкатывали изменения в продакшн.
Похожиепроекты


Какихрезультатовудалосьдобиться?
За 6 месяцев сотрудничества наша команда полностью обновила веб-ресурс заказчика, наладила бесперебойный обмен информацией и значительно увеличила показатели конверсии. Созданный интернет-магазин стал лидером в своем сегменте в Крыму. Теперь он работает быстро, выглядит красиво и нравится пользователям.
Нами был реализован следующий функционал:
- каталог товаров
- карточки товаров
- подборки товаров
- фильтры (категория, наличие, цена, бренд и проч., а также по тегам, скидкам и рейтингу)
- понравившиеся товары
- блог
- информационные страницы
- корзина
- онлайн чат в мессенджеры и на почту
- умный поиск
- акции
- микросервис для обмена номенклатурой (товарами) с 1С.
- эквайринг от Юкасса.
- кастомное решение по серверному рендеренгу (SSR) по улучшению SEO.
Конечно, мы продолжаем сотрудничество c «УютСтрой», ведь "нет предела совершенству", а рынок Ecom требует постоянного развития и внедрения инноваций.
Что сделали в рамках последнего СПРИНТа?
В рамках последнего СПРИНТа, мы расширили возможности ценообразования - сделали гибкую систему отображения стоимости. Теперь клиенты могут видеть цену не только за стандартную упаковку, но и за квадратный метр или целую паллету.
Какую пользу это приносит? Представьте ситуацию: клиент хочет приобрести плитку, которая продается упаковками, но ему сложно самостоятельно рассчитать необходимое количество. С новой функцией он просто указывает нужную площадь в квадратных метрах, а система автоматически определяет требуемое число упаковок. Это упрощает процесс как для покупателей, так и для продавцов – калькуляция происходит мгновенно и точно. Вся информация синхронизирована с 1С, откуда поступают актуальные данные о единицах измерения и коэффициентах конвертации, что обеспечивает корректный учет и актуальное отображение складских запасов.
Интеграции
В завершении упомянем про интеграции, ведь это важная часть любого проекта. Вот что было интегрировано при разработке "УютСтрой":
1С и RabbitMQ
Интеграция с 1С через RabbitMQ позволяет накапливать и обрабатывать передаваемые на сайт сообщения (товары). Объем данных теперь не имеет значения, так как благодаря этому микросервису обмен происходит поочередно.
CRM-система
"УютСтрой" использует AMOCRM для управления заказами из 1С.
Платежные системы
Подключен эквайринг через ЮKassa для обработки платежей. Есть функционал замораживания платежа: заказ считается оплаченным после подтверждения наличия товаров на складе менеджером в 1С.
Поисковая система
Интеграция с AnyQuery обеспечивает эффективный поиск на сайте (подсказки, статистика запросов, автоматические фильтры, синонимы и т.д.). Интеграция по API дает гибкость и контроль.
Аналитика
Система аналитики Roistat собирает данные по запросам пользователей и взаимодействию с техподдержкой. Интеграция выполнена в react приложении для веба.
Несколькословобутверждениизадач
Основная сложность в сотрудничестве с “УютСтрой” – это бюрократия. Согласование задач занимало много времени. Например, когда заказчик получал задачи, ему нужно было пройти несколько этапов: обсудить с начальниками отделов, объяснить стоимость, иногда даже привлечь внешнего эксперта, чтобы проверить оценку.
Кроме того, заказчик не мог согласовывать задачи каждый день или каждую неделю. Ему нужен большой пакет задач, который можно утвердить сразу. Это занимало время – неделю или две – чтобы всё оценить. И еще нужно учитывать, что текущие задачи могли пересекаться с новыми, из-за чего трудно дать оценку новым, пока не закончены предыдущие.
Конечно, со временем мы до конца “погрузились” в проект, и процесс утверждения задач стал быстрее. Раньше у нас возникали простои команды, но сейчас мы продумываем задачи заранее. Это помогает разработчикам сразу приступить к новому СПРИНТу после завершения предыдущего.

Технологии
Кейсы,которымимыгордимся





