Header background

запуск проекта: Й

запуск проекта

·

июль 2026

Вот сложная задача, которую работодатели могут использовать для оценки senior-специалистов (архитекторов, tech lead’ов, аналитиков, продакт-менеджеров) на собеседовании. Она требует системного мышления, умения работать с неопределённостью и компромиссами.

Задача: «Динамическая логистическая платформа с гарантией уровня сервиса» Контекст Логистическая компания «ФастЛайн» доставляет грузы по городу и области. Автопарк состоит из 200 разномарочных автомобилей разной грузоподъёмности, часть из которых оборудована холодильниками. Штат водителей — 250 человек с разными категориями прав, допусками к скоропортящимся грузам и графиками работы (в том числе самозанятые, которые подключаются в реальном времени через приложение). В сутки обрабатывается 3000–5000 заказов, 40% из которых требуют доставки «день в день» в пределах 2-часового окна. Проблема Текущая система маршрутизации не справляется с возмущениями: пробки, внезапные поломки авто, отказы водителей от заказов, резкие всплески спроса (погода, акции). Это приводит к срыву 12% SLA-доставок, штрафам и оттоку клиентов. Бюджет на перестройку платформы ограничен: 15 млн рублей на разработку и инфраструктуру в первый год. При этом бизнес требует в течение 6 месяцев снизить долю опозданий до 4%, не увеличив среднюю себестоимость доставки. Исходные данные (доступны исторические дампы и поток) · Журнал заказов: время поступления, геокоординаты A/B, вес, объём, температурный режим, «окно доставки», стоимость. · Телеметрия машин: GPS-трек (1 точка в 30 сек), скорость, уровень топлива, температура в кузове, коды ошибок CAN-шины. · Данные о водителях: ID, категории, текущий статус (свободен/на заказе/отдых), рейтинг, история отказов, предпочтительные районы. · Внешние факторы: прогноз пробок (агрегированный по квадратам города, точность 70%), погода почасово, исторические данные о ДТП и перекрытиях. · Финансовые метрики: стоимость километра для каждого авто (амортизация + топливо), часовые ставки штатных водителей, комиссия самозанятых, штрафы за опоздание (нелинейная функция: при опоздании > 20 мин — удвоение штрафа), бонус за досрочную доставку (не учитывается в бюджете задачи, но влияет на LTV клиента). Требования к будущей платформе (не все совместимы одновременно) 1. Основной алгоритм должен назначать заказы на автомобили и перестраивать маршруты каждые 2 минуты (или при наступлении критических событий), минимизируя суммарные операционные затраты при соблюдении SLA не менее 96%. 2. Подсистема предиктивного реагирования должна за 30–60 минут предсказывать риск срыва конкретного заказа и запускать сценарии смягчения (переброска другого авто, переговоры с клиентом о переносе окна с компенсацией, привлечение самозанятых с динамической ценой). 3. Человеко-машинный интерфейс для диспетчера: он видит «тепловую карту рисков», может вручную вмешаться в любой назначенный маршрут, и система должна мгновенно пересчитать последствия вмешательства (время, стоимость, каскадные опоздания) и показать «цена вмешательства». 4. Платформа объяснимости: по любому опозданию (прошлому или прогнозируемому) система должна за 2 секунды строить цепочку первопричин с указанием вклада каждого фактора (например: «пробка на ул. Ленина выросла на 12 баллов → опоздание +8 мин, водитель Иванов задержался на предыдущей точке на 7 мин → опоздание +5 мин, итого 13 мин»). 5. Работа с неполными и недостоверными данными: GPS может пропадать в туннелях, водители могут не отмечать доставку вовремя, самозанятые — принимать заказ и не выходить на линию. Система должна достоверно оценивать ETA и не допускать каскадного «заражения» расписания оптимистичными прогнозами. Ограничения · Законодательство: нельзя перерабатывать водителей более 10 часов подряд, нельзя назначать заказы без учёта категории прав и температурного режима. · Бюджет инфраструктуры: до 3000 облачных vCPU и 6 ТБ RAM суммарно на пике (15:00–19:00), средний RPS ядра маршрутизации — 500. · Время отклика: API назначения маршрута — p95 < 400 мс, пересчёт всего парка при глобальном возмущении — < 90 сек. · Нельзя полностью заменять существующую TMS (Transport