Как интернет-магазин сэкономил в два раза на веб-разработке, отказавшись от инхауса
Рассказываем, как мы, Hawking Bros, помогли крупному онлайн-ритейлеру завершить затянувшийся перезапуск интернет-магазина, увеличить его производительность и отказоустойчивость при средней посещаемости в 75 000 пользователей в сутки.
Сантехника-Онлайн.Ру — это лидер рынка по продажам сантехнических товаров, входит в топ-50 интернет-магазинов России по версии Data Insight. На момент начала работы с нами у клиента уже было две параллельно существующие версии интернет-магазина: старая и новая.
Прежнюю не вывели из эксплуатации, потому что свежая не до конца отвечала требованиям компании. Быстро завершить разработку оказалось непросто из-за разветвленной системы внутренней проверки и согласований: у Сантехники-Онлайн была собственная команда разработки, тестирования и аналитики. На согласование каждой итерации уходили недели — обычная ситуация в enterprise-разработке. В результате к запланированной дате запуска часть решений попросту устарела, зато прибавился груз задач и предложений, которые возникли после ввода в эксплуатацию нового сайта. Привет, порочный круг согласований и обсуждений, который приносит столько боли, но без которого крупному проекту не выжить.
Тем не менее новую версию интернет-магазина запустили, и какое-то время обе площадки делили между собой трафик, что создавало определенные неудобства как для покупателей и дилеров, так и для сотрудников самой компании.
На этой стадии мы и включились в игру. Силы внутренней команды разработки клиент бросил на завершение миграции в облачную IT-инфраструктуру, а мы взялись перезапускать интернет-магазин, взяв на себя фронт, бэк и техподдержку. Стратегию и цели проекта разрабатывал IT-отдел клиента, на нашей стороне было составление конкретного плана тактических действий по направлениям работ.
Мы занимались оптимизацией затрат и ресурсов для разработки. При этом мы не демпинговали и не снижали цену в ущерб себе или клиенту. На проекте была возможность сократить объем трудозатрат. Вопрос был лишь в том, удастся ли клиенту и нам за пару первых месяцев работы частично перестроить процессы, особенно менеджмент, прием и отгрузку итераций правок.
Выбор в пользу 1С-Битрикс
В качестве CMS использовался 1С-Битрикс, который был сильно кастомизирован, что повысило его гибкость и производительность. Поддержание интернет-магазина в живом состоянии постоянно требует тестирования гипотез, внесения корректировок и точечных исправлений. Если все это делать с помощью разработчиков, то о нужной скорости можно забыть. Кроме того, часы ценных специалистов тратятся на мелкие задачи. Поэтому мы расширили функциональность, и теперь контент-менеджеры могут быстро настраивать блоки и обновлять информацию на сайте самостоятельно.
Помимо этого, сотрудники уже много лет работали на Битриксе и привыкли к его интерфейсам. «Переезжать» они не хотели, поэтому мы решили просто расширить возможности текущей CMS.
Интеграции
У Сантехники-Онлайн бОльшая часть оплат и транзакций совершается онлайн — в офлайне функционируют только пункты выдачи. Кроме того, речь идет о высоконагруженном интернет-магазине. А как гласит русская народная поговорка, где видишь ecommerce, там жди интеграций.
Интеграция с 1С, откуда в режиме реального времени и в порядке очереди приходят данные с обновлениями. Процесс непрерывный, так что за актуальность информации в карточках товаров и в целом на сайте можно не беспокоиться. И это даже несмотря на то, что в каталоге компании десятки тысяч позиций.
Интеграция с системой доставок транспортной компаний ПЭК.
- Интеграция с почтовыми сервисами, в частности, Mindbox.
- Интеграция с сервисами рассылок (SMS, e-mail).
- Интеграция с Яндекс.Маркет.
Телепорт и GTM (Google Tag Manager). Оба инструмента нужны отделу маркетинга для сбора данных о поведении пользователя.
- И Sphinx — инструмент для быстрой и точной фильтрации и поиска в каталоге. Его возможности используют крупные компании вроде Superjob и Avito для настройки умного поиска, учитывающего написание слов с ошибками, сокращения, дробные числа, словоформы, синонимы и т.п.
Методология работы
Методологию мы строили, исходя из нескольких условий:
Будут незапланированные задачи. И их будет много, так как это крупный интернет-магазин, где команда постоянно тестирует гипотезы и старается улучшить конверсию.
Нужно строить понятную для клиента отчетность и не превращать срезы по результатам в формальные встречи, а также не теряться в задачах и правильно их приоритезировать.
- Скорее всего, на отдельных этапах понадобятся дополнительные мощности и ресурсы, значит, на проект подключат новых специалистов. Тут мы прикрыли тыл умением быстро масштабировать команду.
С первым пунктом все оказалось так, как мы и предполагали. За неделю число незапланированных задач могло достигать нескольких десятков. Для интернет-магазина это нормальная ситуация, разработчику нужно просто быть к этому готовым. Дополнительные таски как раз относились к категории конверсионных: скажем, исправить баг в форме регистрации. Такие задачи надо быстро внедрять и выносить на бой, а еще нужно сделать процесс разработки не только оперативным, но и гибким, чтобы каждый участник проекта понимал, что происходит и чтобы задачи из разряда «надо вчера» не вытесняли стратегические.
Наиболее эффективным методом оказались недельные спринты: чем короче спринт, тем чаще выходят релизы и быстрее можно получить обратную связь. Это, в свою очередь, дает возможность скорректировать направление работы, опираясь на пользовательские инсайты и фидбек от клиента.
Код-ревью также частично перешел к нам. Это позволило не создавать очередь задач на стороне клиента и не наращивать технический долг. Под нож пошел и первоначальный объем тестирования, так как оно проводилось слишком часто.
Раз в две недели мы встречались очно с топ-менеджментом компании. Встречи проходили в формате рабочей группы — мы разбирали репорт с прошлой встречи и намечали дальнейшие шаги. Таким образом, работала система кросс-контроля по выполнению задач. Клиент проверял нас, мы — его.
Принципы управления проектом
Помимо этого мы помогли заказчику разобраться с тикетовой системой. Команда проекта и задачи существовали в 2 трекерах одновременно: Битрикс24 и YouTrack. Из-за этого таски дублировались, не всегда было ясно, какие задачи в работе, а какие сдвинуты по сроку. Да и в целом, тяжело вести учет и контроль задач одинаково эффективно в двух системах. Принимайте во внимание и тот факт, что одинаковые задачи ставились разными людьми и содержали разные формулировки. Отслеживать дублирование приходилось вручную.
Продолжать работу в двух системах было бессмысленно, и мы отказались от Битрикс24. Он остался для внутренней коммуникации клиента. Задачи по разработке сайта стали обрабатываться менеджером со стороны Сантехника-Онлайн и переноситься в YouTrack, где мы использовали Канбан и ввели приоритезацию по таскам. Параллельно мы вели ежедневную отчетность в Google-таблицах. В отчете у нас рассчитывалось процентное соотношение по задачам по стадиям работ и объем потраченных и запланированных человеко-часов. Клиент всегда видел полную и прозрачную картину того, что происходит на проекте, какие задачи закрыты, какие еще в работе.
Кроме того, для отдельных крупных задач мы использовали диаграмму сгорания. Затем мы внедрили накопительную диаграмму потока (CFD). Последняя позволяла быстро оценить и понять, на каком этапе работы скапливается больше всего задач.
Еще одна особенность проекта — неравномерное распределение нагрузки. Были месяцы, когда мы вырабатывали по 300 часов, а бывало и так, что это число достигало 1500. На этот случай мы быстро масштабировали команду: задействовали дополнительного фронта, бэка или сразу нескольких специалистов, которые быстро погружались в проект. Это позволяло за считанные дни увеличить количество вырабатываемых часов без потери качества.
Результаты
За год мы перезапустили основной канал продаж компании с расширенной функциональностью и постоянной актуализацией данных. Теперь у компании одна площадка для взаимодействия со всеми потребителями. Кроме того, мы помогли клиенту упорядочить работу на проекте и выстроить понятный и прозрачный процесс взаимодействия внутренней и аутсорс-команд.
Если есть желание обсудить кейс, высказать свое мнение или пообщаться, пишите в telegram: @sizyakov (Егор Сизяков).
я понял из статьи что it директор не смог настроить работу отдела разработки и разработка погрязла в бюрократии...
Да, похоже, что разработку инхаус просто зарубили. Судя по описанию доверия специалистам не было, как и свободы действий. При этом продукт у сантехники-онлайн долгие годы выглядел достойно. И раньше команда явно справлялась с задачами хорошо.
В связи с этим вопросов по тексту возникает огромное количество. Почему разрабатывали новый проект, а не развивали старый? Почему не справились с организацией внутренней разработки? Почему решили поменять шило на мыло? Почему решили, что внешняя разработка лучше, чем изменение процесса принятия решения? И т.д.
Крайне любопытно как смогли при этом подружиться с внешними исполнителями. И как смогли работу принять, вообще. Сайт запустили новый?
Очень похоже по статье, что в компании серьезные сложности в организации работы отдела ИТ. А когда ИТ-компания не может организовать ИТ... Это фиаско.
Сантехника-Онлайн — это, в первую очередь, ecommerce с развитым офлайном, а не IT-компания. Многие ведущие игроки на рынке привлекают внешних подрядчиков для закрытия N-ого объема работ, и это совсем не говорит о том, что они не могут выстроить у себя процессы.
Старый сайт вывели из эксплуатации, потому что он устарел по дизайну и с технологической точки зрения, был сложен и дорог в поддержке из-за большого количества легаси-кода. Лучшим вариантом была именно разработка нового проекта.
Посмотрел, да. Раньше очень уважал этот проект, в плане реализации и SEO. Сейчас вижу, что изменился дизайн. Внутренняя структура мне не известна, допустим, что стало лучше. Но первое же тестирование показало, что сайт с проблемами серьезными. Карточка товара не загрузилась, фото не показались, вкладки не переключаются, меню тормозит, сайт тормозит. Решение, похоже, было ошибочным. Но сложно оценить с внешней стороны это все полностью, конечно. В какой срок вы планируете его довести до стабильного состояния?
Что касается "не ИТ-компания". Я понимаю, что есть ещё логистика и много обычных оффлайн процессов. Но сути это не меняет. В компании основной процесс продаж заточен на интернет. И работа должна вестись постоянно. Создание нового легаси вместо старого - это странное решение.
А можете в личные сообщения тут написать, что конкретно не работает? А если скриншоты приложите, будет еще лучше.
Направление я вам показал, откройте карточку просто. Я смотрел акриловую ванну, если отметить точнее.
Компания быстро развивалась, и она хотела сохранить темпы и роста. Поэтому ей и понадобился консалтинг извне по части веб-разработки.
Нет, просто денег на внутренний ИТ-отдел не хватило, поэтому поигрались в "ИТ-компанию" всех распустили и наняли консалтинг извне. Ну и очень много грубейших ошибок в самом начале запуска эпопеи с сайтом 2.0 - отсутсвие ПМа, решения о том, какие технологии использовать, решали хз какие люди без экспертизы. В итоге ИТ-отдел просто сожрал все деньги и закрылся.
А ещё компания опять ищет разработчиков на hh - https://hh.ru/employer/683931.
Так что может быть аутсорс нужен был только чтобы подкопить опять денег и всё-таки свой отдел лучше. Ну надеюсь, они учтут урок от первого ИТ-отдела.
Могу сказать, что история из этого кейса скорее про то, как внутренняя команда создала проект, архитектуру, написала приличный код, но была очень дорогой. И эффективные менеджеры решили проявить чудеса экономичности, уволить специалистов и нанять удаленную команду студентов плохих гуманитарных вузов в качестве разработчиков (иначе качество продукта, который они выдавали, можно объяснить только какими-то клиническими отклонениями.)
Кроме того, статья наполнена откровенным враньем. Рассмотрим по пунктам:
"Силы внутренней команды разработки клиент бросил на завершение миграции в облачную IT-инфраструктуру, а мы взялись перезапускать интернет-магазин, взяв на себя фронт, бэк и техподдержку" - О чем это Вы? Ответственно заявляю, что такого не было. Новая версия была запущена целиком силами внутренней команды.
"Стратегию и цели проекта разрабатывал IT-отдел клиента, на нашей стороне было составление конкретного плана тактических действий по направлениям работ" - Разве покрытие проекта костылями, чтобы делать задачи как можно скорее, можно назвать тактическим планом?
О каком выборе в пользу Битрикс идет речь в статье? Новый сайт был написан на собственной системе классов поверх битрикс внутренней командой.
"Код-ревью также частично перешел к нам." Тут нужно отметить особый уровень компетенций специалистов из Hawking Bros. Редко встретишь программистов, которые не в состоянии настроить автоформатирование кода, когда им об этом напоминают месяцами. Общую бестолковость в написании кода вообще комментировать не буду.
Количество задач, которые делали Hawking Bros, возможно, соответствуют действительности. Но я бы скорее назвал это планомерном разрушением неплохого проекта, чем созиданием.
Никита, привет!
Отлично помним тебя как участника команды с-о.ру. Ты оставил хорошее впечатление как разработчик. Никогда бы не подумали, что у тебя затаилась обида на нас и твоего бывшего работодателя, и ты целенаправлено создашь аккаунт для ответа на пост.
Ты действительно считаешь, что мы не обсуждали текст кейса с нашими коллегами? Мы привыкли согласовывать такие важные моменты и в этот раз сделали тоже самое.
История про разработчика, который считает, что его код самый лучший — стара как мир. Но этот кейс не про код, а про бизнес. Еком — это огромная машина, в которой завязаны десятки служб от курьеров до внешних аудиторов. И единственное, что ведет к планомерному уничтожению проекта (бизнеса), это увлечение сотрудников процессом, а не результатом.
В любом случае спасибо тебе за комментарий и удачи тебе в твоей карьере. Повторимся: ты оставил хорошее впечатление и мы были бы рады посотрудничать с тобой на других проектах.
Печально что вы так и не разобрались, что Никита, за редким исключением, практически не писал код и занимался другими задачами, одной из которых был код-ревью, насколько я понимаю, также код-ревью "поделок" и вашей команды, поэтому доверюсь его оценке качества вашей работы.
Позволил себе вмешаться, потому что вы явно не поняли главную мысль комментария, на который пытались ответить, и перевели все в отстраненные разговоры про код, бизнес и т.д., а заключается она в том, что можно приукрашивать, но откровенно врать не хорошо, даже в интересах бизнеса. Также печально слышать, что в этом обмане века замешаны еще и ваши коллеги.
Евгений, думаю, мы вполне поняли, что он хотел сказать, так как имели возможность поработать вместе на проекте. И, повторимся, будь кейс с "приукрашиваниями" или "обманом века", клиент бы не дал опубликовать его. Всего доброго.
Это не тот ресурс, где про сантехника-онлайн.ру принято писать что-то хорошее.
Мы пишем об организации работы на этом проекте и о том, что сделали. Все основано на собственном опыте.
Ну и писали бы про работу на крупный ресурс, торгующий бракованнми сантехизделиями, читатель бы догадался о ком речь.
это вам не повезло, мне все в порядке доставили
Очередная статья для того чтобы продать Битрикс.
На самом деле сегодня всё больше компаний предпочитают наоборот именно инхаус команды, т.к. они работают только на них, всегда под рукой и т.д. Другое дело, что здесь судя по всему, менеджмент не смог выстроить процессы и решить кадровые вопросы.Закономерным результатом этого и стала убыточность штатной команды.
До кризиса многие компании предпочитали инхаус, это правда. Но вот после пошли сокращения. +За последние 10-12 лет было несколько периодов, когда все лихорадочно собирали инхаус, а затем, при наступлении очередного кризиса, сокращали его. Это цикличный процесс. Говорить, что инхаус всегда и в любом случае лучше аутсорса некорректно.
Когда компания переживает трудные времена, она в любом случае будет так или иначе экономить. К слову, на аутсорсе это к сожалению то же сказывается.
Но, здесь, как я понял из статьи, другой кейс...
Как свидетель этих событий просто офигиваю от написанного, но если рассматривать это чисто как пиар Hawking Bros то в общем и пофиг. Предлагаю всем поработать с ребятами, чтоб убедиться и в качестве разработки и менеджменте.
Начав читать статью испытал множество эмоций, негодование сменялось недоумением и обратно, но добравшись до конца понял, что текст юмористический, высмеивающий и доводящий до абсурда всякие приемчики недобросовестной рекламы, топорного маркетинга и неприкрытого пиара.
Достаточно одного Битрикса, дальше можно не продолжать, если на входе куча Г-кода, то на выходе будет такая же куча Г-кода плюс новые баги ))))