Selectel

Embedded Software Engineer

Не указана
  • Санкт-Петербург
  • Полная занятость
  • Полный день
  • От 3 до 6 лет
  • C
  • C++
  • PCI DSS
  • EDK2
  • OpenBMC
  • Linux

Команда разработки встраиваемого ПО занимается разработкой прошивок BMC/BIOS для серверных материнских плат собственной разработки на базе последних поколений процессоров от AMD/Intel.

  • У нас можно заниматься разработкой максимально близко к "железу"
  • Создаем реальные продуктовые ценности: наши прошивки будут работать на настоящих серверах в настоящих датацентрах
  • Можно применять свой опыт и знания на любом уровне от BIOS/UEFI до web-интерфейса
  • Будем рады навыкам обратной разработки
  • Можно предлагать технологии и архитектуру
  • Можно влиять на процессы в команде

Мы ожидаем

  • Знание языка C/C++
  • Знание шин I2C, SPI, RS232, LPC и тд.
  • Знание ОС Linux на продвинутом уровне
  • Понимание процесса загрузки ОС Linux от подачи питания до появления приглашения командной строки
  • Умение работать с системой контроля версий git
  • Опыт разработки приложений для Embedded Linux
  • Знание классических алгоритмов и структур данных
  • Базовые знания сетей и протоколов (TCP/IP, UDP)
  • Владение английским языком на уровне чтения и написания технической документации
  • Базовые знания схемотехники, умение читать принципиальные схемы и документацию на электронные компоненты

Основные задачи

  • Портирование UEFI EDK2, coreboot на платформы компании
  • Создание нового функционала для EDK2
  • Обеспечение взаимодействия загрузчика с OpenBMC (IPMI/KCS/MCTP/...)
  • Доработка и развитие прошивки BMC контроллера серверной материнской платы (на базе OpenBMC):
  • Портирование OpenBMC на нашу платформу
  • Bring up новых плат
  • Поиск и/или разработка технологий, решений и архитектур
  • Участие в тестирование, согласование тест-планов с отделом QA

+100 к резюме

  • Знание архитектур x86 и amd64
  • Знание устройства шины PCI Express и принципов её конфигурирования
  • Понимания межъядерного и межпроцессорного взаимодействия
  • Опыт разработки coreboot и/или EDK2
  • Знание IPMI 2.0, MCTP, KCS
  • Умение писать скрипты (python, bash, awk)
  • Знание системы сборки Yocto
  • Знание протоколов стека DMTF Redfish (PLDM, MCTP);
  • Знание C++ (особенно C++17 и С++20), принципов ООП;
  • Умение работать с Docker: создание/использование/модификация контейнеров

Про условия

  • ​​​​Официальное оформление, белая зарплата
  • Годовая премия по результатам работы до 15% от суммарного оклада за 12 месяцев

  • Релокационный бонус при переезде

  • Бесплатные обеды и кофе-брейки

  • Гибкое начало рабочего дня (до 12:00)

  • 10 минут пешком от м. Московские ворота, своя парковка (и для велосипедов тоже)