Адрес офиса:
г. Минск, ул. Интернациональная 36
Время работы:
пн-пт 9.00 - 19.00
Адрес офиса:
г. Минск, ул. Интернациональная 36
Время работы:
пн-пт 9.00 - 19.00

Техническая поддержка корпоративного сайта korona.by

Вводные данные о клиенте

Торговая сеть «Корона» — один из крупнейших ритейлеров Беларуси. В её состав входят 11 торговых центров и более 15 магазинов в восьми городах страны. Сеть объединяет продуктовые гипермаркеты, магазины одежды, бытовой техники и развлекательные зоны, предлагая покупателям всё необходимое в одном месте.

Регион

Беларусь

Ниша/отрасль

Ритейл

Над проектом работали

Руководитель проекта, Backend-разработчик, Frontend-разработчик, QA-инженер, дизайнер, БА

Стек технологий
  • React
  • Laravel
  • Vue
  • Docker
Вводные данные о клиенте
Картинка после вводных

Контекст и запрос

Сеть гипермаркетов и торговых центров «Корона» — один из самых узнаваемых ритейл-брендов Беларуси. Онлайн-платформа компании давно стала важной частью клиентского опыта: здесь покупатели узнают о новых акциях, следят за скидками и событиями в торговых центрах.

Команда «Короны» обратилась к нам с довольно распространённной проблемой. Сайт стало сложно администрировать: любые правки требовали времени и участия разработчиков, модули конфликтовали между собой, а скорость загрузки заметно упала.

Плюс со временем накопились ошибки в логике и структуре, из-за которых страдала стабильность и удобство для пользователей.

Команда «Короны» хотела вернуть сайту управляемость, стабильность и гибкость — чтобы он не просто выполнял базовые задачи, а помогал бизнесу расти.

Контекст запроса

Задачи

Обеспечить стабильность платформы

Провести технический аудит, устранить накопившиеся ошибки и конфликтующие модули. Сделать так, чтобы сайт работал предсказуемо, без сюрпризов и зависаний

Сделать сайт удобнее

Оптимизировать структуру, обновить навигацию и ускорить загрузку страниц. Сделать интерфейс понятным — как для посетителей, так и для команды «Короны»

Подготовить платформу к развитию

Обновить архитектуру и технологии проекта, чтобы новые идеи и функции можно было запускать легко и без риска для текущего функционала

Что сделали

Работу над сайтом мы начали с раздела «Акции» — именно он создавал больше всего сложностей и для команды, и для пользователей.

В административной панели не хватало гибкости: каждое изменение требовало участия разработчиков, а ошибки в фильтрах постоянно возвращались. Пользователям, в свою очередь, было непросто быстро найти нужное предложение — фильтры пересекались, акции дублировались по городам, структура выглядела перегруженной.

Мы начали с анализа поведения пользователей и логики работы раздела. На основе результатов перестроили всю архитектуру:

  • Добавили новые уровни фильтрации — «Тип акции» и «Категорию второго уровня», чтобы сделать поиск по акциям интуитивным и разгрузить выдачу;

  • Полностью переработали административную часть: теперь контент-команда может редактировать URL, заголовки, метаданные и SEO-настройки без помощи разработчиков;

  • Создали новую вкладку «Подкатегории» — единое место, где можно управлять иерархией раздела, менять связи между категориями и контролировать SEO-параметры на уровне каждой страницы;

  • Убрали дублирующие поля и добавили визуальные подсказки, чтобы редакторы сразу видели ошибки и могли быстро их исправить.
Контекст запроса

Оптимизация изображений

Параллельно мы провели аудит медиафайлов в разделе. Оказалось, что одно и то же изображение 760×760 px использовалось и в карточке, и в модальном окне. Из-за этого страницы подгружались дольше, особенно на мобильных устройствах.

Чтобы устранить проблему, мы:

  • Настроили автоматическую генерацию изображений в двух форматах — .webp и .png, чтобы подбирать оптимальный вариант под браузер пользователя

  • Добавили создание уменьшенной копии (220×220 px) для карточек — теперь они загружаются моментально, даже при слабом интернете

  • Оставили полноразмерное изображение только для модального окна при клике, чтобы не нагружать страницу лишними данными

Результат

Раздел «Акции» стал чище и стабильнее: пользователи находят нужные предложения быстрее, а контент-менеджеры получили больше гибкости и контроля. Скорость загрузки сайта выросла, структура стала управляемой, а админка — удобной и безопасной для самостоятельной работы.
Что сделали

Работа с cookies и фикс более мелких ошибок

Дальше мы перешли к исправлению менее очевидных, но не менее критичных деталей интерфейса.

Во время аудита обнаружили, что часть элементов работала непредсказуемо: формы обратной связи отправляли сообщения без темы — поле просто не подтягивалось, а администраторы не могли изменить количество форм или добавить новую.

Некорректно вела себя и плашка cookies: в мобильной версии кнопка «Настройки cookies» перекрывала бургер-меню, но само модальное окно не открывалось. На первый взгляд — мелочь, но такие баги влияли и на пользовательский опыт, и на соблюдение требований по обработке персональных данных.

Что сделали

  • Исправили логику работы cookies: теперь модальное окно корректно открывается поверх интерфейса на всех устройствах, а кнопка «Настройки cookies» не конфликтует с навигацией

  • Вынесли тексты и параметры cookies в админку: теперь контент-менеджеры могут сами обновлять формулировки согласий, категории файлов и ссылки на политику конфиденциальности без участия разработчиков

  • Переписали обработку форм обратной связи: тема сообщений теперь передаётся корректно во всех сценариях — от заявок с главной страницы до анкет в разделе «Вакансии»

  • Добавили в админку управление формами: команда клиента может самостоятельно создавать новые формы, менять их поля, темы и получателей, не затрагивая код
Контекст запроса

Теперь интерфейс работает предсказуемо, все элементы отображаются корректно, а управление формами и cookies стало прозрачным и удобным — без лишней зависимости от разработчиков.

Проверка и дополнительная оптимизация сайта

После всех доработок мы протестировали сайт, чтобы убедиться: обновления не влияют на скорость и стабильность.

Особое внимание уделили модальным окнам и формам — элементам, с которыми пользователи взаимодействуют чаще всего. На этом этапе мы нашли дополнительный резерв для ускорения работы площадки.

Ранее часть модальных окон подгружалась сразу при открытии страницы и замедляла её рендер. Мы внедрили ленивую подгрузку (lazy load) — теперь окна загружаются только тогда, когда действительно нужны пользователю. Это снизило нагрузку на браузер и ускорило загрузку сайта, особенно на мобильных устройствах.

Контекст запроса

технологический стек

Cтек: ключевая сложность проекта

Когда мы взялись за «Корону», быстро стало ясно: дело не в отдельных багах — проблемы были заложены глубже, в архитектуре и выбранных технологиях. Из-за них даже небольшие доработки превращались в своеобразный квест с препятствиями.

Проблема 1 — фронт/админка

Публичная часть сайта и админка были сделаны на разных технологиях. По сути, это два отдельных интерфейса, которые должны были работать с одним бэкендом.

Из-за этого даже небольшие задачи превращались в цепочку действий. Например, чтобы просто добавить слайдер на страницу, нужно было:

  • сначала подготовить данные и API на бэке,
  • потом сверстать и прописать логику на публичной части,
  • отдельно сделать интерфейс в админке, чтобы контент можно было менять.

В такой схеме задействуются 2–3 разных специалиста, каждый со своей зоной ответственности. Это значит — постоянные переключения, согласования, ожидания, как следствие, рост сроков и стоимости.

Как решили эту проблему

Чтобы убрать «перекидывания» задач между специалистами, мы подключили фулстек-разработчика, который владел всеми нужными технологиями. Он закрывал задачу целиком — от настройки API и логики до верстки и реализации интерфейса в админке. Так мы:

  • убрали лишние согласования;

  • ускорили процесс;

  • снизили риск потери контекста и появления несостыковок между частями системы.
Что сделали

Проблема 2 — бэкенд

Бэкенд сайта был реализован не на чистом Laravel, а на его самописной надстройке — фреймворке под названием Tager.

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

Как решили эту проблему

  • Тестовая копия. Развернули полную копию проекта на отдельном стенде — все эксперименты проводились без риска для боевой версии;

  • Reverse-engineering. Изучили структуру Tager и составили карту зависимостей: какие модули связаны между собой, где хранятся данные;

  • Поэтапные правки. Вносили изменения по одному функциональному блоку за раз (фильтры → формы → модалки → изображения);

  • Ручное тестирование. После каждой итерации проверяли ключевые сценарии — фильтрацию, отправку форм, обмены данных, авторизацию, отображение модальных окон.
Такой подход позволил нам практически на 100% исключить сюрпризы, т.к. изменения проходили только после полного подтверждения работоспособности на тестовой среде.

Итоги

Проект для сети «Корона» стал примером того, как техническая поддержка может решать стратегические задачи бизнеса — не только устраняя ошибки, но и восстанавливая управляемость, архитектурную целостность и удобство администрирования.

За время проекта мы:

  • провели аудит и устранили системные ошибки, влияющие на производительность и стабильность;
  • перестроили архитектуру ключевых разделов, включая «Акции», и сделали админку гибкой и безопасной;
  • внедрили ленивую подгрузку модальных окон и оптимизировали работу форм обратной связи;
  • улучшили UX и скорость сайта, особенно на мобильных устройствах;
  • создали базу знаний о внутреннем фреймворке Tager, чтобы дальнейшая поддержка и развитие проходили предсказуемо.

В целом сделали всё, чтобы вернуть клиенту контроль над платформой.

Такой формат работ подойдёт проектам, которые развиваются годами и постепенно теряют прозрачность: когда кодовая база усложнена, документации нет, а любое обновление становится риском.

В таких случаях техническая поддержка превращается в инженерную задачу — где важны не скорость, а понимание системы, аккуратность и точность решений.

  • Давайте знакомиться! Расскажите о своём проекте
    Услуги
    Обязательное поле
    Планируемый бюджет
    Выберите пункт
    Не знаете, что рассказать нам о проекте?
    Тогда скачайте подготовленные нами вопросы, которые помогут нам лучше узнать Ваши требования к проекту.
    Скачать бриф-анкету на разработку сайта
  • Хотите больше узнать о нас? С радостью всё расскажем!
    Любите звонить?
    Звоните по номеру
    +375 (29) 626-44-35
    Любите писать на почту?
    Пишите сюда info@imedia.by
    А можно писать сразу в телеграм
    Если выбираете подрядчика на конкурсе, нас можно пригласить в тендер

Другие проекты

Используем cookies, чтобы пользоваться сайтом было удобно