О компании и команде
Мы разрабатываем компоненты системного и прикладного уровня на базе KasperskyOS и ориентированы на развитие свободного программного обеспечения с открытыми исходными кодами. KasperskyOS – защищенная микроядерная операционная система. Это не очередной дистрибутив Linux, а собственная разработка - проприетарная частично POSIX-совместимая микроядерная операционная система.
Нам необходим разработчик, который может и хочет участвовать в решении задач портирования на новые аппаратные платформы, разработки драйверов и системных сервисов.
Ожидания от кандидата
Требования:
- Отличное знание языка программирования С
- Опыт низкоуровневой системной разработки под разные архитектуры процессоров (x86, ARM, MIPS)
- Опыт разработки ПО для встраиваемых систем на C/C++
- Знание архитектур современных процессоров
- Знание принципов построения современных операционных систем
- Знакомство с архитектурой микроядерных операционных систем
- Понимание принципов работы интерфейсов SPI, USB, RS-232, PCI-E, etc
- Опыт многопоточного программирования с использованием примитивов синхронизации ОС
- Знание базовых алгоритмов и структур данных
- Опыт использования средств разработки ПО под Linux (GCC, Make, CMake, GDB, git, etc)
- Понимание методологий Agile, желание их применять
- Технический английский – свободное чтение документации
Будет плюсом:
- Участие в проектах разработки драйверов или модулей ядра операционных систем
- assembler для одной из архитектур (x86, ARM, MIPS, RICS-V);
- Участие в проектах разработки систем управления памятью, ресурсами, задачами на уровне ядра
Условия работы
Задачи:
- Проектирование, разработка и портирование сервисов и модулей для KasperskyOS
- Прототипирование решений
- Подготовка набора тестов для верификации разработанных решений
- Участие в разработке и ревью архитектуры
- Участие в анализе требований
- Участие в подготовке проектной документации
- Участие в оценке трудоёмкости задач
- Peer code review