Разработчик (КШ)
Задачи
- Интеграция с Fleet Management System (FMS): Разработка клиентской части для взаимодействия робота с диспетчерской системой. Обработка команд FMS (назначение экшенов, отмена, переназначение целей). Публикация телеметрии (статус, заряд батареи, позиция, ошибки). Реализация протоколов обмена (WebSockets, MQTT). Синхронизация состояния «робот — сервер» (handshake, подтверждения, retry-политики);
- Разработка и интеграция FSM (конечных автоматов): Проектирование логики поведения робота на основе BehaviorTree или собственных FSM. Управление переходами между состояниями: инициализация, локализация, ожидание команды от FMS, навигация к цели, обработка коллизий, зарядка, взаимодействие с манипулятором. Интеграция FSM с Navigation2, MoveIt 2 и FMS;
- Разработка и кастомизация модулей Navigation2: Плагины глобального/локального планирования, контроллеры, поведенческие деревья для сложных логик;
- Интеграция и настройка систем локализации: AMCL / slam_toolbox / визуальные маркеры / лидарная одометрия + robot_localization (EKF/UKF) для индустриальной точности в сложных indoor-условиях;
- Проектирование и оптимизация систем управления движением: Контроллеры (PID, MPC), настройка под различные кинематические схемы;
- Проведение и анализ полевых испытаний: Самостоятельное планирование и проведение натурных тестов на полигоне и в складских помещениях. Сбор логов, аналитика причин сбоев. Доводка параметров и кода до целевых метрик;
- Обеспечение надёжности в сложных средах: Узкие проходы, смена освещённости, погрешности одометрии;
- Участие в код-ревью и архитектурных решениях: CI/CD (GitHub/GitLab Actions), профилирование производительности (valgrind, gdb, perf), наставничество junior-инженеров.
Требования
- Опыт работы: от 2 лет коммерческой разработки в робототехнике (ROS/ROS 2, C++);
- Стек навигации: глубокое понимание Navigation2. Опыт нестандартной адаптации под конкретное шасси;
- Локализация / SLAM: практическая настройка slam_toolbox, AMCL, robot_localization (EKF);
- Управление движением: настройка PID, MPC. Опыт с реальными роботами (задержки, нелинейности);
- FSM и архитектура поведения: опыт проектирования конечных автоматов или BehaviourTree для коммерческих роботов;
- Интеграция с FMS: понимание протоколов обмена (REST, MQTT, WebSockets);
- Программирование: C++17/20 (STL, шаблоны, многопоточность, RAII) и Python (анализ логов, скрипты). Умение писать production‑ready код;
- Инструменты: Linux (Ubuntu), Docker, Git, CMake;
- Симуляция: опыт с Gazebo Classic/Ignition или MuJoCo или Isaac Sim.
Желательно
- Опыт с манипуляторами (совмещённая навигация «база + рука», MoveIt 2, контроль коллизий);
- Знание PCL, OpenCV, RTAB-Map (визуально-лидарный SLAM);
- Опыт с FMS (OpenRMF) или собственными разработками;
- Понимание принципов DDS;
- Английский на уровне чтения научных статей (IROS/ICRA) и технических дискуссий.
Условия работы
- Работа в аккредитованной IT-компании;
- Гибридный формат работы в Москве и МО;
- Официальное оформление с первого дня работы и поддержка куратора во время адаптации;
- Прозрачная система развития: понятные грейды, внутреннее и внешнее обучение, индивидуальные планы развития и матрицы компетенций;
- Экологичная культура и адекватные руководители;
- Компенсация затрат на медицинские услуги, ментальное благополучие, спорт, тимбилдинги и использование AI-помощников;
- Бонус 15% с покупок во ВкусВилл;
- Социальная ответственность: поощряем донорство, оказываем материальную помощь при рождении ребёнка;
- Партнерская программа «Зелёный свет»: за рекомендации знакомых специалистов можно получить до 50 000 руб.