Илья Жарков › ilya.zharkov Сбер ID
Рейтинг
1 715
№ 606 в каталоге
Отзывы
0
Профессионализм
-/10
Коммуникация
- /10
Город
Санкт-Петербург
Опыт работы
28 лет
На сайте с
2011 года
Юридический статус
ИП

MVP платформы управления коммерческим автопарком: омниканальный чат оператора, таск-трекер с Kanban и складской учет (NestJS, Vue 3, Redis, Docker)

Используемые навыки Docker Compose Nest.js PostgreSQL Vue.js

Описание

Цель проекта — разработка архитектуры и полнофункционального MVP корпоративной платформы для автоматизации процессов коммерческого автопарка и сети сервисных центров обслуживания техники.

Исходная проблематика и вызовы:
1. Потеря входящих обращений и лидов: входящие сообщения от клиентов и водителей с внешних площадок (в частности, Avito) обрабатывались вручную и разрозненно. Из-за отсутствия единого окна оператора возникали задержки в ответах, а история диалогов терялась при пересменке.
2. Отсутствие операционного контроля задач: поручения между диспетчерами, филиалами и техническими специалистами ставились через мессенджеры. Не было контроля дедлайнов, истории изменений и регламентов обслуживания (SLA).
3. Риск простоев техники из-за дефицита запчастей: учет расходников велся в таблицах, что периодически приводило к отсутствию нужных деталей на складе и затягиванию ремонтов (при целевой утилизации автопарка 98–99%).
4. Безопасность и управление доступом: требовался единый контур авторизации с ролевой моделью (RBAC), чтобы гибко разграничивать права сотрудников и безопасно связывать микросервисы.

Задачи на этап MVP:
• Спроектировать модульную микросервисную архитектуру с изолированными базами данных, исключающую vendor lock-in.
• Создать централизованный сервис авторизации (SSO) на JWT для сквозного входа во все модули системы.
• Разработать омниканальный модуль CRM для операторов с поддержкой Webhook-интеграций (Avito) и мгновенным обменом сообщениями в реальном времени.
• Реализовать модуль управления задачами (Task Tracker) с интерактивной Kanban-доской, системой уведомлений и аудитом действий.
• Разработать детальную архитектуру и модель данных для складского учета автозапчастей и расходников с контролем неснижаемых остатков.
• Упаковать весь стек в Docker-контейнеры для легкого локального запуска и быстрого деплоя на продакшн-сервер.

Решение

Для реализации MVP была спроектирована масштабируемая Event-Driven микросервисная архитектура с независимыми сервисами и собственными базами данных:

1. Централизованный сервис авторизации (Identity Service):
• Разработан независимый микросервис на NestJS и PostgreSQL.
• Реализован механизм авторизации на JWT (Access / Refresh токены) с внутренним эндпоинтом интроспекции токенов (/internal/auth/introspect), защищенным межсервисным API-ключом.
• Реализована модель прав доступа (RBAC: Admin, Operator, Viewer) с разграничением на уровне API guards и маршрутов фронтенда.

2. Коммуникационный модуль и рабочее место оператора (Core CRM):
• Разработана интеграция с Avito Messenger API v2: прием входящих webhook-событий с валидацией подписи (rawBody) и контролем идемпотентности по platform_message_id (защита от дублирования сообщений).
• Архитектура внешних интеграций реализована через паттерн Dependency Injection и общий интерфейс IExternalMessagingClient, что дает возможность подключать любые другие мессенджеры (Telegram, WhatsApp) без изменения ядра.
• Построена реалтайм-шина событий: связка Redis Pub/Sub + WebSocket Gateway (Socket.IO). Все входящие и исходящие сообщения мгновенно транслируются на клиентские экраны операторов без перезагрузки страниц.
• Реализованы опросники (surveys) и автоматическое формирование саммари диалога.

3. Модуль контроля задач (Task Tracker):
• Разработан полноценный трекер задач: статусы, приоритеты, исполнители, оценка трудозатрат и контроль дедлайнов.
• Реализована интерактивная Kanban-доска с поддержкой Drag-and-Drop для оперативного перемещения задач по стадиям.
• Внедрен модуль контроля SLA: фоновые проверки приближения сроков и фиксация просроченных задач.
• Разработана система уведомлений (in-app шторка, badge-счетчик непрочитанных, автообновление).
• Настроен детальный аудит (AuditLog): фиксация всех ключевых действий пользователей с сохранением IP, автора и снимка изменений «до/после».

4. Архитектура складского учета (Warehouse Service):
• Спроектирована целевая модель данных складского учета ТМЦ в разрезе филиалов и сервисных центров.
• Заложен строгий принцип: текущий остаток является производной величиной и изменяется исключительно через проведение складских документов (приход, расход, перемещение, списание).
• Спроектирован модуль контроля минимальных остатков (Stock Alerts) и автогенерации заявок на пополнение.

5. Фронтенд и инфраструктура:
• SPA-интерфейсы разработаны на Vue 3 (Composition API), Vite, Pinia и TypeScript.
• Реализована поддержка мультиязычности (i18n: RU/EN).
• Полная контейнеризация стека через Docker и Docker Compose с многоступенчатыми Dockerfile, Nginx-проксированием, изолированными базами PostgreSQL и Redis, а также автоматическим накатом миграций и начальных сидов.

Результат

В результате работы был полностью спроектирован, собран и протестирован функциональный MVP комплексной платформы, готовый к развертыванию и эксплуатации:

1. Проверенный в работе коммуникационный контур:
Связка Webhook + Redis Pub/Sub + WebSocket доказала надежность на тестовых сценариях: входящие сообщения от клиентов обрабатываются без дублирования и мгновенно поступают на экран оператора, сокращая время первого ответа до считанных секунд.

2. Готовый к использованию Task Tracker:
Реализован удобный интерфейс с Kanban-доской (drag-and-drop), центром уведомлений и фильтрацией. Инструмент полностью закрывает задачи распределения операционной нагрузки, контроля сроков и фиксации истории изменений.

3. Автономный и безопасный контур аутентификации:
Вынос Identity Service в отдельный сервис обеспечивает единую точку входа (SSO), централизованное управление ролями сотрудников и высокий уровень защиты пользовательских данных.

4. Готовая техническая база и документация:
Детально описана архитектура складского учета и межсервисного взаимодействия, подготовлены схемы БД, спецификации REST API и сценарии масштабирования.

5. Универсальность решения:
Созданный программный комплекс представляет собой готовую white-label платформу. Архитектура не привязана к конкретной компании и может быть быстро адаптирована под нужды любого коммерческого автопарка, службы доставки, логистического хаба или сети сервисных центров.

Оценили проект:

Другие проекты

Все проекты →
Веб-разработка и IT Кроссплатформенный менеджер паролей, документов и 2FA с Zero-Knowledge шифрованием в продакшене (Google Play, RuStore)
Кроссплатформенный менеджер паролей, документов и 2FA с Zero-Knowledge шифрованием в продакшене (Google Play, RuStore)
22
ИИ и Нейросети Внутренняя платформа скоринга и аналитики премиальных заведений с оптимизированным сбором данных Google Places API
Внутренняя платформа скоринга и аналитики премиальных заведений с оптимизированным сбором данных Google Places API
27
ИИ и Нейросети AI-ассистент в Telegram на базе Agentic RAG: экспертные консультации по кормам и рационам животных с защитой от галлюцинаций
AI-ассистент в Telegram на базе Agentic RAG: экспертные консультации по кормам и рационам животных с защитой от галлюцинаций
32
Веб-разработка и IT Омниканальная платформа обмена сообщениями и веб-кабинет оператора: интеграция Facebook Messenger и TikTok (NestJS / Vue 3)
Омниканальная платформа обмена сообщениями и веб-кабинет оператора: интеграция Facebook Messenger и TikTok (NestJS / Vue 3)
13