Программист встраиваемых систем / Embedded Developer (наземная робототехника / стационарные объекты)

Дата размещения вакансии: 23.12.2025
Работодатель: Электромотив
Уровень зарплаты:
з/п не указана
Город:
Москва
Требуемый опыт работы:
От 1 года до 3 лет

Разрабатываем системное и низкоуровневое ПО для наземных роботов и стационарных объектов: навигация, связь, управление исполнительными подсистемами, телеметрия, диагностика, контроль АКБ, коммуникации.
Работа «по-взрослому»: real-time, сеть, надежность, отладка на железе, понятные интерфейсы и документация. Большой плюс — сочетание embedded-разработки с алгоритмами навигации/управления.

Обязанности:

  • Разработка встроенного ПО под MCU (в т.ч. STM32/ARM и RISC-V) для роботов и стационарных контроллеров.
  • Проектирование архитектуры модулей: драйверы, сервисы, коммуникации, диагностика, обновление, логирование.
  • Интеграция и поддержка RTOS (FreeRTOS): задачи, очереди, таймеры, синхронизация, работа с ISR.
  • Реализация протоколов обмена и сетевого взаимодействия: CAN/Ethernet, маршрутизация данных, очередность, статусы/подтверждения.
  • Драйверная разработка: UART/SPI/I2C/CAN, ADC/DMA, таймеры/PWM, GPIO, watchdog, EEPROM/Flash.
  • Надежный сбор телеметрии и диагностики: события, метрики, коды ошибок, журналирование, “черный ящик”.
  • Поддержка подсистем питания/АКБ: измерения, пороги, алгоритмы защиты, состояния, деградации, аварийные сценарии.
  • Реализация загрузчика и безопасного обновления прошивки: проверка целостности, откат, версионирование, протокол апдейта.
  • Оптимизация по памяти/скорости/энергии: профилирование, анализ узких мест, предсказуемость таймингов.
  • Реализация базовых DSP-цепочек: фильтрация, детекторы, оценка сигналов (в рамках задач датчиков/телеметрии).
  • Системная отладка на железе: JTAG/SWD, чтение ассемблера, анализ падений, гонок, редких зависаний.
  • Написание и поддержка документации: API, протоколы, состояния, требования, схемы взаимодействия, инструкции для интеграции/производства.
  • Поддержка стендов и тестов: HIL/bench-тесты, симуляторы обмена, регрессионные проверки ключевых функций.
  • Участие в интеграции робототехнических подсистем: навигация/управление/связь (как развитие роли и зона роста).

Требования:

  • Отличное знание C (embedded).
  • Понимание ассемблера на уровне чтения/отладки для STM32/ARM.
  • Знание архитектуры RISC-V (база + ключевые особенности).
  • Понимание цифровой схемотехники на уровне разработчика ПО (тайминги, уровни, подтяжки, причины ошибок).
  • Интерфейсы и протоколы: UART/SPI/I2C/CAN/Ethernet (+ понимание сетевого взаимодействия).
  • FreeRTOS: задачи, очереди, синхронизация, ISR, гонки, тайминги, профилирование.
  • Оптимизация кода (память/скорость/энергия), соблюдение требований надежности и предсказуемости.
  • Опыт написания загрузчиков/обновления прошивки (bootloader, безопасный апдейт, откат/проверка).
  • DSP: цифровые фильтры и базовые алгоритмы обработки сигналов.
  • Умение оформлять документацию на ПО (модули, протоколы, API, требования).
  • Должен уметь разработать простую плату или уверенно читать/обсуждать схемы (МК + питание + базовые интерфейсы).
  • Уверенное понимание модели памяти/прерываний/периферии MCU, работы DMA и таймеров.
  • Опыт работы с сетевыми стеками/концепциями: сокеты/пакеты, очереди, таймауты, подтверждения, повторные передачи (на уровне embedded-систем).
  • Умение проектировать состояния и протоколы: state machine, версии, совместимость, обработка ошибок и деградаций.
  • Владение инструментами отладки: GDB/LLDB, JTAG/SWD, анализ дампов/stack traces, логирование и трассировка.
  • Понимание требований к надежности: watchdog, brownout, безопасные режимы, защита от “плохих” данных, контроль времени выполнения.
  • Опыт работы с Git и инженерной дисциплиной: код-ревью, релизы, ведение изменений, воспроизводимые сборки.

Условия:

  • Конкурентоспособный уровень заработной платы, обсуждается на собеседовании и зависит от вашего опыта и компетенций.
  • График работы: пн. - пт. с 9 до 18 (возможны варианты с 8 до 17 и с 10 до 19).
  • Режим работы: офис
  • Трудоустройство согласно ТК РФ.
  • Испытательный срок 3 мес.
  • Офис в р-не ст. м. Румянцево (БЦ Румянцево).
  • Креативная и дружелюбная среда, поддержка инициатив и отсутствие бюрократии.