Разработчик С (Component Development Group, Network Team) (удаленная работа)

5 июля 2025

Уровень зарплаты:
з.п. не указана
Требуемый опыт работы:
Не указан

Вакансия: Разработчик С (Component Development Group, Network Team)

Описание вакансии

О проекте 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) на уровне, достаточном, для исследования объектного файла.