Лаборатория Касперского

Software Architect (KOS) Стажер

Не указана
  • Москва
  • Полный рабочий день
  • Не имеет значения
  • От 1 года

О проекте:

Отдел развития архитектуры операционной системы отвечает за формирование технического видения для микроядерной ОС Лаборатории Касперского. Мы определяем, как должна работать современная ОС общего назначения, чтобы эффективно конкурировать с продуктами крупных компаний на мировом рынке.

Отдел владеет процессом архитектурного ревью и осуществляет архитектурный надзор, выравнивая архитектуру компонентов системы под стратегические цели бизнеса, осуществляет арбитраж при принятии трудных решений.

Мы работаем над моделью безопасности будущей KasperskyOS, переориентированной на сценарии общего назначения: мобильные устройства, рабочие станции. Это серьезная переработка, затрагивающая практически каждый системный компонент, ведь не так давно система ориентировалась преимущественно на встраиваемое применение, где возможна статическая конфигурация политик безопасности. В столь широкой переработке системы важно учитывать аспект производительности, который вступает в техническое противоречие с безопасностью.

Для успешной конкуренции на рынке операционных систем критически важно добиваться высоких показателей производительности в типовых пользовательских сценариях. Сегодня это один из фокусов проекта KasperskyOS и нашего отдела. Нам предстоит трансформировать процессы разработки KasperskyOS, чтобы уделять производительности значительно больше внимания: отслеживать ключевые метрики производительности релизов, ставить конкретные цели по производительности подсистем, компонентов и приложений, вести прицельные работы по их оптимизации.

В нашем отделе работают архитекторы ПО и исследователи, специализирующиеся в области информационной безопасности и формальных методов.

Обязанности:

* Разработка методологии по улучшению производительности операционной системы общего назначения;

* Выработка ключевых метрик производительности;

* Выполнение и координирование проектов по улучшению производительности сценариев использования системы, её подсистем и копонентов;

* Архитектурный надзор с фокусом на производительности и энергопотреблении.

Что нам важно:

* Способность выстроить методологию систематического улучшения производительности для большого проекта (операционная система общего назначения);

* Способность сформулировать ключевые метрики производительности, нефункциональные требования относительно производительности конкретных подсистем и компонентов;

* Понимание типовых причин просадки производительности, знание тактик оптимизации производительности;

* Опыт оптимизации производительности системного программного обеспечения;

* Опыт использования профилировщиков, счетчиков производительности, трейсеров, отладчиков и других инструментальных средств, позволяющих находить код, нуждающийся в оптимизации;

* Способность разработать недостающий инструментарий с нуля;

* Глубокое понимание и опыт использования многопоточного программирования, примитивов синхронизации, барьеров памяти, lockless-алгоритмов, SIMD-оптимизаций;

* Глубокое понимание архитектуры современных операционных систем и системного программного обеспечения;

* Понимание основ архитектуры вычислительных систем: иерархия пямяти, разделение на пространство ядра и пространство пользователя, виртуальная память, механизмы когеррентности кэшей;

* Знание типовых алгоритмов и структур данных, навык асимптотического анализа алгоритмов;

* Хорошее знание языков программирования C и C++;

* Базовое знание ассемблера для armv8 или x86_64;

* Базовое владение языком Python 3.x;

* Опыт работы в GNU/Linux, владение POSIX shell и типовыми инструментами командной строки, способность настраивать и поддерживать Linux-систему в рабочих сценариях;

* Понимание принципов работы компиляторов и линкеров, оптимизаций на уровне компилятора, ABI;

* Знание типовых сетевых протоколов, модели OSI;

* Аналитический склад ума, внимание к деталям, самостоятельность;

* Способность грамотно формулировать мысли на письме;

* Умение читать и писать технические тексты на английском языке.

Будет плюсом:

* Знание устройства современных микроядер: seL4, NOVA, Fiasco, Zircon, Managarm;

* Знакомство с архитектурой ОС на базе микроядер, например Sculpt OS (Genode OS Framework), Fuchsia;

* Знание архитектуры современных мобильных ОС: iOS, Android, Tizen, Sailfish OS/ОС Аврора, Chrome OS;

* Знание основ информационной безопасности;

* Базовые знания в криптографии;

* Понимание причин типовых уязвимостей в программном обеспечении и способов их митигации;

* Знакомство с языками Rust, Dart, Haskell.

Мы предлагаем:

* Социальный пакет

ДМС и страхование жизни (включая детей) с первого месяца

Бесплатное обучение: митапы, конференции, сертификации, 11 иностранных языков

Ежемесячный бонус на обеды

Оплата мобильной связи

* Интересная работа

Команда лучших экспертов

Масштабные задачи

Самые современные технологии

Расширение технического кругозора

* Комфортные условия

2 спортзала и сауны прямо в офисе

Свой ресторан и бар

Врач и массаж в офисе

Программа релокации для кандидатов из регионов