Senior C++ разработчик бортового программного комплекса
СберМосква
SeniorOfficeКачество текста 3/5
BackendC++PythonDockerCI/CD1ч
Обязанности:
• проектировать и разрабатывать C++/Python-модули бортового ПО в окружении Linux/ROS2: навигационные сервисы, интерфейсы к сенсорам, обработку телеметрии, сервисы диагностики и журналирования;
• рефакторить исследовательский код в поддерживаемую архитектуру: понятные API, разделение ответственности, контроль зависимостей, воспроизводимые сборки, документация по интерфейсам;
• оптимизировать производительность под ограничения бортовых платформ: CPU/GPU, память, задержки, тепловой режим, устойчивость к деградации вычислительных ресурсов;
• реализовывать отказоустойчивость: health-checks, watchdog, обработку потери/задержки данных, безопасные fallback-сценарии, корректное восстановление модулей после сбоев;
• разрабатывать unit-, integration- и regression-тесты; настраивать CI/CD, статический анализ, санитайзеры, проверку покрытия и автоматические прогоны на rosbag/логах испытаний;
• Интегрировать алгоритмы навигации, восприятия и управления с автопилотами, БЦВМ, каналами связи и наземными средствами отладки;
Требования:
• опыт промышленной разработки на C++ от 6 лет; уверенное владение C++17/20, STL, шаблонами, многопоточностью, RAII, профилированием и оптимизацией;
• опыт Python для прототипирования, тестов, анализа логов и автоматизации инженерных сценариев;
• практический опыт Linux, CMake, Git, Docker/контейнеров, CI/CD, статического анализа, unit- и integration-тестов;
• опыт разработки ПО для робототехники, БПЛА, ADAS, промышленного зрения, автономных систем или другого embedded/real-time домена;
• понимание ROS2: nodes, topics, services/actions, lifecycle nodes, QoS, rosbag, tf2; готовность работать с DDS-настройками и задержками обмена;
• умение читать технические требования, переводить их в архитектурные решения и измеримые метрики качества: latency, throughput, jitter, загрузка CPU/GPU, устойчивость к сбоям;
• проектировать и разрабатывать C++/Python-модули бортового ПО в окружении Linux/ROS2: навигационные сервисы, интерфейсы к сенсорам, обработку телеметрии, сервисы диагностики и журналирования;
• рефакторить исследовательский код в поддерживаемую архитектуру: понятные API, разделение ответственности, контроль зависимостей, воспроизводимые сборки, документация по интерфейсам;
• оптимизировать производительность под ограничения бортовых платформ: CPU/GPU, память, задержки, тепловой режим, устойчивость к деградации вычислительных ресурсов;
• реализовывать отказоустойчивость: health-checks, watchdog, обработку потери/задержки данных, безопасные fallback-сценарии, корректное восстановление модулей после сбоев;
• разрабатывать unit-, integration- и regression-тесты; настраивать CI/CD, статический анализ, санитайзеры, проверку покрытия и автоматические прогоны на rosbag/логах испытаний;
• Интегрировать алгоритмы навигации, восприятия и управления с автопилотами, БЦВМ, каналами связи и наземными средствами отладки;
Требования:
• опыт промышленной разработки на C++ от 6 лет; уверенное владение C++17/20, STL, шаблонами, многопоточностью, RAII, профилированием и оптимизацией;
• опыт Python для прототипирования, тестов, анализа логов и автоматизации инженерных сценариев;
• практический опыт Linux, CMake, Git, Docker/контейнеров, CI/CD, статического анализа, unit- и integration-тестов;
• опыт разработки ПО для робототехники, БПЛА, ADAS, промышленного зрения, автономных систем или другого embedded/real-time домена;
• понимание ROS2: nodes, topics, services/actions, lifecycle nodes, QoS, rosbag, tf2; готовность работать с DDS-настройками и задержками обмена;
• умение читать технические требования, переводить их в архитектурные решения и измеримые метрики качества: latency, throughput, jitter, загрузка CPU/GPU, устойчивость к сбоям;