Название: Ведущий инженер-программист по системам управления
Компания: Humanoid
Местоположение: Великобритания, Лондон / Офис
В Humanoid мы верим в будущее, где роботы расширяют человеческие возможности. Именно поэтому мы поставили перед собой миссию по созданию самых передовых, коммерчески масштабируемых и безопасных человекоподобных роботов в мире. Мы воплощаем эту миссию в жизнь с помощью HMND-01 — нашей быстро разработанной человекоподобной платформы, которая развертывается в реальных промышленных условиях — и мы расширяем команду, чтобы вывести ее на новый уровень.
О РОЛИ
Мы ищем ведущего инженера-программиста по системам управления, который присоединится к нашей команде управления в Лондоне.
Мы ищем опытного ведущего инженера-программиста по системам управления для руководства разработкой, интеграцией и поддержкой нашего производственного программного обеспечения для человекоподобных роботизированных систем.
Эта роль находится на стыке систем управления и разработки программного обеспечения — сфокусирована на преобразовании передовых стратегий управления в надежные, поддерживаемые и проверенные производственные системы. Вы будете отвечать за обеспечение того, чтобы стек управления, обеспечивающий работу наших роботов, был детерминированным, безопасным, протестированным и масштабируемым.
Вы обладаете как глубоким опытом в области управления роботами (10 лет в разработке роботизированных систем), так и сильной дисциплиной в области разработки программного обеспечения — проектируя архитектуры, которые надежно работают в условиях реального времени.
ЧТО ВЫ БУДЕТЕ ДЕЛАТЬ
- Проектировать и поддерживать модульные архитектуры управления в реальном времени, поддерживающие передвижение, манипуляцию и телеоператорское управление.
- Реализовывать высокопроизводительные контуры управления и интерфейсы промежуточного ПО для детерминированной и безопасной работы.
- Индустриализировать алгоритмы, обеспечивая готовность к производству, поддерживаемость и производительность.
- Устанавливать четкие границы программного обеспечения и интерфейсы между слоями планирования движения, управления и аппаратного обеспечения.
- Преобразовывать исследовательские прототипы в масштабируемое, поддерживаемое и тестируемое программное обеспечение управления.
- Применять современные практики разработки программного обеспечения (CI/CD, обзоры кода, фреймворки для тестирования, документация).
- Определять метрики надежности, задержки и безопасности и обеспечивать их соблюдение во всем стеке управления.
- Руководить интеграцией программного обеспечения управления в реальном времени на встраиваемых системах или системах на базе Linux, обеспечивая согласованное поведение на различных аппаратных платформах.
- Разрабатывать фреймворки для автоматизированного тестирования (симуляция, аппаратное обеспечение в цикле, регрессионное и нагрузочное тестирование).
- Управлять выпуском и версиями стека управления, обеспечивая стабильность между ветками и развертываниями.
- Проводить профилирование, бенчмаркинг и проверку производительности на роботизированном оборудовании.
- Определять протоколы выпуска для обеспечения воспроизводимости и проверяемости поведения системы.
- Реализовывать программные механизмы защиты от сбоев, сторожевые таймеры и резервирование для критически важных путей управления.
- Тесно сотрудничать с командами по аппаратному обеспечению и безопасности для обеспечения обнаружения неисправностей, постепенного снижения производительности и безопасных переходов в состояния.
- Лидировать своим примером посредством практического кодирования, обзоров кода и отладки на уровне системы.
- Обучать инженеров лучшим практикам разработки программного обеспечения управления, методологиям тестирования и оптимизации производительности.
- Участвовать в разработке долгосрочной дорожной карты программного обеспечения управления, руководя развитием архитектуры и стандартами качества.
ЧТО МЫ ИЩЕМ
- Степень бакалавра, магистра или доктора наук в области робототехники, систем управления, компьютерной инженерии или смежной области.
- Более 10 лет опыта разработки программного обеспечения управления робототехникой для систем реального времени.
- Подтвержденный опыт работы с C++ (современные стандарты) и Python для реализации, тестирования и автоматизации программного обеспечения.
- Глубокие знания в области теории управления, кинематики и динамики роботов, а также систем управления в реальном времени.
- Опыт развертывания и проверки программного обеспечения управления как в симуляции, так и на физических роботизированных платформах.
- Твердое понимание программной архитектуры, контроля версий (Git), конвейеров CI/CD и автоматизированного тестирования.
- Отличные навыки отладки, профилирования и оптимизации производительности системы.
- Подтвержденный опыт выпуска программного обеспечения робототехники производственного качества, а не исследовательских прототипов.
- Подтвержденный опыт управления жизненным циклом программного обеспечения, включая управление выпуском и интеграцию между командами.
Желательно:
- Опыт работы с ROS2, Linux реального времени или средами RTOS.
- Знакомство с соответствующими инструментами и библиотеками, такими как Eigen, Pinocchio, Placo, PyTorch, MuJoCo и т. д.
- Знакомство с системами, критически важными для безопасности, резервированием и механизмами отказа.
- Опыт в области управления всем телом, координации приводов или выполнения траекторий в реальном времени.
- Опыт работы с импедансным управлением в суставах/декартовых координатах и управлением силой.
- Сильные коммуникативные навыки и навыки лидерства, способность влиять на архитектурные решения и инженерную культуру.
- Опыт работы с методами обучения (например, RL, обучение с имитацией).
ЧТО МЫ ПРЕДЛАГАЕМ
- Значительное время для отдыха и восстановления: 23 дня ежегодного отпуска (начисляемого), 15 дней оплачиваемого больничного и оплачиваемые государственные праздники.
- Полностью оплачиваемое частное медицинское страхование для сотрудников из Великобритании с широким доступом к поставщикам услуг, виртуальной и очной помощью, а также сильной поддержкой психического здоровья и лечения серьезных заболеваний.
- Опционы включены — мы считаем, что те, кто строит, должны разделять результаты своего труда.
- Пенсионная схема с общим взносом 8% (5% работник, 3% работодатель) от полного заработка.
- Бесплатный ежедневный завтрак, обед по меню и закуски в офисе.
- Сотрудничество с ведущими инженерами, исследователями и экспертами по продуктам в области ИИ и робототехники.
- Свобода влиять на продукт и брать на себя ответственность за ключевые инициативы.