написание user-space приложений на C++ для Embedded Linux;
построение архитектуры многопоточных приложений с применением паттернов проектирования;
разработка кода для управления периферией с помощью драйверов Linux;
разработка кода для взаимодействия с ПЛИС;
участие в тестировании и написании документации для изделий;
работа в команде и участие в код-ревью (Gitlab).
Требования:
опыт коммерческой разработки на С++(С++11/14/17) для встраиваемых систем (ARM) от 3 лет;
опыт работы с интерфейсами (не обязательно все) I2C/CAN/I2S/SPI/UART;
уверенное понимание и опыт работы с сетевыми приложениями TCP/UDP;
опыт разработки многопоточных приложений (std::thread/ptread);
опыт работы с системой сборки CMake;
опыт работы Git с использованием ветвления;
английский на уровне чтения технической документации. Будет плюсом (не обязательно): настройка сборки Linux при помощи Buildroot/Yocto/Petalinux, понимание принципов цифровой обработки сигналов (ЦОС), опыт работы с SoC Xilinx Zynq в том числе под управлением Petalinux.
Условия:
работа в аккредитованной IT-компании;
оформление допуска 3 формы (без ограничения на выезд);
интересные задачи на стыке железа и высокоуровневого ПО;
минимальная бюрократия в принятии решений;
график 5/2, возможен гибрид после завершения адаптационного периода;
свободное окно начала рабочего дня (с 8 до 13);
офис в 15 минутах от остановки "Политехнический институт";