Senior-разработчик / архитектор бортового ПО БПЛА (ArduPilot, Companion, ЦУП)

400 000 – 650 000 ₽
Open Digital Innovations
Москва Постоянная занятость Полный день

Описание

Что надо знать и уметь: Делаем тяжёлые грузовые мультироторы наArduPilot с бортовым компьютером Raspberry Pi 5+ Hailo-8, навигацией без GPS (VIO) и собственнымназемным ПО «Точка ЦУП». Ищем сильногоразработчика, который отвечает за архитектурувсей программной части «борт — компаньон —земля», лезет в исходники ArduPilot, когда этонужно, и ведёт команду разработчиков. Стек:Полётный контроллер: ArduPilot Copter(единственная система) — C++ исходники,сборка под свои платы, Lua, SITL, ReplayКомпаньон: Raspberry Pi 5 + Hailo-8, Linux,Python 3, Go, Rust, C++17 (там, где нужнаинтеграция с ArduPilot/HailoRT), systemd,Docker.Протоколы: MAVLink (в т.ч. кастомныесообщения и диалекты), DroneCAN,UART/Ethernet/PPP.Видео и CV: GStreamer, OpenCV, HailoRT,камеры global shutter.Навигация: VIO / визуальная одометрия,внешняя навигация в EKF3, оптический поток,дальномеры.Наземка: «Точка ЦУП» — Go / Python / Rust,видео по GStreamer, MAVLink.Инструменты: Git, CI, pytest/gtest, разбор логов,PID Toolbox / MAVExplorer. Обязанности:Архитектура и кодПроектирование и развитие архитектурыпрограммной части: разделениеответственности между FC, компаньоном иЦУП, протоколы обмена, отказоустойчивость,поведение при потере связи и отказедатчиков.Разработка и сопровождение сервисовкомпаньона на Python/C++: навигация,управление миссией через Guided, обработкасобытий, телеметрия, watchdogДоработка ArduPilot на уровне исходников:драйверы датчиков, правки в режимах ибиблиотеках, hwdef под свои платы,собственная ветка с понятной историей ипроцедурой обновления на новые релизыИнтеграция VIO/CV-пайплайна с EKF3:тайминги, ковариации, источники (EK3_SRC),lane switching; доказательство корректностипо логам и SITL.Развитие «Точки ЦУП»: протокол с бортом,отображение телеметрии и видео,планирование миссий, работа с несколькимибортами.Lua-скрипты и кастомные режимы ArduPilotпод задачи заказчика. Команда и процесс:Техническое руководство middle-разработчиком(ами): постановка задач,ревью, рост.Участие в подборе разработчиков: тестовыезадания, технические собеседованияОрганизация процесса: репозитории, CI,обязательные SITL-тесты перед бортом,релизы образов компаньона и прошивок,changelog.Политика бэкапов и версионирования парка:параметр-файлы, прошивки, образыкомпаньона и конфигурации ЦУП по каждомуборту с возможностью отката.Техническая документация: архитектура,протоколы, инструкции по развёртыванию,разбор инцидентов.Совместная работа с инженерами настройки иведущим инженером: постановка лётныхэкспериментов, разбор логов, решение «этожелезо или софт». Требования:Опыт разработки от 5–6 лет, из них не менее 2лет в робототехнике, БПЛА или embeddedLinux.Python и Go и/или Rust на уровне senior, плюсуверенный C++ для работы с исходникамиArduPilot и HailoRT: многопоточность, работа сжелезом, ограничения по CPU/памятиArduPilot на уровне исходников: собиралипрошивку, вносили правки, ориентируетесь вструктуре библиотек (AP_, AC_), понимаетеEKF3, position/attitude controller, как работаютрежимы и failsafe.Глубокое знание MAVLink: проектированиеобмена, кастомные сообщения, генерациябиблиотек, работа с несколькими sysidОпыт с VIO/SLAM или другой внешнейнавигацией в связке с полётнымконтроллером: хотя бы один проект,доведённый до полёта.Опыт с GStreamer и CV в реальном времени,деплой нейросетей на edge-ускорителиLinux на уровне системного разработчика:сборка образов, systemd, сеть, отладкапроизводительности.Опыт технического лидерства: вели 2+разработчиков, отвечали за архитектуру ирезультат.Активный пользователь Claude / LLM-ассистентов в разработке (vibe coding какрабочий инструмент): быстро прототипируете,но проверяете и несёте ответственность закод.Английский: документация, исходники,обсуждения на GitHub и discuss.ardupilot.orgГотовность ездить на площадку наинтеграцию и тестовые полёты; на площадке— по правилам безопасности. Будет плюсомПринятые PR в ArduPilot или активность всообществе ROS 2 / ArduPilot DDSDroneCAN: разработка периферии наAP_Periph, свои узлы.Опыт разработки наземных станций: QGC,Mission Planner, свои решенияОпыт с самолётами и QuadPlane на ArduPilotPlane, работа с одометрией и навигационнымидатчиками.Опыт с mesh-сетями и радиоканаламипередачи данныхЗнание регуляторики БАС в РФ, Remote ID /OpenDroneID в ArduPilot.Пилотирование квадрокоптера.Безопасность и ответственность.Код, который влияет на полёт, идёт на борттолько после прогона в SITL и ревью; нареальном борту — только с инженеромнастройки по чек-листу.Каждая правка прошивки, образа компаньонаи параметр-файла — с версией и записью вchangelog.Условия:Оформление по ТК РФ, полная занятость,гибрид. Зарплата по результатам собеседования.Работа с информацией заказчиков под NDA.Прямое влияние на техническую политикукомпании, работа с руководителемразработки.

Откликнуться
Источник: hh · 3 дня назад

Похожие вакансии в городе Москва

Все вакансии в городе Москва →