Мы ищем Embedded-разработчика для участия в разработке встроенного программного обеспечения для электронных устройств. В проектах используется связка микроконтроллеров и одноплатных компьютеров, поэтому важен практический опыт работы как с аппаратной частью, так и с ПО.
Задачи:
- Разработка и поддержка встроенного ПО на C / C++;
- Работа с микроконтроллерами Atmel (AVR / SAM), STM32;
- Реализация и отладка драйверов периферии (GPIO, таймеры, ADC и др.);
- Работа с интерфейсами UART, SPI, I²C;
- Отладка ПО на реальном оборудовании с использованием отладчиков;
- Работа с одноплатными компьютерами (например, Raspberry Pi);
- Взаимодействие SBC и микроконтроллеров;
- Участие в интеграции ПО с аппаратной частью;
- Поддержка и развитие существующих решений;
- Ведение технической документации.
Требования:
- Опыт разработки embedded-ПО от 2–3 лет;
- Уверенное владение C / C++ в контексте встроенных систем;
- Понимание работы с памятью, указателями, стеком и кучей;
- Опыт работы с микроконтроллерами Atmel (AVR / SAM), STM32;
- Понимание архитектуры МК и принципов работы периферии;
- Опыт работы с таймерами, GPIO, ADC, UART, SPI, I²C;
- Опыт отладки с использованием JTAG / SWD / debugWIRE;
- Опыт работы с одноплатными компьютерами (например, Raspberry Pi);
- Базовое понимание Linux-окружения на SBC;
- Умение читать схемы и даташиты;
- Опыт работы с Git.
Будет плюсом:
- Опыт bare-metal разработки;
- Опыт работы с RTOS;
- Опыт написания драйверов и HAL;
- Понимание ограничений C++ в микроконтроллерах;
- Опыт оптимизации по памяти и производительности;
- Английский язык на уровне чтения технической документации.
Мы предлагаем:
- График 5/2 с 9-18;
- Стабильные выплаты 2 раза в месяц;
- Участие в разработке реальных устройств;
- Влияние на архитектуру и технические решения;
- Конкурентную заработную плату (обсуждается индивидуально) и бонусы по итогам работы;
- Профессиональный рост и развитие экспертизы;
- Адекватную инженерную команду и понятные процессы.