Название: Autonomy Platform & Runtime Lead
Местоположение: Штаб-квартира / Торранс, Калифорния, США
Кто мы
Neros — оборонная технологическая компания, восстанавливающая американский парк беспилотных летательных аппаратов. Мы разрабатываем и производим высокопроизводительные беспилотные системы, которые проходят испытания в боевых условиях, итеративно обновляются со скоростью стартапа и производятся в массовом масштабе. Культура нашей команды — быстрая, практичная, одержимая сокращением разрыва между проектированием и внедрением.
Поскольку дроны трансформируют характер ведения войны, Neros поставляет системы, необходимые Западу для конкуренции на современном поле боя и сдерживания противников демократии. Мы нанимаем инженеров, операторов и создателей, которые хотят быстро двигаться, брать на себя исключительную ответственность и внедрять возможности в руки бойцов за месяцы, а не годы.
Что вы будете делать
Лидер платформы автономности отвечает за бортовую программную платформу, на которой работает все программное обеспечение Neros для автономности, охватывающую архитектуру среды выполнения и интерфейсы модулей, планирование в реальном времени и учет задержек, запись данных на борту и синхронизацию времени, а также путь сборки, выпуска и развертывания на летательном аппарате. Эта роль предполагает руководство небольшой командой инженеров платформы при непосредственном участии в разработке программного обеспечения, и отвечает за поддержание единой настраиваемой среды выполнения для всех беспилотных летательных аппаратов Neros, а не за программные разветвления для каждой программы. Лидер платформы автономности дополнительно представляет автономность при совместном проектировании аппаратного обеспечения, перенося требования к вычислительной мощности, энергопотреблению, тепловым характеристикам и массе полезной нагрузки автономности в решения по спецификации материалов, и отвечает за развертывание стека программного обеспечения автономности на выбранном встроенном вычислительном оборудовании.
Обязанности
- Отвечать за архитектуру, дорожную карту и доставку среды выполнения автономности, включая контракт интерфейса модуля, модель процессов и потоков, обмен сообщениями, частоту выполнения и гарантии задержек, на основе которых работает каждая другая группа по автономности.
- Поддерживать единую среду выполнения автономности для всех платформ транспортных средств через слой конфигурации платформы, таким образом, чтобы новая ревизия планера доставлялась как изменение конфигурации, а не как программное разветвление, и обеспечивать соблюдение этого ограничения против расхождений по программам.
- Отвечать за планирование в реальном времени, учет задержек и мониторинг дедлайнов, включая измерение от датчика до исполнительного механизма в сквозном режиме на летном аппаратном обеспечении при постоянной тепловой нагрузке, и предоставлять инструментарий, необходимый для обеспечения задержки как условия выпуска.
- Отвечать за сборку, выпуск, версионирование и развертывание программного обеспечения автономности на испытательных стендах и летных аппаратах, инфраструктуру непрерывной интеграции автономности совместно с организацией оценки, а также за запись данных на борту и аппаратное временное маркирование, включая захват полного потока с триггерной выгрузкой, синхронизацию времени между датчиком, вычислительным устройством и полетным контроллером, а также целостность журналов, без ухудшения производительности контура управления.
- Отвечать за представление автономности при совместном проектировании аппаратного обеспечения и принятии решений по спецификации материалов путем количественной оценки требований к вычислительной мощности, энергопотреблению, тепловым характеристикам и массе на основе измеренных бюджетов задержек, и отвечать за развертывание изученных компонентов на выбранном встроенном ускорителе, включая квантование и характеризацию результирующего компромисса между точностью и задержкой.
- Руководить и развивать команду инженеров платформы посредством найма, наставничества и технического обзора, продолжая непосредственно участвовать в кодовой базе в качестве инженера.
У вас должны быть следующие навыки
- Опыт работы более 5 лет в разработке производственного встраиваемого, робототехнического или программного обеспечения реального времени, включая более 2 лет руководства инженерной командой или технической программой в качестве технического руководителя или менеджера инженерной команды, с постоянным практическим техническим вкладом.
- Демонстрируемая доставка программного обеспечения на физический транспорт или встраиваемую платформу, работающую вне лаборатории, такую как беспилотные летательные аппараты, наземные или воздушные роботы, автономные транспортные средства, автомобильные или аэрокосмические системы, включая ответственность за ввод в эксплуатацию, интеграцию и полевую эксплуатацию, а не только за симуляцию или исследования.
- Экспертное владение современным C++ в среде Embedded Linux и рабочее владение Python для инструментов и автоматизации, разработанное в соответствии с требованиями реального времени и ограниченными ресурсами.
- Ответственность за архитектуру среды выполнения или промежуточного слоя программного обеспечения робототехнической или транспортной системы, охватывающую модель процессов и потоков, межпроцессное взаимодействие и обмен сообщениями, определение интерфейса модуля и планирование выполнения, с использованием ROS 2, DDS, Zenoh, LCM или проприетарного эквивалента.
- Глубокие знания в области инженерии систем реального времени, включая политики и приоритеты планирования, привязку и изоляцию ЦП, блокировки или передачу данных без копирования, анализ джиттера и дедлайнов, а также измерение распределения сквозных задержек на целевом оборудовании, а не в симуляции.
- Опыт реализации синхронизации времени и аппаратного временного маркирования на датчиках, вычислительных устройствах и полетном контроллере или контроллере транспортного средства с использованием PTP или gPTP, PPS, линий триггера датчика или эквивалента, а также согласования нескольких временных доменов в записанных данных.
- Ответственность за сборку, выпуск и непрерывную интеграцию для встраиваемых целевых систем, включая управление перекрестной компиляцией и инструментарием, Yocto, Buildroot или контейнерные среды сборки, версионированные и воспроизводимые артефакты, а также обновление программного обеспечения по воздуху или в полевых условиях.
- Опыт построения высокоскоростной записи данных на борту, включая кольцевой буфер и триггерный захват, потоки данных с нескольких датчиков и видео, бюджетирование хранилища и пропускной способности, а также целостность журналов, доставленные без ухудшения производительности контура управления.
- Опыт развертывания нейронных сетей на встраиваемых ускорителях, таких как NVIDIA Jetson и TensorRT, Qualcomm QNN или SNPE, Texas Instruments TIDL, Hailo или эквивалент, включая квантование и характеризацию результирующего компромисса между точностью и задержкой.
- Опыт работы непосредственно с командами по аппаратному и электрическому проектированию для определения требований к вычислительной мощности, памяти, энергопотреблению, тепловым характеристикам и массе для встраиваемого вычислительного модуля, включая выбор системного модуля или платы-носителя и участие в решениях по спецификации материалов.
Желательно
- Опыт работы с беспилотными летательными аппаратами, в частности, включая интеграцию между бортовым бортовым компьютером и полетным контроллером или автопилотом, с использованием PX4, ArduPilot и MAVLink или проприетарного эквивалента, а также знакомство с режимами полета, логикой включения и поведением защиты в случае сбоя на этом стыке.
- Проектирование и создание стендов Hardware-in-the-Loop (HIL), включая симуляцию и ввод данных датчиков, аппаратное инструментирование временных меток и интеграцию стенда HIL в автоматизированное управление выпуском.
- Опыт сопровождения программной платформы при переходе к серийному производству, включая управление данными калибровки на единицу, настройку на заводе и поэтапное обновление программного обеспечения для большого развернутого парка.
Диапазон зарплат в США
$201,000 – $281,000 USD
Диапазон заработной платы для этой должности является оценкой, основанной на широком спектре факторов компенсации, включая только базовую заработную плату. Фактическая заработная плата может варьироваться в зависимости от (но не ограничиваясь) опыта работы, образования и/или обучения, критически важных навыков и/или соображений бизнеса. Высококонкурентные гранты на акции считаются частью общего пакета компенсации Neros.
Мы являемся работодателем, предоставляющим равные возможности. Мы приветствуем всех кандидатов без учета расы, цвета кожи, религии, пола, сексуальной ориентации, гендерной идентичности, национального происхождения, статуса ветерана или инвалидности.