Стартап - дело тонкое, никогда нельзя быть точно уверенным, что он взлетит. Поэтому у бизнеса возникает потребность быстро и с меньшими усилиями выпустить минимальную жизнеспособную версию продукта (MVP).
Но сколько времени нужно на MVP? Месяц, два, три? Год? Всё зависит от проекта, но, в нашем понимании, на MVP должно уходить не больше 3 месяцев. Но что, если можно разработать MVP за 1.5 недели? Расскажем на примере нашего нового сервиса Outlytics, как быстро релизить стартапы.
Любой более-менее значимый IT проект начинается с этапа аналитики бизнес и технических требований: как их лучше связать друг с другом, какие фичи поставить в приоритет и т.д.
Разработка стартапов - отдельный вид искусства со своими законами и нюансами. Сейчас мы расскажем про подход в программировании, который поможет очень сильно срезать временные затраты.
Грамотно выстроенные процессы взаимодействия команды разработки и дизайна - большая часть успеха проекта. Дизайн должен быть не только красивым и удобным, но также реализуемым в рамках бюджета и срока проекта.
Мы изначально понимали - front-end будет использовать библиотеку готовых компонентов. Наш любимый вариант - Material UI. Дизайнеру необходимо было понимать, какие есть компоненты, как они кастомизируются, взаимодействуют друг с другом и т.д.
Благодаря такому подходу мы смогли за неделю реализовать front-end под ключ: вёрстка, серверная логика, интеграции.
BaaS (Back-end as a Service) - это облачный сервис, который предоставляет всю серверную "магию": управление базами данных, аутентификация пользователей, уведомления (пуш, email, sms) и т.д. Нам остаётся только разработать дизайн и написать front-end с клиентской логикой.
Какой BaaS выбрать?
На рынке много решений. Самое популярное в мире - Firebase. Мы в компании любим open source и self-hosted решения, поэтому наш выбор пал на Appwrite. У него хорошая документация, много SDK под разные языки программирования, приятный интерфейс и крутая NoSQL надстройка над MariaDB.
Задачи BaaS в Outlytics:
Наша система сама подберет вам исполнителей на услуги, связанные с разработкой сайта или приложения, поисковой оптимизацией, контекстной рекламой, маркетингом, SMM и PR.
Заполнить заявку
12177 тендеров
проведено за восемь лет работы нашего сайта.
Данные по аутстафф рынку России мы решили хранить в отдельной базе данных, чтобы разграничить слой back-end'a приложения и парсеров. Конкретная СУБД, которую мы выбрали - PostgreSQL.
Обращаться к базе данных с фронтенда - плохая идея. Нам нужен был дополнительный интерфейс для взаимодействия. Продолжая философию BaaS или Backendless программирования, мы выбрали Hasura для автоматического создания GraphQL API.
Потребовалось немного больше работы, чем просто задеплоить сервис. Нам нужны были агрегированные данные, которые можно было бы получить только с помощью достаточно сложных кастомных нативный SQL запросов.
Но и здесь мы не стали отходить от принципов MVP, "не пошли в лоб", часами продумывая и тестируя запросы к СУБД, а визуально накидали необходимые манипуляции с датасетом в Metabase и просто скопировали исходный код :DЕдинственное, что нам нужно было изменить - это добавить работы с переменными Hasura для возможности фильтрации.
Заходя дальше в дебри оптимальных решений, мы перешли от Backendless к Codeless подходу - разработке приложений под ключ вообще без использования кода.
Для админ-панели мы использовали Budibase, у которого в частности есть интеграция с Appwrite. Примерно час конфигурации, перетаскивания блоков, тестирования, и наша полноценная админка готова.
Конечно, на проекте есть логирование и баг-трекинг. Его мы реализовали при помощи sentry-like Glitchtip, который полностью совместим с Sentry.
Техническую поддержку клиентов мы реализовали через Chatwoot.
За 1.5 недели мы смогли:
Как быстро разработать MVP?