C++ разработчик для серверных прошивок OpenBMC
YADRO — лидер российского рынка серверных решений, работа с OpenBMC дает уникальный опыт на стыке софта и железа, а возможность удаленки делает вакансию очень привлекательной.
Сформировано ИИ автоматически. Не является проверкой вакансии или работодателя.
Сложность вакансии
Роль требует глубоких знаний системного программирования, владения современным C++ и специфическим стеком (Yocto, D-Bus), а также умения работать с «железом» и open-source сообществом.
Сформировано ИИ автоматически. Не является проверкой вакансии или работодателя.
Анализ зарплаты
Зарплата в объявлении не указана, но для Senior/Middle+ C++ разработчиков в системном секторе Москвы и Санкт-Петербурга рыночные предложения обычно находятся в диапазоне 250-400 тысяч рублей. Проекты уровня OpenBMC часто оплачиваются по верхней границе рынка из-за дефицита специалистов.
Сформировано ИИ автоматически. Не является проверкой вакансии или работодателя.
Описание вакансии
*💻 YADRO ищет C++ разработчика для серверных прошивок OpenBMC*
Нужно развивать прошивку, которая отвечает за удалённое управление серверным оборудованием: добавлять функции, исправлять ошибки и налаживать взаимодействие с UEFI/BIOS. Часть работы — общение с сообществом и разработчиками OpenBMC.
Нужны C++17 и новее, Linux, Yocto, systemd, d-bus и Python. Пригодится опыт отладки низкоуровневого кода и работы с аппаратными протоколами.
Можно удалённо. В карточке указаны Москва, Петербург и Нижний Новгород; работа из-за рубежа не подтверждена. Зарплата не раскрыта.
*➡️* Откликнуться
Умный подбор, сопроводительные письма, советы по отказам — больше приглашений.

Навыки
- C++
- Linux
- Yocto Project
- Systemd
- D-Bus
- Python
- UEFI
- BIOS
- IPMI
Возможные вопросы на собеседовании
Проверка понимания межпроцессного взаимодействия в Linux-системах, критически важного для OpenBMC.
Расскажите о принципах работы D-Bus. В каких случаях вы бы предпочли использовать методы, а в каких — сигналы?
OpenBMC активно использует Yocto для сборки дистрибутивов. Знание слоев и рецептов обязательно.
Как устроена структура слоев в Yocto Project и как переопределить поведение существующего рецепта через bbappend?
Проверка навыков написания безопасного и эффективного кода на современном C++.
Какие преимущества дают умные указатели и семантика перемещения при управлении ресурсами в системном программировании?
Важно понимать, как ПО взаимодействует с аппаратной частью.
С какими аппаратными протоколами (I2C, SPI, IPMI) вы работали и как решали проблемы с таймингами или потерей данных?
Работа с OpenBMC подразумевает апстрим патчей.
Был ли у вас опыт взаимодействия с open-source сообществами? Как вы подходите к процессу код-ревью в публичных репозиториях?
Сформировано ИИ автоматически. Не является проверкой вакансии или работодателя.

