Описание
ВедаПроект - это динамично развивающаяся научно-производственная компания, более 20 лет успешно работающая на рынке высоких технологий России. Мы занимаемся разработкой инновационных проектов, их сопровождением от начала создания и до внедрения. Все наши проекты долгосрочные и разнообразны.
Задачи
•Кросс-компиляция и сборка дистрибутивов Embedded Linux "с нуля" для целевых платформ на базе архитектур ARM64 и RISC-V
•Создание и поддержка Toolchain: настройка и сборка кросс-компиляторов (GCC, Clang), системных библиотек (glibc, musl), отладчиков (GDB) и других утилит (Binutils)
•Работа с загрузчиками (Bootloaders): портирование, конфигурация и доработка U-Boot
•Конфигурация, сборка и доработка ядра Linux (Kernel): написание и адаптация Device Tree, работа с подсистемами ядра, применение патчей
•Разработка и адаптация драйверов для уникальной периферии устройств (SPI, I2C, UART, GPIO и др.)
•Формирование корневой файловой системы (RootFS) и системного окружения "вручную"
•Адаптация и доработка open-source программного обеспечения для корректной работы на наших платформах: портирование библиотек, системных утилит, фреймворков
•Организация сред для разработки и эмуляции: использование QEMU для эмуляции целевых платформ, создание и поддержка сборочных окружений в Docker-контейнерах и песочницах
•Участие в разработке и оптимизации системного ПО и библиотек на языках С/С++ или Go, Rust
•Участие в отладке и решении комплексных проблем на стыке аппаратного и программного обеспечения
Требования
•Фундаментальные знания: глубокое понимание архитектуры ОС Linux, процесса компиляции, линковки и работы с инструментарием GNU Toolchain (GCC, GDB, Binutils) и/или LLVM (Clang). Опыт работы с системными библиотеками (glibc, musl)
•Практика Embedded Linux: опыт сборки дистрибутивов Embedded Linux "с нуля" (from scratch), включая настройку кросс-компиляции. Опыт портирования загрузчиков (U-Boot) и ядра Linux
•Работа с архитектурами: опыт работы с ARM64 и/или RISC-V
•Системное программирование: отличное владение языками C/C++. Опыт разработки и отладки драйверов устройств для Linux
•Современные инструменты: опыт использования QEMU для эмуляции аппаратных платформ. Опыт работы с Docker для создания изолированных сборочных сред
•Сетевые технологии: понимание сетевого стека TCP/IP, принципов маршрутизации, опыт работы с сетевыми протоколами (HTTP, gRPC, MQTT и др.)
•Скриптовые языки и автоматизация: уверенное владение Bash и Python (желательно)
•Общие инженерные навыки: умение читать принципиальные схемы, работать с измерительным оборудованием и технической документацией на аппаратное обеспечение (datasheets), опыт работы с Git
Будет плюсом
•Опыт коммерческой разработки на Go или Rust
•Опыт работы с реляционными (PostgreSQL) или NoSQL базами данных в контексте системных задач
•Опыт в области информационной безопасности встраиваемых систем (Secure Boot, TrustZone)
•Понимание принципов работы аппаратных нейроускорителей (NPU) и их интеграции на уровне ОС
•Опыт профилирования и оптимизации производительности системного ПО
Условия
•Конкурентная белая заработная плата
•Официальное трудоустройство по ТК РФ
•Дружный коллектив профессионалов
•Комфортные условия труда
•Хорошая техническая оснащенность и собственное производство
•Работа только в офисе
•ДМС