Low-level\Embedded programmer\Инженер по низкоуровневому программированию (CYP)

Местоположение и тип занятости

Москва, Санкт-Петербург, Нижний НовгородМожно удаленно

Компания

Будущее в наших руках

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

О компании и команде

YADRO — это российская технологическая компания, объединяющая направления разработки и производства вычислительных платформ, систем обработки и хранения данных, телекоммуникационного и сетевого оборудования, клиентских устройств, микропроцессорных ядер и fabless-производство микропроцессоров.

R&D центры расположены в Москве, Санкт-Петербурге, Екатеринбурге, Нижнем Новгороде и Минске, есть собственное производство в Московской области и инновационное производство полного цикла в городе Дубна.

Команда Common Yadro Platform разрабатывает программную экосистему для продуктов компании.

Мы создаём слои управления аппаратной платформой и ОС, Linux-based дистрибутивы и общие для продуктов сервисы на Golang. Common Yadro Platform позволяет продуктовым командам сосредоточиться на разработке бизнес-логики и берет на себя бо́льшую часть жизненно важных функций платформы, предоставляя необходимые интерфейсы для вышележащих уровней ПО.

В команду разработки ищем emdedded-специалистов c опытом работы с аппаратурой в крупных Enterprise или Open Source проектах. Приветствуется любая комбинация продуктового опыта включая низкоуровневое программирование, администрирование систем, embedded или real-time разработку. Предстоит разбираться в аспектах работы системы под продуктовой нагрузкой, понимать как продукты работают в целом, быть готовым писать и портировать патчи, анализировать и оживлять аппаратуру на различных этапах её готовности, а так же помогать с запуском и отладкой дистрибутива в продуктах.

Чем Вам предстоит заниматься

  • разрабатывать HAL интерфейсы, писать или править драйверы, реализовывать в ядре ioctl для работы с железом;
  • выполнять Bring-Up разрабатываемого компанией HW, помогать продуктовым командам с настройкой сложных аппаратных конфигураций;
  • разрабатывать эффективные способы виртуализации систем, создавать QEMU устройства и Mock серверы, продумывать требования к гипервизорам;
  • читать dmesg, отлаживать загрузчики, прошивки, ядро, анализировать и решать проблемы работы ОС и приложений на разных аппаратных архитектурах;
  • исследовать возможности по трассировке системной производительности, разрабатывать подходы по её анализу с помощью eBPF;
  • проектировать удобные механизмы на уровне ядра для Fault Injection расширяя существующие в Linux.

Ожидания от кандидата

  • опыт работы в области Embedded Systems, Systems Engineering, Linux Engineering от трёх лет;
  • представление о современном аппаратном обеспечении: устройство памяти, шин данных, систем ввода-вывода, PCIe, DMA, IRQ, NUMA, IOMMU;
  • знание ядра Linux и принципов его работы;
  • системное программирование на одном из языков: C, Rust, Go;
  • знание английского на уровне чтения и написания технической документации.

Дополнительно приветствуем

  • понимание базовых принципов функционирования сетей, систем хранения данных или телекоммуникационного оборудования;
  • опыт диагностики проблем производительности на уровне ОС и Hardware;
  • умение обращаться с осциллографами, логическими анализаторами, программаторами является плюсом;
  • умение читать принципиальные схемы и код для FPGA, совместно с разработчиками разбираться с проблемами в PCB и схемотехнике;
  • опыт написания драйверов для UNIX-like систем;
  • умение писать системные приложения и демоны под GNU/Linux;
  • опыт автоматизации и написания скриптов на bash и Python/Perl.

Условия работы

  • конкурентный уровень заработной платы для нас это не просто слова, а - принцип;
  • обучение и развитие: учебный портал с курсами и лекциями от внешних и внутренних экспертов, а также дополнительное профессиональное обучение и
    изучение английского языка;
  • программу поддержки инноваций: премии за научные достижения, публикацию статей, выступления на конференциях и регистрацию патентов;
  • "Лекторий", в котором мы организовываем встречи с выдающимися экспертами в области технологий;
  • заботу о здоровье: ДМС с первых дней работы + стоматология, а также льготные условия страхования близких;
  • поддержку в личных вопросах: консультации юристов, психологов, экспертов по ЗОЖ и управлению финансами;
  • открытое общение: регулярные онлайн-встречи всей команды YADRO;
  • программу рекомендаций: рекомендуя друзей или бывших коллег, вы получаете не только возможность работать вместе, но и денежные бонусы.