О проекте
KasperskyOS – защищенная микроядерная операционная система. Это не очередной дистрибутив Linux, а собственная разработка, способная успешно конкурировать на международных рынках. Заложенный в KasperskyOS принцип кибериммунности позволяет разрабатывать безопасные решения из потенциально небезопасных компонентов.
Об отделе
Разработкой KasperskyOS занимается отдел Platform, состоящий из нескольких групп, которые отвечают за микроядро ОС, драйверы, системные компоненты, подсистему безопасности, средства виртуализации, а также обеспечивают непрерывный контроль качества разработки. Сейчас у команды много новых, интересных и сложных задач, так что она продолжает расти.
О команде
Команда разработки библиотек среды выполнения ОС занимается проектированием, имплементацией и поддержкой общесистемных библиотек и сопутствующих инструментов платформы KasperskyOS.
Обязанности:
- Проектирование системных API c учетом требований безопасности, надежности и производительности;
- Разработка и поддержка библиотек и инструментов для IPC биндингов;
- Разработка и поддержка среды выполнения подсистемы безопасности KasperskyOS;
- Тестирование кода с помощью юнит тестов, интеграционных тестов, фаззинг тестов; сбор и анализ покрытия;
- Поддержка скриптов сборки и тестирования кода, интеграция их в CI;
- Написание и актуализация документации по коду и архитектурным решениям'
- Проведение анализа пользовательских сценариев, декомпозиция целей, работа с требованиями;
- Портирование и поддержка 3rd-party кода;
- Формирование и внедрение идиоматического подхода к разработке компонентов KasperskyOS.
Требования: - Опыт разработки ПО на С и C++, включая использование современных стандартов, написание многопоточного кода, тестирование;
- Отличное знание классических алгоритмов и структур данных;
- Понимание устройсва ОС, работы основных сервисов ОС, выполнения системных вызовов;
- Навыки анализа производительности и оптимизации кода;
- Умение пользоваться инструментами разработки и отладки в *nix среде: bash, git, gdb, cmake, make, lcov, и т.д.;
- Знание английского языка на уровне чтения и написания технической документации;
- Понимание приципов работы в команде, проведения code review.