Разработчик RSE (КШ)
Задачи
Вакансия Robotics Software Engineer необходима для обеспечения системной интеграции программных компонентов робота: разработки и поддержки ROS 2-нод, драйверов устройств, настройки взаимодействия компонентов робота и конфигурации сети, а также сборки и деплоя ПО.
- Интеграция программных модулей (navigation, perception, control) в программную архитектуру робота;
- Разработка ROS 2-нод и микросервисов;
- Разработка и поддержка драйверов для сенсоров и исполнительных механизмов;
- Настройка взаимодействия между компонентами системы (DDS, сеть, middleware);
- Интеграция ПО с роботизированной платформой и периферийным оборудованием;
- Отладка и диагностика проблем на уровне всей системы (ROS, сеть, железо);
- Подготовка docker-образов для запуска софта на роботах;
- Участие в тестировании и развёртывании ПО на реальных роботах.
Требования
Требования:
- Уверенные знания Python;
- Практический опыт разработки систем на основе ROS 2, понимание его архитектуры и концепций. Знания гайдлайнов REP;
- Опыт работы с веб-технологиями: HTTP, WebSocket, WebRTC, FastAPI;
- Понимание принципов построения архитектуры робототехнических систем;
- Опыт разработки, интеграции и сопровождения драйверов для сенсоров и исполнительных механизмов;
- Уверенная работа в Linux;
- Опыт работы с Git;
- Опыт работы с Docker;
- Умение писать поддерживаемый код и работать в команде;
- Способность быстро разбираться в существующем коде и интегрировать новые компоненты.
Желательно
- Базовые знания в области теории управления;
- Знание C++;
- Опыт работы с вендорским оборудованием.
- Навыки настройки и конфигурирования FastDDS или CycloneDDS;
- Опыт настройки сетевого оборудования (Mikrotik, OpenWRT) и базовые знания сетевых технологий. Опыт диагностики сетевых проблем;
- Опыт работы с инструментами DevOps: Kubernetes, Helm, GitLab CI;
- Навыки работы с пайплайнами обработки видео: GStreamer, FFmpeg;
- Опыт работы с популярными пакетами ROS: ros2_control, Nav2, MoveIt, Autoware;
- Опыт разработки на архитектуре ARM, в частности опыт работы с Nvidia Jetson;
- Опыт работы с промышленными шинами и протоколами: CAN, CANopen, EtherCAT, Modbus;
- Базовые знания Machine Learning в домене робототехники;
- Опыт участия в проектах по автоматизации, роботизации или внедрению распределённых систем на реальном оборудовании.