Внутренняя система для компании
Сводим работу из таблиц и переписки в одну систему: документы из данных, права доступа, история изменений. Начинаем с бесплатного разбора.
Веб-приложение отличается от сайта одним: сайт рассказывает, приложение выполняет работу. Задач здесь четыре, и они почти не пересекаются: проверить идею до того, как вкладывать деньги; продавать доступ по подписке; перенести внутреннюю работу из таблиц в систему; дать клиентам записываться самим, пока вы спите. Каждая начинается со своего вопроса, и путать их дорого: первая версия SaaS и первая версия внутренней системы похожи лишь внешне. Поэтому сначала выясняем, что именно должно работать в первой версии и чего в ней сознательно не будет. Первый разбор задачи бесплатный — до него любая оценка была бы выдумкой.
Записываем, кто будет пользоваться приложением и какие действия ему нужны, чтобы не строить лишнего.
Собираем приложение рабочими кусками и показываем по ходу, поэтому правки приходят до финала, а не после.
Результат проходит проверку и передаётся по акту, а код и доступы переходят к вам.
Формат приложения зависит от аудитории и задач. Выбор и его причины объясняем на разборе, до оценки и договора.
Сводим работу из таблиц и переписки в одну систему: документы из данных, права доступа, история изменений. Начинаем с бесплатного разбора.
Клиент выбирает специалиста, услугу и время сам, с напоминанием накануне и защитой от двойной записи. Начинаем с бесплатного разбора.
Делаем веб-сервисы, за которые платят регулярно: подписка или оплата за использование, кабинет с лимитами, биллинг и аналитика. Показываем на своих продуктах.
Первая версия продукта, сделанная, чтобы проверить спрос, а не выглядеть полной. Разбор замысла, аналитика с первого дня, честная граница «сейчас / потом».
Самая дорогая ошибка здесь — сделать полный продукт и только потом узнать, что им не пользуются. Нужна первая версия, построенная вокруг одного вопроса: совершают ли люди то действие, ради которого всё затевалось. Тогда после запуска будет на что опереться, чтобы понять, сработало или нет.
Разберём вашу ситуацию на бесплатном аудитеСначала была одна таблица, потом вторая под другую задачу, потом договорённости переехали в переписку. Это работает дольше, чем кажется, и ломается всегда в один момент — когда этот человек в отпуске. Внутренняя система собирает это в одно место с историей изменений.
Решение записаться созревает после работы, перед сном, в метро. Именно тогда администратор не отвечает, а человек не ждёт утра — он идёт туда, где можно нажать кнопку. Онлайн-запись закрывает ту часть суток, которую вы сейчас просто не видите.
Здесь провал случается не на коде, а на вопросе «за что именно будут платить». Поэтому разбор начинается со сценария, который закрывает сервис, и с того, что из задуманного должно быть в платной части, а что остаётся бесплатным, чтобы человек успел дойти до ценности.
Выясняем, что должно происходить в приложении и кто будет им пользоваться: клиент снаружи, ваш сотрудник или оба. Здесь же становится ясно, какой это из четырёх типов — и не закрывается ли задача дешевле, без отдельного продукта.
Записываем, что входит, а что нет, и почему. Это самый важный документ проекта: именно здесь задача перестаёт расти. Одновременно договариваемся о показателе, по которому после запуска будем измерять, сработало ли.
Работаем частями и показываем на живой среде, а не в описаниях. Вы видите промежуточный результат и успеваете сменить направление, пока это дёшево, а не после сдачи.
Переносим на ваш хостинг, подключаем аналитику, отдаём доступы и документацию, подписываем акт. С этого дня действует гарантия 30 календарных дней.
Вопрос один: пользователь должен что-то прочитать или что-то сделать. Прочитать — сайт. Совершить действие, которое меняет данные (записаться, оформить подписку, провести заказ по этапам), — приложение. Граница не всегда очевидна, и бывает, что задача закрывается доработкой существующего сайта. Если это ваш случай, мы так и скажем на бесплатном разборе.
Проверяете, есть ли спрос на идею, — MVP. Продаёте доступ по подписке — платформа. Наводите порядок в собственных процессах, пользователи внутри компании — внутренняя система. Клиенты должны сами выбирать время и мастера — онлайн-запись. Если задача выглядит как два типа сразу, это почти всегда значит, что первая версия должна быть одним из них, а второй идёт следующим этапом.
Потому что одинаково названные задачи отличаются в разы: «внутренняя система» — это и учёт заявок на трёх экранах, и система с ролями, согласованиями и обменом данными с 1С. Срок в рабочих днях называем после разбора, с разбивкой по этапам, и фиксируем в договоре. До разбора любая цифра была бы выдумкой.
Это нормальный результат, ради которого MVP и делается. Именно поэтому ещё до старта договариваемся о показателе, по которому это будет видно, — иначе после запуска придётся спорить на уровне догадок. Данные, код и доступы остаются вашими независимо от того, какой вывод вы сделаете.
Как решите. Гарантия 30 календарных дней действует в любом случае: ошибки по нашей вине исправляем бесплатно. Дальше можно взять поддержку у нас, а можно передать своему разработчику — мы отдаём репозиторий и документацию по запуску и обновлению именно для того, чтобы такой выбор у вас был.
Нет, и это проверяется: домен, хостинг, репозиторий и аналитика оформляются на вас с первого дня, а имущественные права на код переходят после полной оплаты. Ничего из того, что мы сделали, не живёт на наших аккаунтах — иначе вы не смогли бы уйти, даже если бы захотели.
Да, и в приложениях это почти всегда правильнее, чем пытаться предусмотреть всё заранее. Первая версия должна проверить, что решение вообще работает для вашего случая; расширять дешевле, чем переделывать лишнее. На разборе отдельно делим задачу на «сейчас» и «потом».
PWA — веб-приложение, которое можно установить на телефон из браузера: появляется иконка, часть функций работает без сети, приходят уведомления. Публиковать его в App Store или Google Play не обязательно, а обновления получают сразу все, без проверки магазином приложений. Для записи, личного кабинета или внутренней системы этого обычно достаточно. Недостаточно, когда нужен глубокий доступ к устройству или присутствие именно в магазине приложений — таких нативных проектов в нашем портфолио нет, и выдавать их за свой профиль мы не будем.
Чаще всего на TypeScript: Next.js для интерфейса и серверной части, PostgreSQL как база, Prisma для работы с ней, а для нагруженных API — отдельный сервис на Fastify. На этом стеке собрана и собственная система агентства. Выбор не догма: если у вас уже есть код на другой технологии и разработчик, который его знает, разумнее продолжить на ней. Важнее языка другое: репозиторий, сервер и база оформлены на вас, и приложение может подхватить любой разработчик, знающий этот стек.
Опишите задачу своими словами — подскажем, с чего начинать, и нужно ли вам то, за чем вы пришли. Если не нужно, так и скажем.