О проекте
«Лаборатория Касперского» работает над созданием экосистемы вокруг продуктов на основе KasperskyOS. Одним из направлений является разработка мобильной ОС для профессиональных устройств и защищенных решений на её основе. Защищенное может и должно быть удобным.
Об отделе
Наш отдел отвечает за выпуск двух базовых продуктов - непосредственно ОС для мобильных устройств и SDK для разработки приложений. В отдел входят несколько групп разработки, занимающихся адаптацией ОС к аппаратной платформе, разработкой системного API, базовых подсистем, API для приложений, а так же базового комплекта приложений.
Области ответственности команды:
- Адаптация мобильной KasperskyOS под целевые аппаратные платформы;
- Разработка новых драйверов и сервисов операционной системы;
- Выпуск конечных решений на основе KasperskyOS для мобильных устройств.
Предстоящие задачи:
- Проектирование и разработка программного слоя совместимости с нативными Linux и Android драйверами и сервисами для операционной системы KasperskyOS;
- Участие в разработке и ревью архитектуры;
- Участие в анализе требований;
- Участие в подготовке проектной документации;
- Участие в оценке трудоёмкости задач;
- Peer code review.
Чтобы быть успешным в данной роли необходимо:
- Знание и использование современных стандартов C17 | (С++ 17 и выше);
- Иметь опыт коммерческой разработки на С | C++;
- Знание архитектуры AOSP и(или) GNU/Linux;
- Понимание основ виртуализации в Linux;
- Опыт системного программирования под AOSP и(или) GNU/Linux;
- Опыт сборки AOSP и(или) GNU/Linux из исходников, опыт конфигурирования ядра Linux;
- Знание технического английского;
- Понимание методологий Agile, желание их применять.
Будет плюсом:
- Знание принципов статического и динамического анализа кода;
- Знание базовых принципов построения современных операционных систем;
- Знание и понимание работы различных подсистем ОС, таких как управление памятью, межпроцессное взаимодействие синхронизация, планирование задач, обработка прерываний;
- Знание методологических подходов проектирования программного обеспечения;
- Знание или опыт работы с Android Virtualization Framework (AVF);
- Опыт разработки безопасного кода, знание принципов SDL;
- Опыт разработки и портирования драйверов;
- Опыт разработки сервисов в AOSP, работа с HAL;
- Опыт разработки юнит, фаззинг тестов;
- Опыт использования средств разработки ПО под Linux (GCC, Clang, Make, GDB);
- Опыт работы с Azure DevOps (TFS), Confluence, Gerrit.