О проекте
KasperskyOS – защищенная микроядерная операционная система. Это не очередной дистрибутив Linux, а собственная разработка, способная успешно конкурировать на международных рынках. Заложенный в KasperskyOS принцип кибериммунности позволяет разрабатывать безопасные решения из потенциально небезопасных компонентов.
О команде
В команде разработки системных компонентов группа Networking отвечает за поддержку сетевого стека, всех компонентов для работы с сетью (DHCP, DNS, TLS и др.), а также других connectivity-стеков (Bluetooth, GPS, GSM). Также, поскольку мы находимся в рамках общей команды Components, бывают и задачи, связанные со смежными группами.
Задачи группы
Группа разработки компонентов отвечает за:
-
Инструменты разработки (GCC/Clang, Binutils, Qemu и т.д.);
-
Базовые компоненты KasperskyOS (libc, поддержка POSIX);
-
Поддержку файловых систем и систем хранения данных;
-
Поддержку сетевых стеков и средств коммуникации между устройствами;
-
Средства управления приложениями;
-
Графическую и аудио подсистемы;
-
Поддержку различных фреймворков и системных служб.
Ваши задачи
-
Поддержка и развитие сетевого стека KasperskyOS;
-
Проектирование и разработка компонентов и системных сервисов для работы с сетью;
-
Разработка и портирование других connectivity-стеков (Bluetooth, GPS, GSM и др.);
-
Портирование open source программного обеспечения на KasperskyOS.
Что ожидаем от кандидата
-
Отличное знание языка программирования С;
-
Знание базовых принципов построения современных операционных систем;
-
Опыт многопоточного программирования;
-
Опыт разработки ядра Linux/Windows;
-
Опыт разработки драйверов для Linux/Windows;
-
Знание классических алгоритмов и структур данных;
-
Знание инструментов разработки в Unix системах (Linux, BSD и пр.);
-
Опыт работы в команде, знакомство с процессами Code Review, CI/CD.
Желательно
-
Хорошее знание принципов работы компьютерных сетей и основных сетевых протоколов;
-
Понимание организации и работы сетевого стека ОС;
-
Опыт работы над сетевым стеком и компонентами для работы с сетью, в Linux или других ОС;
-
Знание стандарта протокола TLS и опыт разработки приложений с поддержкой TLS;
-
Знание стандартов connectivity-протоколов (Bluetooth, GPS, GSM и др.) и опыт работы с ними;
-
Опыт кросплатформенной разработки;
-
Хорошее знание POSIX;
-
Знакомство с архитектурой операционных систем, внутренним устройством ядра ОС (управление памятью, межпроцессное взаимодействие, планирование задач, VFS);
-
Знание внутреннего устройства libc;
-
Знание языка assembler по крайней мере для одной из архитектур (x86, ARM) на уровне, достаточном, для исследования объектного файла.
Мы предлагаем:
Интересную работу
Команда лучших экспертов
Масштабные задачи
Самые современные технологии
Расширение технического кругозора
Социальный пакет
ДМС и страхование жизни (включая детей) с первого месяца
Бесплатное обучение: митапы, конференции, сертификации, 8 иностранных языков
Ежемесячный бонус на питание
Оплата мобильной связи
Комфортные условия
2 спортзала и сауны прямо в офисе
Свой ресторан и бар
Врач и массаж в офисе
Программа релокации для кандидатов из регионов
Ключевые навыки
- Linux
- C
- DHCP