Сбер вакансии Backend
Сбер вакансии Backend
Сбер вакансии Backend
Написать пост

Системный подход в повышении эффективности работающего веб-проекта

Отредактировано

5К открытий5К показов
Системный подход в повышении эффективности работающего веб-проекта

Рассказывает Никита Семенов, CEO SECL Group

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

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

Как обычно происходит?

Предприниматель задумывает какой-то новый интернет-проект, он создается силами компании-подрядчика или штатной команды, начинается его продвижение. Далее, если идея и реализация проекта качественные, он начинает получать первых пользователей и приносить первые деньги. При хорошем сценарии он в какой-то момент преодолевает точку безубыточности, и проект часто становится дойной коровой. Особенно это актуально для проектов в области электронной коммерции. Именно в этот момент поддержка и доработка сайта часто скатывается в вялотекущую правку багов и, возможно, обновление дизайна раз в 5 лет.

За эффективностью сайта часто никто не следит. Хорошо, если с проектом работает интернет-маркетолог и хотя бы иногда смотрит Google Analytics или Яндекс.Метрику. У некоторых даже есть отчеты по маркетингу, где видно количество посетителей. Нужно больше продаж? Давайте увеличим бюджет на контекстную рекламу или расширим семантическое ядро для SEO. Таким банальным вещам, как цели сайта и отслеживание конверсии, уделяют внимание немногие. О расчете стоимости посетителя и анализе эффективности по каналам я вообще молчу. А происходит это потому, что хороших маркетологов у нас в стране крайне мало, так как все “пишут код” на аутсорсе и не умеют работать с продуктами, да и сами предприниматели не сильно понимают, что делать со своими сайтами.

За интерфейсом сайта тоже никто не следит. Было бы очень интересно посмотреть на статистику по использованию карты кликов самими владельцами сайтов. Думаю, большая половина её никогда не использовала вообще, а ведь это базовый инструмент, который позволяет отслеживать эффективность интерфейса. Чаще всего интерфейс сделали и забыли, по крайней мере до полного редизайна сайта. Мало кто вспоминает про большие проекты, которые постоянно проводят A/B-тестирование, чтобы анализировать эффективность интерфейса и повышать её. Именно от интерфейса зависит конверсия, а значит, и эффективность всех маркетинговых усилий. Добиться роста продаж можно несколькими путями: например, увеличением маркетингового бюджета, что позволит привести больше трафика на сайт, или улучшением интерфейса, что при равном количестве пользователей сайта даст больше продаж. Второй вариант более правильный и должен идти в списке дел раньше. То есть сначала мы должны добиться максимальной конверсии, а потом уже вкладывать деньги в рекламу, чтобы каждый доллар тратился с максимальной отдачей. Или, в крайнем случае, делать это параллельно.

По технологиям тоже все сложно. Постепенно технология, на которой сделан сайт,  начинает устаревать. Выходят новые версии языка, фреймворка или CMS. Обновляться до новой версии никто не хочет, не видя особой разницы для бизнеса. Зачем? Ведь сайт работает! Постепенно в проекте накапливается много старого кода, так как на его рефакторинг при доработке также не хватает денег и времени. Unit-тесты сразу никто не писал, накапливаются и ошибки. Стоимость поддержки начинает непрерывно расти. Технология стареет иногда так, что даже официальную документацию уже сложно найти, а обилие устаревшего кода сильно тормозит программиста. Да и программисты часто успевают поменяться на проекте, а старые после себя крайне редко оставляют документацию. Но этого никто не замечает, ведь задачи в итоге решаются, проект приносит деньги, стоимость поддержки никто не оценивает…

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

Знакомая ситуация? Узнаете себя или своих знакомых?

Первичные документы и информация

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

Приводим в актуальное состояние или создаем с нуля:

  1. Доступы к сайту. Прежде всего по FTP и SSH, это нужно для дальнейшей его разработки. Во вторую очередь — к системе управления сайтом.
  2. Документация. Каждый разработчик должен вести документацию: что пишет, где хранится, как работает и т.д. Чем больше проект, тем больше документации по нему должно быть. Обычно этим пунктом пренебрегают, и новому разработчику очень сложно разобраться в старом коде. По моим ощущениям, документация есть у менее, чем 10% проектов. И если её у вас сейчас нет, то самое время её сделать, а потом еще отдать сторонней компании на проверку.
  3. Сторонние сервисы. Доступ к Google Analytics и Google Search Console, Яндекс.Метрики и Яндекс.Вебмастер, в некоторых ресурсах есть и ряд специфических интеграций, доступы по ним тоже должны быть.
  4. Маркетинговая статистика. Если ранее проводили рекламные кампании, по ним должна быть статистика. SEO? По каким словам, как менялись позиции, были ли фильтры и т.д.  PPC? По каким словам, каким ставкам, какие объявления и т.д. SMM? Доступ к фан-страницам, статистика упоминания бренда, статистика по трафику и т.д. Чем больше старой статистики, тем более эффективной можно сделать дальнейшую маркетинговую активность.
  5. Аудиты. Если ранее проводились какие-либо аудиты — то же самое: должны быть отчеты и результаты.
  6. Описание проекта. Хорошо, когда у нас что-то понятное и стандартное, типа интернет-магазина. Но часто бывают огромные системы, полное понимание которых должно содержаться в специальном структурированном документе. Например, взять хотя бы какую-либо систему расчета рейтинга. У любого нового разработчика будет куча вопросов: “По какой формуле высчитывается?”, “С чем связана?”, “Для чего нужна?” и т.д. А это ведь обычная функция, которая в интерфейсе может выражаться всего одним числом, но быть связанной со всем на сайте.

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

Стратегия развития

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

Для начала нам стоит прислушаться к самим пользователям. Это можно сделать, изучая их поведение на сайте с помощью Google Analytics, Яндекс.Метрики или других инструментов. Можно напрямую запрашивать обратную связь через формы обратной связи или интервью. Можно использовать метод “разумного заимствования” у конкурентов. И еще сотни разных способов. Опять же, многое зависит от проекта. Если он более-менее стандартный и на рынке много аналогов, то должны быть известны Best practices, их нужно просто применить. Если уникален — то тут сложнее, придется экспериментировать.

Есть много разных подходов к разработке стратегий, этот материал не про них. Ресурсы у всех всегда ограничены, поэтому заниматься всем сразу вряд ли получится. Я считаю, что нужно начинать с самого важного, то есть с того, что напрямую влияет на прибыль. В частности, проработки самой бизнес-составляющей (все, что связано с развитием клиентов), оптимизации маркетинговых затрат (речь не про урезание, а про повышение эффективности), интерфейса (конверсия и удобство использования) и качества технического решения (оно должно работать стабильно, а стоимость поддержки должна быть оптимальная). По всем этим фронтам нужно сделать срез, а после продумать план действий.

Алгоритм системной работы над проектом следующий:

  1. Провести всесторонний аудит проекта.
  2. Запросить обратную связь пользователей.
  3. Проанализировать прямых и косвенных конкурентов.
  4. Выявить самые ожидаемые и прибыльные для проекта функции.
  5. Расставить приоритеты по внедрению.
  6. Проработать каждый пункт и внедрить.
  7. Отслеживать эффективность внедрений.

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

Большие компании планируют на несколько лет вперед. Когда речь идет об интернет-проекте, даже маленьком, нужно планировать хотя бы на год, а лучше на 3-5 лет. А дальше, постоянно слушая клиентов, эту стратегию можно корректировать. Конечно, в Интернете все постоянно меняется, но кто не имеет цели, тот к ней точно не дойдет.

Product Development

То, что мало кто умеет делать, но от чего зависит вообще весь бизнес. Это развитие продукта вокруг клиента и его проблем. Методология направлена на то, чтобы тщательно и постоянно анализировать потребности клиентов и улучшать продукт. То есть работа над теми вещами, которые приносят деньги проекту. И эта методология применима ко всем проектам. Главное — ответить на вопрос: “Что еще нужно клиенту?”.

Представим, что у нас проект, который предоставляет какую-то услугу или продает какой-то товар. Как нам увеличить продажи? Всегда есть тысяча способов: можно с товаром давать в подарок что-то бесплатно, можно улучшить предоставление услуги (скорость, качество, сервис), можно вообще придумать новый продукт в рамках существующего проекта. Или другой пример, более близкий к нашим реалиям: до сих пор у многих интернет-магазинов нет возможности купить что-либо в кредит. А ведь в оффлайне более 50% товаров продается в кредит! То есть многие интернет-магазины теряют очень большую долю клиентов, хотя, возможно, они вполне успешны и могут продавать действительно много товаров и даже не подозревать, что теряют десятки процентов недополученной прибыли. И таких примеров очень много, они есть в каждом интернет-проекте.

Действительно ли вы делаете всё для развития ваших клиентов? А может, они могут покупать больше и чаще? Эти вопросы мало кто себе задает, и тут часто кроется огромная недополученная прибыль.

Интерфейс и дизайн

Тут самое главное — понимать, что красивая картинка еще не означает удобный интерфейс. У каждого сайта и каждой страницы есть цель(и). И эффективность интерфейса может измеряться только тем, достигает он поставленных целей или нет. Это необязательно продажа чего-либо, это могут быть регистрации, количество просмотренных страниц, написание комментариев и т.д. Все эти цели измеряемы, и над улучшением каждой из них нужно работать. Проблема старых проектов в том, что такие цели чаще всего даже не ставятся. Многие мыслят очень широкими категориями: “У нас есть продукт, нужно его продать”.

Для начала нужно определить основные KPI сайта и самых важных его разделов. Это лучше делать с UX/UI проектировщиком, который хорошо разбирается в проектировании и тематике проекта. Затем нужно проанализировать Google Analytics и Яндекс.Метрику, изучить поведение пользователей. Затем собрать обратную связь от пользователей и подумать над Product Development. И уже после этого начинать улучшать интерфейс, имея на руках все нужные материалы.

Изменения можно внедрять двумя способами:

  1. Вслепую, когда мы основываемся на опыте проектировщика.
  2. Через A/B-тестирование, когда эффективность каждого эксперимента замеряется.

Идеального варианта нет. В первом случае у нас высокий риск человеческого фактора. Даже самый опытный проектировщик может ошибаться (все мы люди). Однако обычно есть очень много очевидных вещей, эффективность которых давно доказана. Во втором случае можно неправильно провести сам тест. И дело тут не в знаниях группы специалистов, которые его будут проводить. Возможно, был выбран слишком маленький участок для теста, возможно, в дни теста пришло большое количество новых посетителей, возможно, пользователи привыкли к старому интерфейсу, и новый, не смотря на то, что он лучше, их просто путает. Вариантов тут может быть много, поэтому с внедрением нужно быть осторожным, но все равно изменение результатов лучше, чем их отсутствие.

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

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

Кроме проектирования интерфейса, еще можно и нужно работать с версткой и графикой. Её можно оптимизировать, чтобы сайт загружался быстрее. Это даст больше удовлетворения пользователям, да и поисковые системы будут выше показывать сайт в результатах поиска. Проверить скорость загрузки сайта можно тут. Проверить корректность отображения в разных браузерах тут. Проверка SEO параметров сайта тут. Проверить на ошибки верстки тут. Google, кстати, не так давно начал учитывать и ошибки валидности, и чем больше их, тем ниже сайт.

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

Технологии

Незаметная для конечного пользователя, но очень важная часть для владельца проекта. В нашем мире технологии очень быстро устаревают. Каждые 2-3 года выходят новые версии языков и фреймворков, а CMS вообще обновляются постоянно. И часто новые версии сильно отличаются от прошлых, дают значительно больше возможностей. С другой стороны, старые версии перестают поддерживаться, и с ними работать становится проблематично. То есть вопрос не стоит о возможностях новой версии, тут вопрос о потере эффективности и скорости разработки.

Техническую платформу любого интернет-проекта нужно постоянно обновлять и держать в актуальном состоянии. Для этого нужно следовать нескольким важным правилам. Во-первых, разрабатывать сразу правильно с учетом будущих обновлений – в частности, в CMS не трогать ядро при разработке, иначе она не обновится. Во-вторых, писать код чисто и понятно, с учетом существующих стандартов качества (например, один из стандартов для PHP). В-третьих, важно комментировать код, чтобы программист, который будет обновлять систему, даже если он её не делал, без проблем смог в ней разобраться. В-четвертых, важно создать и поддерживать актуальную документацию по проекту, где будет полностью описана система с технической точки зрения.

Соблюдать чистоту нужно не только в коде, но в самом наборе технологий. Чем больше проект, тем больше технологий там может использоваться, но тут важно выбирать технологии взвешенно и не по тому, что знает программист, а по тому, что действительно эффективно для решения той или иной задачи. Часть проекта с ростом количества посетителей может понадобиться переписать, не все можно масштабировать, особенно если была заложена неправильная архитектура и не предусмотрена возможность масштабирования, что встречается довольно часто. Иногда нужно переписывать весь сайт, если он сразу писался, скажем, на CMS, а его посещаемость выросла и сайт начал тормозить или вообще падать. В любом случае нужно проводить хороший технический анализ, прежде чем принимать решения по технологиям. Более детально про технологии мы писали в статье: “Выбор технологий для большого и не очень проекта” — но эта статья больше про новые проекты, а не про старые.

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

Сервера и инфраструктура

Тут все зависит от скорости роста проекта и его посещаемости. Если сайт делался на коробочной CMS, а его посещаемость начинает быстро расти, то избежать падения сайта поможет только добавление серверов или перемещение сайта в облако (типа AWS). Это, кстати, одна из распространенных проблем, когда экономят на технологиях и разрабатывают на коробочном решении, а после сильно тратятся на сервера, чтобы это решение хоть как-то работало.

С большими сайтами (на фреймворках или чистом языке) все значительно проще. Заранее можно сделать нагрузочное тестирование и выяснить, сколько посетителей выдержат текущие сервера. Обычно замеряются два показателя: стандартная и пиковая нагрузки. Затем нужно сделать расчет нагрузок, который позволит понять, когда, как и сколько добавлять серверов, чтобы решение работало без проблем. Часто начинают с одного сервера, затем появляется отдельный сервер для БД, затем их становится несколько и т.д.

Если у нас не массовый сервис и больших нагрузок не предвидится, то с серверами почти ничего не нужно делать. Один раз настроить сам сайт и автоматическое бекапирование, а затем иногда поглядывать, чтобы все работало корректно. Впрочем, это удел маленьких сайтов, с большими же постоянно работают профессиональные серверные админы (следят за безопасностью, нагрузками, местом на дисках и их работоспособностью, чтобы они не ломались, и т.д.)

Хочется вспомнить, что в нашей стране сервера лучше держать за границей или хотя бы автоматическое бекапирование иметь в другой стране. Не раз были истории, когда сервера вывозились правоохранительными органами, и умирали целые сайты. Я как-то столкнулся с интересной историей на Украине, когда местная СБУ вывезла все сервера одного из крупнейших тематических сайтов, а бекапа каким-то образом не оказалось. Органы тогда убили целый бизнес.

Контент

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

Должна быть контент-стратегия, как часть общей стратегии развития ресурса, в которой будет обозначено, какой контент, как, куда и когда нужно публиковать.

Нужно помнить про уникальность контента. И пользователи и поисковые системы любят уникальный контент. Кроме того, контент должен отвечать требованиям SEO, чтобы он котировался в поисковых системах и давал приток посетителей из них.

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

Маркетинг и продвижение

С первого взгляда кажется, что тут все очень просто: нужно больше продаж, просто закупаем больше трафика, и дело в шляпе! На самом деле, как и с самим сайтом, здесь есть над чем работать и что улучшать. Есть замечательная цитата Джона Ванамейкера: “Я знаю, что половина моего рекламного бюджета расходуется впустую. Беда в том, что я не знаю, какая именно половина”. Это довольно старая мысль — в современном мире есть много инструментов измерения эффективности. Более того, мы говорим об интернет-проектах, где все можно измерять и улучшать, этим и нужно пользоваться.

Для начала нужно подготовить сам сайт. Первым делом проверить, насколько он оптимизирован под поисковые системы. Информации по SEO очень много, например, 20 правил SEO-оптимизации eCommerce проектов. Затем проверить контент сайта: он должен быть не только оптимизирован под поисковые системы, но и мотивировать пользователей совершать какие-то действия. Отдельно стоит проверить интерфейс:  он тоже должен побуждать пользователей к каким-то полезным для проекта действиям. Для контекстной рекламы нужно создать специальные посадочные страницы, чтобы увеличить конверсию и т.д. Действий по подготовке сайта довольно много, и почти все они влияют на конверсию, средний чек и т.д. Другими словами, это нужно сделать, чтобы получить максимальный эффект от посетителей, попавших на сайт.

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

Анализ эффективности и корректировка стратегии

И вот, когда мы сделали огромное количество работы по всем фронтам, наш старый сайт должен зажить новой жизнью, стать значительно более эффективным, часто даже в разы, особенно если над ним никто до этого системно не работал. Однако этого все равно недостаточно. При таких значительных изменениях нужно постоянно отслеживать эффективность всех действий. Далеко не все допущения станут эффективными, и это нормально. Задача команды сайта — выяснить, что именно сработало  и насколько (в плане прибыли). И уже на основе этих результатов вносить корректировки в стратегию.

Так что же делать с работающим сайтом?

Интернет-проект — это живой организм, с ним нужно постоянно работать и улучшать его. Сразу после создания становится понятным, станет ли проект бизнесом или нет. И если видно, что идея “выстрелила” и сайт уже приносит деньги или будет приносить их в будущем, над его развитием нужно начинать работать.

С чего именно начать, зависит от конкретного проекта. Многие сайты настолько устаревают, что их приходится полностью переделывать. Большие сайты постоянно обновляются, маленькие существенно преображаются раз в 3-5 лет, главное — не стоять на месте. И этот процесс должен быть системным, всеобъемлющим. Нельзя поработать над сайтом, но забыть про маркетинг, или наоборот. Нельзя улучшать только одну из сфер, потому что другие будут отставать, и эффекта синергии не будет. Если вы еще не начали активно повышать эффективность вашего проекта или этот процесс по какой-то причине очень медленный, то самое время этим заняться, ведь скоро Новый Год, и он должен стать новым этапом развития проекта.

Следите за новыми постами
Следите за новыми постами по любимым темам
5К открытий5К показов