Прототип собрали в Lovable за выходные, и уже месяц 12 менеджеров ведут в нём заявки. Теперь его хотят открыть клиентам, а их около 500, и у каждого будет свой вход, свои заказы и оплата картой. Никто не знает, выдержит ли прототип такой поток и не увидит ли один клиент заказы другого. Rule 90 доводит прототипы до продакшена, то есть до рабочей системы с настоящими пользователями, данными и деньгами. Проверяем безопасность, данные, нагрузку, платежи и код, оставляем то, что выдержит, и переписываем остальное. Начинаем с двухнедельного обследования и по его итогам фиксируем смету.
Чем прототип отличается от рабочей системы
Прототип доказывает, что идея работает, но рабочей системе нужно ещё то, чего на показе не видно: права по ролям, защита данных, журнал ошибок, резервные копии, мониторинг и порядок выпуска обновлений.
Прототип проверяли люди, которые его собрали. Они вводят данные аккуратно, не подставляют в адресную строку чужой номер заказа и не нажимают «Оплатить» дважды. Клиенты будут делать всё это в первую же неделю, и ошибка, которую раньше видел один менеджер, коснётся сотен людей. Поэтому доводка начинается не с новых функций, а с того, что прототип до сих пор ни разу не проверял.
Где прототип ломается первым
Перед тем как открыть прототип клиентам, проверяем шесть мест:
- Что каждый пользователь видит только своё, а права проверяются на сервере. В перечне уязвимостей веб-приложений OWASP такие ошибки стоят на первом месте.
- Что ключи от базы, почты и платёжного сервиса не лежат в коде, который уходит в браузер.
- Где лежит база и можно ли восстановить её из копии. У Supabase и Lovable Cloud площадок в России нет, а персональные данные россиян при сборе закон требует записывать в базы на территории страны.
- Как проходит оплата. Покупателю в интернете положен электронный чек по закону о кассовой технике (54-ФЗ). Повторное нажатие не должно списывать деньги дважды, а отменённый платёж не должен оставлять заказ оплаченным.
- Что не выдержит, если одновременно зайдут сотни человек.
- Можно ли собрать код из репозитория, читать его и менять без страха. Есть ли тесты хотя бы там, где проходят деньги.
Почему код, написанный нейросетью, требует отдельной проверки на безопасность, мы разобрали в статье о вайбкодинге.
Как прототип для 12 менеджеров открывают 500 клиентам
Вернёмся к заявкам из начала. В таком прототипе экраны и логика заявки, скорее всего, выдержат: их месяц проверяли живые люди, и переделывать их незачем. Переписывать приходится другое. Базу переносим на российский сервер, проверку прав переносим из браузера на сервер и закрываем тестами, оплату подключаем через российский платёжный сервис с чеками, а медленные запросы находим нагрузочным прогоном до того, как их найдут клиенты.
Первый релиз получает часть клиентов, и только когда он проработал без сюрпризов, систему открывают остальным. На стенде вы сами проходите по новым экранам, не дожидаясь релиза.
Разберёмся в задаче и предложим, как решить её эффективно.
«Разработчики скажут, что всё надо выбросить»
Выбрасывать то, чем уже пользуются, невыгодно никому. Экраны и сценарии, которые прошли проверку на ваших сотрудниках, стоят дороже, чем кажется: это и есть знание о том, как в компании работают по-настоящему. Мы сохраняем всё, что проходит проверку, и показываем, какие части и почему придётся переписать.
Бывает и обратное. Если код устроен так, что доводка обойдётся дороже новой сборки, вы узнаете об этом на обследовании, с расчётом обоих путей. Прототип тогда не пропадает, он становится самым точным техническим заданием, какое бывает.
Обследование, смета и первый релиз
Для начала нужен доступ к репозиторию, базе и аккаунтам сервисов, на которых держится прототип. На обследование уйдёт около двух недель: смотрим код, данные, нагрузку и платежи и составляем план доводки. Цену и срок доводки по этому плану записываем в договор, а то, что захочется добавить сверх него, считаем отдельно. Готовые части вы видите раз в неделю. После запуска система три месяца на гарантии, и она уже включена в цену. Репозиторий, документация и пароли от сервисов оформлены на компанию и остаются у неё.
Вопросы о доводке прототипа
Прототип собран в Lovable, Replit или Cursor. Возьмёте?
Главное условие — чтобы код можно было выгрузить в репозиторий. Тогда инструмент, в котором его собирали, почти не важен. Если конструктор код не отдаёт, прототип служит образцом, а систему собирают заново.
Можно ли оставить базу в Supabase?
Можно, если персональных данных клиентов из России в ней нет. Если есть, закон требует при сборе записывать их в базы на территории России, и тогда базу переносим на российский сервер.
Сколько стоит довести прототип до продакшена?
Зависит от того, сколько в прототипе ролей, данных и платежей и в каком состоянии код. Точную цену называем после обследования, когда видно, что остаётся, а что переписывается.
Прототип писал фрилансер, а не нейросеть. Это к вам?
Да, но такой проект ближе к доработке чужого проекта: там тот же порядок, только начинается он с доступов и сборки.