B2B-платформа о вине и виноделии. Пользователи wein.plus — производители и продавцы вин, рестораны. На платформе зарегистрировано больше 235 тысяч участников. Им доступны отраслевой справочник, журнал, каталог вин.
Компания организует выставки и дегустации, куда приглашает своих клиентов, публикует отзывы, обзоры на вина, составляет рейтинги производителей.
2015 - 2022
ПРОБЛЕМА
В 2015 году wein.plus обратились в Resolventa с запросом на полный перезапуск сайта. У основателя и идейного вдохновителя компании Утца Граафмана уже было понимание, почему портал нужно перезапустить и как именно это сделать.
RUS
ENG
Сайт Wein-Plus очень старый. Первые строки кода относятся к 1998 году. В прошлом было несколько перезапусков, последний большой (Wein-Plus 2.0) в 2012 году. Но в прошлом каждый перезапуск основывался на старом коде, старых таблицах базы данных и старой архитектуре.
Теперь мы будем создавать новый современный сайт с нуля. Мы называем это Wein-Plus 3.0. Мы откажемся от старого устаревшего кода, переопределим таблицы базы данных и будем использовать гибкую и изящную архитектуру для всех наших брендов. Новый веб-сайт будет основан на современном фреймворке (Laravel).
The website of Wein-Plus is very old. The first lines of code are from 1998. There were some relaunches in the past, the last big one (Wein-Plus 2.0) in 2012. But in the past every relaunch was based on the old code, old database tables and old base design ideas.
Now we will build a new modern website from zero. We call it Wein-Plus 3.0. We will discard old legacy code, redefining database tables and using a slim, elegant design for all of our brands. The new website(s) will be based on a modern framework (Laravel).
Utz Graafmann
Founder & CEO. Wein.plus
Сложность перезапуска сайта заключалась в том, что кодовая база и данные копились с 1998 года. Сначала wein.plus был маленьким форумом для любителей вина. Затем его многократно дорабатывали и расширяли разные люди — фрилансеры, штатные программисты клиента, аутсорс-команды разработчиков. Поэтому в проекте был бардак: код написан как попало, названия функций и переменных на английском и немецком языках, а комментарии не помогали разобраться, что к чему.
Таблицы базы данных и поля в них тоже назывались на двух языках вперемешку. Было сложно понять, что и зачем хранится в базе.
Из-за того, что портал постоянно расширяли и переписывали, он не был единой системой. Связанные данные хранились в разных местах, а некоторые разделы были фактически отдельными сайтами. Иногда при переходе из одного раздела в другой даже приходилось заново авторизоваться на сайте. Клиентам и сотрудникам wein.plus было неудобно пользоваться платформой.
RUS
ENG
О старом веб-сайте мы всегда получаем отзывы типа «Отличный и уникальный контент, но спрятанный за ужасным пользовательским интерфейсом». Я думаю, что эти люди правы!
For the old website we always get feedback like "Great and unique content, but hidden behind a terrible user interface". I think those people are right!
Utz Graafmann
Founder & CEO. Wein.plus
Единого технологического стека у платформы тоже не было. Код одних разделов был написан на чистом PHP без библиотек или фреймворков, для других использовали CMS Wordpress. В таком состоянии сайт не получалось поддерживать и развивать.
17 лет
проекту на момент начала перезапуска
ЗАДАЧА
Разработать новый портал с нуля с помощью современного фреймворка Laravel. А для этого сначала разобраться в специфике области, непонятном старом коде и базах данных.
При этом для клиента важно было полностью сохранить информацию, накопленную за годы работы. На 2015 год в базе данных было 172 таблицы. Все их нужно было просмотреть, понять, что за данные в них хранятся, какие из них и как именно перенести на новый портал.
172 таблицы
нужно было отрефакторить и перенести в новый проект
РЕШЕНИЕ
В течение месяца эксперты Resolventa проводили технический аудит сайта. В результате получился документ на 50 страниц, в котором были описаны особенности проекта, важные детали, техническое задание и срок его реализации.
Разработку новой версии портала разбили на этапы по основным разделам сайта.
Специалисты проанализировали старый код и базу данных для каждого раздела сайта. Чтобы разобраться в особенностях многих функций, нужны были знания о вине и виноделии, которых у программистов нет.
Например, одной из самых сложных задач была разработка фильтра для каталога вин. В нем можно выбрать сорт винограда, страну-производителя, конкретный регион выращивания, год производства. Некоторые параметры важны для экспертов, но не очевидны для неспециалиста: какой пробкой закупорена бутылка или к какому из 20 типов относится вино.
Наши эксперты просматривали таблицы и код, определяли все непонятные детали и собирали пул вопросов. Затем обсуждали их на регулярных онлайн-встречах с клиентом 1-2 раза в неделю. По итогам обсуждения прописывали конкретные задачи для разработчиков.
7+ млн
количество записей в самой большой таблице
18 Гб
вес самой большой таблицы в базе данных
Старый поиск по базе данных, реализованный на MySQL, не мог справиться с большим числом параметров нового фильтра. Он работал слишком медленно и не позволял найти нужные вина в каталоге из 150 тысяч наименований. Поэтому специалисты Resolventa разработали новую быструю систему поиска на основе ElasticSearch.
4 эксперта
выделенная фулстек-команда разработки
РЕЗУЛЬТАТ
Команда Resolventa в течение года разработала и запустила новую платформу. Код проекта теперь написан понятно, в едином стиле, с комментариями на английском языке, если они необходимы. Все таблицы в базе данных нормализовали, заменили имена таблиц и полей на англоязычные и более понятные для разработчиков. Чтобы сайт было проще развивать и поддерживать, написали подробную техническую документацию.
Обновленный сайт стал единой системой, с которой удобно работать и пользователям, и сотрудникам клиента. Все разделы теперь часть одной платформы, где пользователю легко найти нужную информацию. Например, заметно проще стало найти обзор на конкретные вина.
Переход удалось сделать незаметным для пользователей: эксперты Resolventa перенесли все данные и запустили новый сайт без остановки старой версии.
Новая система поиска ElasticSearch помогает пользователям платформы находить на сайте информацию по любым ключевым запросам. На момент релиза она работала на немецком и английском языках, позднее добавили итальянский, французский и испанский. Если в запросе есть опечатка, система понимает это, исправляет ее и предлагает подходящие результаты. Кроме того, новый поиск работает быстрее, чем поиск на основе MySQL.
1 год и 2 месяца
время от знакомства с клиентом до релиза
Команда Resolventa выполнила пожелания клиента:
RUS
ENG
Дмитрий помог нам создать огромный проект. Его помощь и советы были очень полезны. У него большой опыт работы с крупными веб-проектами. Его общение прямое, надежное и быстрое. Было приятно работать с ним на консультационном этапе нашего проекта. Мы продолжили работать с ним на этапе разработки.
Dmitry helped us setting up a huge project. His help and adviсe was very helpful. He has a lot of experience with big web projects. His communication is straight, reliable and quick. It was a pleasure to work with him for the consulting phase of our project. We continue working with him for development phase.
Utz Graafmann
Founder & CEO. Wein.plus
6,5 лет
команда Resolventa работала с wein.plus (до весны 2022 года)
ТЕХНОЛОГИИ
PHP, Laravel, MySQL, ElasticSearch, Vue.js, Docker, Web Push
ИНТЕГРАЦИИ
Google Maps API, Ingenico, Amazon SES, Deepl, Google Text to Voice
Свяжитесь с нами любым удобным способом и получите консультацию у Дмитрия - нашего руководителя.
Россия, Новосибирск, ул. Семьи Шамшиных, 12
+7 913 921 7200
Если вы хотите, чтобы мы заранее подготовились к разговору по вашему проекту, заполните форму обратной связи. Мы изучим всю информацию и договоримся на удобное для вас время общения.
© 2024 Resolventa