Системный программист ОС GNU/Linux встраиваемых систем
Требования
Местоположение и тип занятости
Компания
Описание вакансии
Условия работы
Компания АО НПЦ «ЭЛВИС» ищет программиста системного ПО для разрабатываемых в компании чипов и модулей. Архитектура процессоров чипов - ARM и MIPS. В задачи входит портирование ПО и разработка BSP аппаратных платформ: портирование и разработка U-Boot, Linux, интеграция пакетов в Buildroot, Debian, разработка регрессионных тестов.
Наша команда разрабатывает драйверы Linux для следующих интерфейсов: периферийные высокоскоростные интерфейсы (DDR4, PCIe 2.0/3.0/4.0, SATA 3.0, Ethernet 1Gb/10Gb, USB 3.0, MIPI CSI2, MIPI DSI, HDMI TX/RX 2.0, ONFI NAND, SD/eMMC), периферийные низкоскоростные интерфейсы (SPI, I2C, UART, I2S, CAN), интерфейсы и фреймворки аппаратных ускорителей (GPU OpenGL ES, OpenCL, VPU V4L2, OpenMAX, DRM).
Наш идеальный разработчик должен уметь грамотно выписать баг на софт и аппаратуру, работать с осциллографом, почитать/обсудить проблему в списке рассылки целевого проекта ПО на английском языке, "черипикнуть" коммиты с апстрима.
Текущие проекты:
- Разработка шлюза для сбора показаний с беспроводных датчиков (Wi‑Fi, LoRa, ZigBee).
- "Оживление" и валидация (aka SoC bringup, validation) СнК (CPU Cortex-A53, PCIe 3.0, USB 3.0, LPDDR4, приём и сжатие видео 4K 60 FPS).
- Разработка SMARC-модулей.
Обязанности:
- Разработка драйверов загрузчика U-Boot и ядра Linux для поддержки СнК и встраиваемых систем.
- Разработка системных приложений и утилит для встраиваемых систем.
- Пакетирование драйверов, приложений в дистрибутивы Buildroot, Debian.
- Разработка функциональных тестов драйверов Linux и U-Boot на Bash/Python.
Требования:
- Опыт программирования на одном из языков C, C++, assembler не менее 3 лет.
- Опыт разработки и отладки драйверов Linux не менее 2 лет.
- Опыт программирования и отладки встраиваемых систем MIPS/ARM, опыт сборки корневой файловой системы для встраиваемых устройств, опыт кросс-компиляции (Buildroot, Yocto).
- Опыт работы с ОС Linux на уровне написания скриптов (bash, awk, и т.д.).
- Опыт программирования на любом из языков Python, Perl, Ruby, Go.
Приветствуется:
- Опыт исследования аппаратных проблем модулей, опыт работы с осциллографом.
- Уверенное владение Git (merge, rebase, stash, cherry pick).
- Наличие вклада в проекты с открытым исходным кодом на GitHub и пр.
Условия:
- Формат работы: 1) возможна работа в офисе м.Белорусская/ м.Динамо/ м.Петровский парк, 2) возможна работа в офисе - г. Зеленоград, 3) возможна удаленная работа (с частичным присутствием в офисе).
- Достойный уровень заработной платы (обсуждается с успешным кандидатом);
- Интересные задачи, амбициозная команда, грамотное руководство;
- Официальное трудоустройство (по ТК РФ, больничные и отпуска, все как положено);
- Высокоразвитая корпоративная культура: корпоративные и спортивные мероприятия (футбол, волейбол, настольный теннис);
- Курсы английского языка в офисе;
- ДМС после прохождения испытательного срока;
- Компенсация занятий спортом (через год работы);
- Возможность повышения квалификации за счёт компании.
Бонусы
- Высокоразвитая корпоративная культура: корпоративные и спортивные мероприятия (футбол, волейбол, настольный теннис);
- Курсы английского языка в офисе;
- ДМС после прохождения испытательного срока;
- Компенсация занятий спортом (через год работы);
- Возможность повышения квалификации за счёт компании.