Senior Developer C (KasperskyOS, Toolchain Development)

Опыт работы:
От 3 до 6 лет
Место работы:
Москва, Ленинградское шоссе, 39Ас2

Группа Toolchain Development принимает участие в разработке SDK для микроядерной операционной системы KasperskyOS https://os.kaspersky.ru/.

В зону нашей ответственности входят преимущественно два направления – разработка кросс-тулчейна (компилятор, линковщик и пр.) и разработка стандартной библиотеки (crt0, libc и пр.).

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

Задачи:

  • Разработка стандартной библиотеки проекта KasperksyOS (вкл. поддержку совместимости с актуальными стандартами);
  • Разработка механизма загрузки динамических библиотек (вкл. смежную поддержку со стороны тулчейна);
  • Профилирование / отладка разрабатываемого кода;
  • Следование методологии SDL (вкл. покрытие тестами, фаззинг, статический / динамический анализ, анализ производительности);
  • Участие в исследовании, декомпозиции, оценке и планировании работ;
  • Ревью коммитов в связанные репозитории в роли одного из мейнтейнеров.

Требования:

  • Опыт 5+ лет разработки / портирования стандартных библиотек (преим. UNIX-like библиотек crt0, libc, libpthread, libdl, libm или аналогичных) или иного системного ПО;
  • Качественное представление о стандартной библиотеке в целом (функциональное значение, внутреннее устройство, точки соприкосновения с ядром операционной системы, запуск приложений, загрузка динамических библиотек, стандарты C / ANSI / ISO / IEC / POSIX и пр.);
  • Знание теории операционных систем (архитектура, уровни привилегий, системные вызовы, прерывания, виртуализация, многозадачность, межпроцессное взаимодействие и пр.);
  • Знание классических алгоритмов и структур данных;
  • Отличное знание C (преим. C17 и новее) с пониманием гарантий стандарта и навыками разработки безопасного кода;
  • Знание ASM (преим. X86-64, ARM64, RISC-V или MIPS32) как минимум на базовом уровне;
  • Знание C++ (преим. C++20 и новее) как минимум на базовом уровне;
  • Опыт кроссплатформенной разработки (преим. с помощью LLVM / Clang, GCC, Binutils);
  • Опыт отладки сложных падений (преим. с помощью GDB);
  • Опыт работы с системами сборки (преим. Make, CMake), инструментами автоматизации (преим. Bash, Python) и системой контроля версий (преим. Git);
  • Опыт разработки в UNIX окружении (преим. Linux);
  • Самостоятельность в работе над нетривиальными задачами / проблемами;
  • Готовность транслировать экспертизу и поддерживать сферу знаний проекта KasperskyOS в актуальном состоянии.

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

  • Подтвержденная экспертиза в сфере разработки стандартных библиотек в целом, их отдельных частях (crt, dl, pthread, stdio, stdlib, string, tls, unistd и пр.) или релевантных open-source проектах (LLVM Project, NetBSD / FreeBSD, GLibc, Musl, Bionic или аналогичных);
  • Глубокое понимание стандартов POSIX и их расширений применительно к стандартным библиотекам (преим. POSIX.1-2008/-2024, PSE51);
  • Опыт разработки слоя POSIX совместимости для несовместимых систем на базе микроядра;
  • Опыт разработки механизма запуска Linux / Windows приложений для несовместимых систем на базе микроядра;
  • Опыт воспроизведения и отладки редких или случайных падений (преим. с помощью GDB);
  • Опыт выявления медленного кода и его ускорения (преим. с помощью SIMD);
  • Глубокие знания ASM и соответствующих аппаратных платформ (преим. X86-64, ARM64, RISC-V или MIPS32);
  • Глубокие знания возможностей операционной системы / компилятора, обеспечивающих повышение безопасности / надежности / качества кода (вкл. харденинг);
  • Комплексный опыт разработки в рамках методологии SDL (в т.ч. покрытие тестами, фаззинг, статический / динамический анализ, анализ производительности);
  • Развитые навыки автоматизации рабочей рутины (в т.ч. с использованием Agentic AI, Bash, Python, Make, CMake, QEMU monitor, GDB batch).

Похожие вакансии

Старший менеджер
Трубная Металлургическая Компания

Имеете высшее образование. Имеете опыт работы в продажах трубной продукции нефтегазового сортамента не менее 3 лет. Вы внимательны, коммуникабельны, точны...

195 000 руб.
Главный эксперт по сопровождению DCIM
USETECH

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

Старшая кофе-леди/кофе-мен офиса
Т-Банк

У вас опыт работы от 1 года в сервисе: официант, бариста, хостес, администратор салона красоты или смежные роли.

Инженер-проектировщик / Ведущий инженер проектировщик ТС (тепловые сети)
ГК Проф Инжиниринг

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

165 000 руб.
Старший мастер по ремонту технологического оборудования
ЭНДОФАРМ

Необходимые навыки: Высшее или среднее профессиональное образование (фармацевтическое, биологическое, химическое, пищевое, биотехнологическое, техническое). Опыт руководства коллективом.