Разработка · 6 мин чтения

Разработка веб-приложений: этапы, стек и бюджет

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

Из чего складывается цена разработки веб-приложения

Цена не берётся из таблицы “тип сайта - цена”. На неё влияет несколько факторов, и я оцениваю каждый отдельно.

  • Количество сущностей и экранов. Личный кабинет с профилем и списком заказов - это одна история, каталог с фильтрами, корзиной и админкой для менеджера - другая.
  • Роли пользователей. Если в системе только “клиент”, логика проще. Как только появляются “клиент”, “менеджер”, “администратор” с разными правами, растёт и бэкенд, и объём тестирования.
  • Интеграции. Приём платежей через Т‑Банк, синхронизация остатков с WooCommerce, расчёт доставки через СДЭК, уведомления через Telegram-бота на aiogram - каждая добавляет и код, и тестовые сценарии на стороне внешнего сервиса.
  • Состояние дизайна. Готовый макет в Figma экономит время бэкенд- и фронтенд-разработки, дизайн с нуля добавляет отдельный этап.
  • Требования к нагрузке. Внутренний сервис для десяти менеджеров и публичный сервис с пиковой нагрузкой в момент акции - разные требования к архитектуре.

Как ориентир по своим ценам: лендинг на Next.js у меня стоит от 80 000 ₽, CRM или админ-панель на React - от 100 000 ₽, бэкенд на Laravel отдельно - от 100 000 ₽, а полноценный веб-сервис или SaaS, который объединяет фронтенд, бэкенд и интеграции - от 300 000 ₽. У студий с большим штатом смета на сопоставимый проект обычно выходит заметно выше, потому что в неё закладывают работу нескольких специалистов и накладные расходы студии - это рыночный ориентир, а не моя цена.

Что влияет на срок запуска

Срок и цена связаны, но не всегда напрямую. На срок сильнее всего влияет:

  • готовность технического задания - если список функций и сценариев есть на входе, я не трачу время на угадывание;
  • число внешних интеграций - на каждую нужно получить доступы, протестировать боевой и тестовый режим, обработать отказ сервиса;
  • скорость обратной связи заказчика - если правки по макету или ТЗ ждут неделю, эта неделя добавляется к сроку целиком;
  • объём тестирования - для сервиса с оплатой я закладываю больше времени на проверку граничных случаев, чем для внутреннего инструмента без денег.

По моей практике на аналитику и прототип уходит 1-2 недели, на разработку MVP - от 4 до 6 недель в зависимости от числа экранов и интеграций, ещё 1-2 недели - на тестирование, правки и запуск. В сумме для веб-сервиса это и даёт срок от 8 недель, который я указываю на странице услуги.

Бесплатный материал

🎁 Полезный скрипт в подарок

Подпишитесь на Telegram - пришлю готовый скрипт по этой теме.

Без спама. Отписка в 1 клик.

Этапы разработки веб-приложения по порядку

Аналитика и техническое задание

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

Прототип и дизайн

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

Разработка

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

Тестирование и запуск

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

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

Какой стек выбрать для веб-приложения

Стек выбираю под задачу, а не по принципу “что сейчас модно”. Вот как я обычно решаю:

Задача Стек, который обычно беру Когда оправдан
Лендинг или маркетинговая страница с упором на скорость и SEO Next.js Трафик с рекламы или поиска, важна серверная отрисовка страниц
Admin-панель или CRM для внутренней команды React Много форм, таблиц и разных ролей доступа
Дашборд с графиками и метриками Vue.js Нужна визуализация данных и обновление в реальном времени
API и серверная логика Laravel Нужна работа с базой данных, очередями задач, внешними интеграциями

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

Что заказчику подготовить до старта

Проекты идут быстрее, когда на старте уже есть:

  • примеры похожих сервисов или конкурентов - что нравится, что нет, это экономит часы на объяснении, как должно выглядеть;
  • доступы к домену и серверу или понимание, где будет жить проект после запуска;
  • данные для интеграций - тестовые и боевые ключи Т‑Банка, токен для Яндекс Доставки или СДЭК, доступы к CRM;
  • контент - тексты, изображения, хотя бы черновые, чтобы не верстать интерфейс под текст-заглушку;
  • один человек со стороны заказчика, который принимает решения по ТЗ и отвечает на вопросы в течение дня-двух, а не недели.

Если персональные данные клиентов - контакты, заказы, платежи - хранятся в системе, по 152-ФЗ база должна лежать на сервере в России. Это стоит закладывать в план ещё на этапе выбора хостинга, а не после запуска.

Типовые ошибки, из-за которых проект ломается

На одном из проектов заказчик стартовал с ТЗ на CRM без приёма платежей, а через три недели разработки добавил оплату через Т‑Банк и синхронизацию остатков с WooCommerce. Архитектуру пришлось пересматривать на ходу: таблицы заказов и статусов проектировались без учёта платежей, и часть кода переписали заново. Релиз сдвинулся на пару недель, а смета выросла, потому что новый функционал не был в изначальной оценке.

Из этого и похожих случаев - список того, что чаще всего ломает сроки и бюджет:

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

Частые вопросы

Чем веб-приложение отличается от обычного сайта?

Сайт в основном показывает контент, веб-приложение работает с данными: у пользователя есть личный кабинет, роли, бизнес-логика на бэкенде и база данных. Граница не всегда чёткая - лендинг на Next.js тоже может обращаться к API, но по объёму работы и по составу команды это разные категории проектов.

Сколько стоит разработка веб-приложения под ключ?

У меня разработка веб-сервиса или SaaS начинается от 300 000 ₽, срок - от 8 недель. Точную цифру называю после того, как вижу техническое задание или хотя бы список функций и интеграций: разброс между простым внутренним инструментом и публичным сервисом с оплатой большой.

Можно ли сделать MVP быстрее и дешевле?

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

Нужна ли техническая поддержка после запуска?

Зависит от нагрузки и от того, планируете ли вы дальше развивать продукт. Я веду техподдержку отдельно от разработки, от 15 000 ₽ в месяц - в неё входят правки, мониторинг работы сервиса и небольшие доработки после релиза.

Есть задача?

Обсудим в мессенджере

Расскажите, что нужно сделать — отвечу в течение 4 часов в рабочее время. Первая консультация бесплатно.

Продолжая пользование настоящим сайтом Вы выражаете своё согласие на обработку Ваших персональных данных (файлов куки) с использованием Yandex.Metrika.
Понятно