Middle or Senior Embedded software engineer (Разработчик ПО для встраиваемых систем)

Необходимо иметь:
• Опыт: 1 год работы с С, С++ для встраиваемых систем или для многопоточных серверных приложений

Крайне желательно иметь:
• Опыт: 3–5 лет работы с С, С++ для встраиваемых систем
• Понимание принципов безопасной работы с оперативной памятью в С и С++
• Понимание принципов применения различных типов памяти, используемых в микроконтроллерных системах
• Опыт использования известных RTOS (таких как FreeRTOS, TI RTOS, ChibiOS и т. д.)
• Опыт проектирования программной архитектуры
• Понимание и опыт организации конкурентного доступа к ресурсам
• Опыт работы с архитектурой ARM, в т. ч. с A8/A9
• Опыт работы с DSP
• Опыт работы с коммуникационными протоколами и интерфейсами — CAN, TCP/IP, RS232/485, I2C, SPI и т. д.
• Опыт работы с DMA, контроллерами прерываний
• Опыт работы с различной микроконтроллерной периферией — ADC, Timers/PWM, Flash, PLL и т. д.
• Опыт изучения Errata Sheets

Желательно иметь:
• Опыт разработки обычных, не встраиваемых систем
• Опыт работы в команде, использование DCVS (git, mercurial)
• Опыт unit-тестирования кода на C и C++
• Опыт unit-тестирования кода на любых других языках программирования
• Опыт использования Embedded Linux
• Знания в сфере цифровой обработки сигналов, преобразование Фурье и т. д.
• Понимание принципов работы детерминированных автоматов
• Опыт организации информационного обмена поверх CAN, TCP/IP
• Опыт работы с измерительными приборами
• Знания общих принципов построения электронных логических схем, умение читать логические цепочки принципиальных схем


Условия работы:
• Легальное трудоустройство, полный соцпакет, свободный график, возможна частичная занятость.