Backend для мобильного приложения

Серверная часть — это половина мобильного продукта, которую не видно в App Store, но без которой приложение остаётся демкой. Manvi Digital пишет backend на Node.js и TypeScript: REST-API по OpenAPI-контракту, авторизацию, платежи, бизнес-логику, интеграции с внешними сервисами, базы данных и реалтайм. Тот же TypeScript, что и на клиенте, — поэтому типы запросов и ответов едины для фронта и сервера, а не расходятся при каждом релизе.

Мы делаем backend как часть полного цикла (Discovery → MVP → Production → Support), а не как изолированную задачу: сервер проектируется под конкретные экраны и сценарии приложения, а не «вообще». Беремся и за серверную часть с нуля под новый продукт, и за дописывание/переработку существующего API под React Native-клиент.

Что входит в серверную часть

Базовый объём: REST-API с описанием в OpenAPI (Swagger), авторизация и сессии (JWT, OAuth, refresh-токены, роли и доступы), бизнес-логика и валидация на сервере, работа с БД (PostgreSQL как основная, Redis для кеша, очередей и сессий), файлы и медиа, фоновые задачи и очереди. Поверх этого — то, что нужно именно вашему приложению: платежи и подписки, пуш-уведомления, чат и реалтайм, гео- и поисковые сценарии.

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

Платежи, интеграции и внешние API

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

Опыт интеграционно-нагруженных продуктов есть: travel и деловые поездки (BestTrip), экспресс-доставка и B2B SaaS (Jiffy), заказ машин и маркетплейс (Девис Групп) — это домены, где сервер живёт на стыке множества внешних систем и платежей.

Реалтайм, база данных и инфраструктура

Реалтайм-сценарии (статусы заказов, чаты, живые обновления) делаем на WebSocket; тяжёлые и отложенные операции выносим в очереди и фоновые воркеры, чтобы мобильный клиент не ждал. Схему БД проектируем под нагрузку и рост данных, миграции версионируем.

Инфраструктуру собираем под проект: Docker, окружения dev/stage/prod, логи и мониторинг, бэкапы. CI/CD настраиваем так, чтобы деплой сервера был предсказуемым и не ручным, — это важно, когда мобильный релиз и серверный должны выходить согласованно.

Единый источник типов для фронта

Backend и мобильный клиент на React Native пишутся на одном TypeScript. Контракт API становится единым источником истины: типы DTO и схемы валидации переиспользуются, а не дублируются вручную на двух сторонах. На практике это значит меньше ошибок класса «сервер прислал не то, что ждал клиент» и более быструю стыковку фронта с API.

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

Сроки и формат работы

Ориентир: базовый backend под MVP (API, авторизация, БД, 1–2 ключевые интеграции, деплой) — порядка 3–6 недель; полноценная серверная часть с платежами, реалтаймом и несколькими интеграциями — 2–4 месяца. Точную оценку даём после Discovery, когда понятен список эндпоинтов и интеграций.

Работаем удалённо по России и за рубежом. После релиза остаёмся на поддержке: следим за сервером, чиним инциденты, дорабатываем API под новые фичи приложения, а не передаём «as is» и не исчезаем.

Вопросы и ответы

Можно заказать только backend, если мобильное приложение уже есть?
Да. Беремся за серверную часть отдельно: пишем API с нуля под существующий клиент или дорабатываем/переписываем уже имеющийся бэкенд. На старте смотрим текущий код и контракты, чтобы не ломать работающий мобильный клиент.
На каком стеке вы делаете серверную часть?
Node.js + TypeScript, REST-API с описанием в OpenAPI, PostgreSQL как основная БД и Redis для кеша/очередей, WebSocket для реалтайма. Инфраструктура — Docker и CI/CD. Стек выбран осознанно: тот же TypeScript на клиенте и сервере даёт единые типы и меньше ошибок на стыке.
Сколько стоит и сколько времени занимает backend?
Стоимость и сроки зависят от числа эндпоинтов, интеграций (платежи, внешние API), нужды в реалтайме и требований к нагрузке. Базовый API под MVP делается быстрее, чем сервер с платежами и реалтаймом. Точную вилку и сроки называем после короткого Discovery по вашему проекту.

Расскажите о продукте — и составим маршрут до релиза

Созвон на 30 минут: разбираем задачу, риски и формат сотрудничества. Без обязательств.