Habr Career · собрана 1 день назад

Старший/ведущий разработчик C++ (Linux/OpenBMC)

YADRO

УдалёнкаРоссияSenior
PythonDockerLinuxCI/CD

Описание вакансии

Старший/ведущий разработчик C++ (Linux/OpenBMC) Employment type: Полный рабочий день Grade: Senior Skills: C++, Linux, Yocto Project, Python Description: Мы растём и расширяем продуктовую линейку, именно поэтому мы в поиске еще нескольких опытных инженеров-разработчиков в команду разработки OpenBMC — проекта с открытым исходным кодом, возглавляемого в рамках The Linux Foundation при участии многих других компаний. Проект OpenBMC основывается на инфраструктуре проекта Yocto и состоит из большого числа компонентов от загрузчика uboot и ядра ОС Linux до демонов и утилит, работающих в режиме пользователя и активно использующих подсистему d-bus для межпроцессного взаимодействия. Проект OpenBMC предназначен для удалённого управления аппаратным обеспечением серверов посредством протоколов RedFish, IPMI и SNMP, а также имеет интерфейс командной строки и веб-интерфейс. Чем Вам предстоит заниматься: Исправлением ошибок и разработкой новых функций в нашем варианте прошивки OpenBMC, в частности, с целью наладки взаимодействия с UEFI/BIOS x86. Взаимодействием с сообществом и мейнтейнерами проекта OpenBMC. Взаимодействием с нашими схемотехниками и трассировщиками в процессе запуска новых версий и ревизий наших плат. Возможно также непосредственное участие в работах по UEFI/BIOS для x86. Что мы ожидаем от будущего члена команды: Глубокого знания языка C++ 17ый стандарт и выше (Библиотеки: STL, Boost). Отличное знание Linux (как архитектуры драйверов ядра, так и пользовательских API POSIX). Знание принципов работы проекта Yocto. Знание принципов работы systemd и d-bus. Знание Python. Хорошее знание C, достаточное для периодических работ с драйверами Linux и загрузчиком u-boot. Опыт отладки с помощью gdb и иных средств. Знание низкоуровневых протоколов коммуникации, таких как: I²C, SPI, RS232, и т. п.; Знания английского языка (чтение технической литературы). Дополнительно приветствуем: Знание Python. Опыт работы с multimedia подсистемами в Linux kernel/user space (DRM, KMS, X11/Wayland, V4L2 и GStreamer). Опыт отладки видео кодеков, GPU, дисплеев (LVDS, MIPI), камер. Опыт работы с FPGA-тулами, например Xilinx Vivado, логическими анализаторами и анализаторами протоколов, отладчиком opencod или аналогами. Опыт в DevOps: docker, jenkins или gitlab CI/CD, Labgrid, LAVA или аналоги. Знание RISC-V Assembler.