#вакансия #ai
Senior Developer C (KasperskyOS, Toolchain Development)
Группа Toolchain Development принимает участие в разработке SDK для микроядерной операционной системы KasperskyOS
В зону нашей ответственности входят преимущественно два направления – разработка кросс-тулчейна (компилятор, линковщик и пр.) и разработка стандартной библиотеки (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 в актуальном состоянии.
Компания: Лаборатория Касперского Заработная плата: Уровень дохода не указан
Полезные ссылки:
🍏 Мобильный трудоголик - Канал про мобильную разработку.
🔹 Flutter & Dart | Мобильный трудоголик - Канал про разработку на Flutter.
🐈 Кот Денисова - Канал про разработку и жизнь в ИТ.
