Программистам часто приходят заказы на создание онлайн-магазинов разного масштаба. В этом году интерес к бизнесу в интернете и торговым площадкам в частности заметно увеличился.

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

Особенности разработки интернет-магазинов

По данным аналитического агентства Data Insight, в России всего 2000 магазинов с числом заказов 10 в сутки. Конверсия в покупку зависит от многих факторов, но качество и удобство сайта входит в число самых важных. На плечах разработчика лежит ответственность не только перед заказчиком, но и перед покупателями, которые будут пользоваться каталогом, корзиной и формой заказа.

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

Если предприниматель хочет создать средний или крупный интернет-магазин, то есть смысл инвестировать в разработку системы управления контентом, которая будет учитывать особенности проекта. Для нестандартных сайтов идеально подходят самописные движки, потому что не придётся ломать стандартную логику CMS и программист может сконцентрироваться на главной задаче.

Процесс разработки интернет-магазина отличается от создания корпоративного сайта или портала, но у них много общего. Любой digital-проект начинается с технического задания и заканчивается актом принятия работ. Между этапами будет много правок, согласований и компромиссов.

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

Бывает так, что клиент хочет продавать в интернете нестандартные товары, которые люди покупают в офлайн-магазинах. Он тратит 100-200 тысяч рублей на сайт, вкладывает деньги в рекламу, а заказов приходит крайне мало. С удобством и быстродействием сайта проблем нет, но люди звонят, только чтобы уточнить характеристики товаров, а пользоваться корзиной не хотят.

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

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

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

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

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

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

Ещё один важный момент — онлайн-оплата. Если её на сайте нет, то это не интернет-магазин, а просто каталог. В этом случае нет необходимости создавать уникальную CMS. Проще взять готовое решение, проверенное временем. Например, Bitrix, InSales или Woocommerce.

Этапы разработки сайта

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

Формирование технического задания

Если бы у программистов была главная книга, то на первой странице стоило бы написать, что без технического задания приступать к разработке нельзя ни при каких условиях. Даже если клиент предлагает 500 000 тысяч за создание простого лендинга.

ТЗ — фундамент, на котором держится успешное сотрудничество между заказчиком и подрядчиком. В файле описываются все задачи, которые должен реализовать программист. От «каркаса» сайта до подключения платёжных агрегаторов. Всё, что выходит за рамки файла, делать не надо.

Выбор CMS

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

Всего есть 3 варианта: популярные CMS с модулями интернет-магазинов, облачные конструкторы и самописные движки. Первые два варианта идеально подойдут для 80-90% торговых площадок, оставшиеся 10% — это нестандартные проекты с потребностями, которые не могут закрыть готовые решения.

При выборе CMS надо обязательно учитывать масштаб сайта. Если бюджет на рекламу позволяет привлекать десятки тысяч посетителей каждый день, то стоит обратить внимание на инструменты, которые хорошо справляются с высокой нагрузкой. Например, Bitrix не падает от 10-20 тысяч уникальных пользователей в сутки, но понадобится VPS-сервер.

Разработка макета

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

Разработчикам не стоит соглашаться на такие условия. Даже если заказчик обещает увеличить стоимость проекта на 20-30%. Нет ничего лучше, чем верстать сайт по готовому макету, который сделан с хирургической точностью.

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

Верстка страниц

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

Уже на этом этапе надо постараться получить от клиента максимум информации. Даже если он утверждал макет, могут появиться изменения, которые лучше внести до интеграции HTML-кода в CMS.

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

Интеграция в CMS

После того, как вёрстка подготовлена для дальнейшей работы, начинается процесс натяжки на CMS. HTML-код интегрируется в шаблоны Bitrix, Wordpress или другой системы управления контентом.

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

Подключение модулей

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

Определить список плагинов, которые понадобятся для закрытия всех задач из технического задания, надо до начала разработки. Если сделать это позже, может оказаться, что готовых модулей нет, и бюджет проекта увеличится ещё на 50%.

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

Финальная доработка

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

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

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

Советы разработчикам, которые уберегут от ошибок

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

Не работайте без технического задания

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

В процессе выясняется, что проект должен работать на базе уникальной CMS. Заказчик хочет самописный движок для мини-каталога на 10 товаров и переубедить его не получается.

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

Обязательно читайте договор

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

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

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

Оценивайте свои силы

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

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

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

Говорите клиентам правду

Если в техническом задании или логике работы будущего интернет-магазина есть критичные проблемы, не бойтесь высказать своё мнение. Новички думают, что таким поведением они оттолкнут потенциального клиента, но это не так. Заказчики наоборот будут довольны тем, что сэкономили время и деньги.

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

Не беритесь за провальные проекты

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

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

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

Устанавливайте сроки с запасом

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

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

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

Привлекайте сторонних специалистов

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

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

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

Главное, что стоит запомнить программисту, который хочет разрабатывать коммерческие проекты — всегда будьте на стороне клиента. Не бойтесь говорить о проблемах и указывать на недочеты в техническом задании или договоре. Доводите каждый проект до финала и помогайте решать проблемы после сдачи за отдельную плату.