Senior C++-разработчик автономного движения и поведения робота

Р2Б · Ярославль

  • Более 6 лет
  • Полная
  • На месте работодателя

Описание вакансии

Мы разрабатываем и выпускаем серийных автономных роботов для крупных клиентов. В нашей команде есть разработчики программного обеспечения, инженеры по электронике, механике и автоматике, собственная сборочная линия и испытательная площадка.

Ищем старшего инженера, который возьмёт техническую ответственность за развитие поведения и движения автономного робота. Главная задача позиции — построение надёжного поведения и навигации: от постановки задачи движения и планирования маршрута до команд приводам, обработки препятствий, парковки и безопасного восстановления после отказов. В задачи также входит улучшение уже существующего SLAM-контура без разработки SLAM с нуля.

Нам нужен инженер, способный видеть систему целиком, принимать взвешенные архитектурные решения и доводить алгоритмы от гипотезы и симуляции до устойчивой работы на серийном

роботе.

Работа исключительно из офиса.

Зона ответственности.

  • Проектировать и развивать архитектуру behavior/navigation stack автономного робота;
  • Отвечать за полный контур движения: цель, глобальный маршрут, локальная траектория, скоростные ограничения и команды приводам;
  • Формализовывать поведение робота в штатных, деградированных и аварийных режимах;
  • Развивать глобальное и локальное планирование, следование по маршруту,

перепланирование, recovery/deblocking и парковку;

  • Улучшать навигацию в сложном окружении и нестабильных условиях: дорабатывать и настраивать существующий SLAM, фильтровать и синхронизировать сенсорные данные, повышать устойчивость локализации. Разрабатывать SLAM с нуля не требуется.
  • Работать с costmap, footprint, зонами безопасности и несколькими источниками данных о препятствиях;
  • Обеспечивать безопасную остановку и предсказуемое восстановление при потере локализации, устаревании данных, блокировке или отказе сенсора;
  • Разбирать сложные полевые инциденты по логам, телеметрии и записям сенсоров; отделять дефекты алгоритма от проблем карты, локализации, привода или параметров;
  • Определять метрики качества движения, повышать воспроизводимость и развивать сценарные, интеграционные и регрессионные тесты;
  • Проводить архитектурные и код-ревью, декомпозировать технические задачи и помогать инженерам команды расти;

-Улучшать существующую кодовую базу поэтапно, сохраняя важные продуктовые и safety-инварианты.

Что для нас важно.

  • Глубокое знание современного C++ — C++17/20 — и опыт коммерческой разработки от 5 лет либо сопоставимый по уровню опыт;
  • Опыт разработки заметной части navigation или behavior stack реального автономного робота;
  • Уверенное понимание глобального и локального планирования, path following, collision checking и recovery behavior;
  • Понимание SLAM и локализации на уровне практической доработки и настройки: оценка качества карты и позы, фильтрация данных, диагностика деградации в сложных условиях;
  • Геометрия и кинематика: SE(2), системы координат, footprint, кривизна, скорость, ускорение;
  • Практический опыт работы с occupancy grid, costmap, point clouds и сенсорными

задержками;

  • Уверенная работа с многопоточностью и асинхронными вычислениями: очереди, mutex, отмена задач, тайм-ауты и защита от устаревших результатов;
  • Опыт диагностики на реальном оборудовании с использованием логов, телеметрии, записей сенсоров и профилирования;
  • Уверенная работа в Linux, Git, CMake и средах сборки больших C++-проектов;
  • Способность аргументировать технические решения, объяснять компромиссы и вести задачу от постановки до измеримого результата.

Сильный кандидат с меньшим формальным стажем нам также интересен, если он глубоко работал с реальным AMR и лично отвечал за planning, control или recovery behavior.

Будет преимуществом:

  • Практический опыт с TEB и оптимизацией траекторий на базе g2o;
  • Опыт с Hybrid A*, SMAC Planner, OMPL или другими search- и sampling-based

планировщиками;

  • Опыт с GMapping, scan matching, ICP, lidar/wheel odometry, relocalization и методами сенсорной фильтрации;
  • Опыт с PCL, OpenCV и обработкой 2D/3D сенсорных данных;
  • Знакомство с планированием покрытия площадей и Fields2Cover или аналогичными решениями;
  • Опыт с Behavior Trees;
  • Gazebo, SIL/HIL-тестирование и автоматическое воспроизведение полевых сценариев;
  • SQL, InfluxDB или другие инструменты анализа телеметрии и временных рядов;
  • Опыт эксплуатации AMR, складских, сервисных роботов или беспилотного транспорта у заказчиков.

Ключевые навыки.

  • C++17/20
  • Behavior и navigation
  • SLAM и локализация
  • Фильтрация сенсорных данных
  • Global/local path planning
  • Геометрия и кинематика автономных роботов
  • Многопоточность
  • Linux, CMake, Git
  • Диагностика реальных робототехнических систем

Условия:

  • ЗП обсуждается по итогам собеседования;
  • График работы 5/2 , суббота и воскресенье выходные;
  • Работа в офисе;
  • Оформление по ТК РФ.

Похожие вакансии

Программист С/С++

Завод Промышленной Электроники и Спецтехники Ангстрем · Ярославль
От 1 года до 3 летПолнаяНа месте работодателя11 октября 2026

Ведущий 1С разработчик

до 300 000 ₽ до вычета НДФЛ
Консалт Плюс · Москва
От 3 до 6 летПолнаяНа месте работодателя14 октября 2026