Разработчик Data Plane в сетевой ОС

Дата размещения вакансии: 17.06.2025
Работодатель: Бифорком Тек
Уровень зарплаты:
з/п не указана
Город:
Москва
Требуемый опыт работы:
От 3 до 6 лет

Обязанности:

  • Проектировать и воплощать в коде функции блока аппаратной абстракции, обеспечивающего программирование состояния передающего уровня (Data Plane) Ethernet и IP в аппаратный компонент—специализированный обработчик передачи данных (network ASIC);
  • Разрабатывать и писать тесты, подтверждающие ожидаемое поведение Data Plane;
  • Исправлять ошибки (баги) и улучшать производительность системы;
  • Взаимодействовать с разработчиками других блоков, например, Control Plane;
  • Следить за развитием и тенденциями отрасли с целью реализации в нашем продукте функций, отвечающих запросам рынка;
  • Принимать участие в планировании развития итогового продукта (roadmap).

Требования:

  • Умение и опыт программирования на C — именно на этом языке написаны наши компоненты ОС программирующие сетевые процессоры и SDK, которые мы используем;
  • Умение работать с большим массивом кода: способность интерпретировать написанный чужой код и быстро вникать в логику, заложенную разработчиками;
  • Умение работать в отладчике;
  • Операционные системы Linux на уровне понимания архитектуры данного семейства ОС, способности заглянуть в код, например ядра Linux, когда необходимо улучшить свое понимание устройства какого-то смежного компонента. И, конечно, нужно быть уверенным пользователем этих ОС;
  • Принципы построения сетевых инфраструктур и функционирования использующихся в них протоколах (Ethernet, IP, control plane протоколы BGP, OSPF), с умением работать со стандартами IETF RFC, IEEE и пр.

Будет плюсом:

  • Опыт разработки ПО, непосредственно (через SDK производителя) взаимодействующего с аппаратными компонентами — программируемыми интегральными схемами, микроконтроллерами, специализированными процессорами;
  • Понимание современного устройства процесса разработки ПО:
  • работа с кодом в системе SCM (Git, GitLab);
  • работа с системами сборки autoconf, automake, make;
  • применение подходов DevOps и CI/CD;
  • работа с задачами в трекере (Jira и пр.), проектная работа Agile Scrum.
  • Знание архитектуры сетевого блока ядра Linux;
  • Опыт разработки многопоточных приложений;
  • Опыт разработки сервисов (daemons) в среде Linux;
  • Опыт разработки патчей для Linux Kernel или других больших Open Source проектов;
  • Опыт разработки и сопровождения решений с высокими требованиями к надежности;
  • Понимание принципов работы цифровой схемотехники;
  • Знание протокола связи I2C, интерфейсов SMBus и PMBus, интерфейса ACPI.

Условия:

  • 5/2, удаленный формат работы;
  • Официальное трудоустройство (белая заработная плата, оплачиваемые отпуска, больничные);
  • После прохождения испытательного срока ДМС.