- Задача
- Развитие экосистемы краткосрочной аренды
- Масштаб
- Web, iOS / Android, внутренние кабинеты, единый backend
- Роль
- Техническое руководство, архитектура, реализация, релизы
- Результат
- Единый серверный контур для нескольких клиентских приложений
- Подтверждение
- Публичный продукт; цифры и скриншоты — по согласованию с заказчиком
Проблема
Экосистема для посуточной аренды: поиск и бронирование, мобильное приложение, операционные инструменты хоста, PMS-интеграции, платежи и отчётность собственникам. Десятки backend-модулей · сотни версионированных миграций · большой контур фоновых и периодических задач.
Архитектура
Бэкенд — многодоменное Django-ядро: бронирования, платежи, PMS-синхронизация, фоновые задачи, WebSocket-коммуникации и API для нескольких клиентских приложений; PostgreSQL / PostGIS, Redis, Celery. Web — публичный клиент и кабинеты на Vue 3: поиск, карточки объектов, бронирование, кабинеты хоста и организаций, отдельный виджет бронирования и собственный пререндер для SEO. Мобильное приложение — Flutter для iOS и Android с гостевым и хостовым контурами: поиск и бронирование, карты, поездки, QR-вход, push-уведомления, deep links, биометрия и Sign in with Apple (Flutter · Dart · bloc · dio · OneSignal · Yandex MapKit · Codemagic · fastlane). Внутренние системы — две отдельные React / Express-системы: операционный кабинет хоста и хаб финансовой отчётности собственников.
Инженерные решения
- Интеграции: PMS и каналы бронирования, эквайринг, мессенджеры, push, Google Sheets, карты и геокодинг.
- Надёжность: фоновые очереди, повторы и идемпотентность, сверка броней и платежей, проверки качества данных, трассировка и мониторинг.
- Один бэкенд обслуживает гостей, хостов и собственников через веб, мобильное приложение и внутренние кабинеты.
- Наблюдаемость и поставка: OpenTelemetry, Prometheus, Grafana, Docker, GitHub Actions.
Результат
Вёл техническую часть: архитектура, код-ревью, процесс релизов; работал над бэкендом, Vue-клиентом, Flutter-приложением и двумя Node.js-системами.