Задача
Офис и водители логистической компании работают с одними кадровыми данными, но в разных условиях. В продукте есть веб-интерфейс для офиса и приложение на планшете водителя, где часть сценариев должна оставаться доступной без стабильной связи.
Моя роль
Я работал с бэкендом Django и интерфейсами React/TypeScript. В моей зоне ответственности были основные сервисы, интеграции и согласованные правила доступа в API и интерфейсе.
Как это работает
Административный интерфейс предназначен для работы с данными персонала, а приложение водителя — для задач вне офиса. Офлайн-режим встроен в рабочий процесс водителя.
Технические решения
Для входа использовались Microsoft OIDC и SMS OTP. Интеграции связывали продукт с внешними кадровыми данными. Правила CASL в интерфейсе и проверки разрешений на бэкенде согласовывали доступ к действиям для разных ролей.
Надёжность и границы
Во время эксплуатационного тестирования я работал с документацией OpenSpec, проверкой кода и мониторингом ошибок интерфейса через Rollbar. Это помогало связывать проблему пользователя с конкретным сценарием и его реализацией.
Что получилось
MVP дошёл до эксплуатационного тестирования. Кейс описывает мой инженерный вклад; название клиента, внутренние экраны и рабочие данные не раскрываются.
