Домен
Компиляторы и языки
Профиль навыка
JIT-компиляция: runtime code generation, tracing JIT, tiered compilation
Ролей
2
где встречается этот навык
Грейдов
5
сформированная дорожка роста
Обязательных требований
8
ещё 2 — необязательные
Компиляторы и языки
Инструменты компиляторов
17.03.2026
Выберите текущий грейд и сравните ожидания. Карточки ниже покажут, что нужно закрыть для следующего уровня.
Таблица показывает, как меняется глубина владения навыком от Junior до Principal.
| Роль | Обязательность | Описание |
|---|---|---|
| Compiler Engineer | Обязателен | Понимает разницу между AOT и JIT компиляцией и ситуации применения каждого. Знает концепции hot path, профилирование выполнения, deoptimization. Изучал работу JIT в JVM (HotSpot) или V8. |
| Systems Programmer (C/C++) | Понимает основы JIT Compilation. Работает с простыми задачами парсинга и AST. Использует Linux kernel/POSIX. |
| Роль | Обязательность | Описание |
|---|---|---|
| Compiler Engineer | Обязателен | Реализует baseline JIT компилятор для простого bytecode формата. Понимает tracing JIT vs method JIT архитектуры. Реализует базовые inline caches для динамических вызовов методов. |
| Systems Programmer (C/C++) | Самостоятельно реализует JIT Compilation. Работает с IR и оптимизациями. Пишет тесты компилятора. |
| Роль | Обязательность | Описание |
|---|---|---|
| Compiler Engineer | Обязателен | Проектирует многоуровневый JIT: interpreter → baseline JIT → optimizing JIT с profiling. Реализует deoptimization и on-stack replacement (OSR). Профилирует и оптимизирует overhead JIT компиляции. |
| Systems Programmer (C/C++) | Обязателен | Проектирует compiler passes и оптимизации с JIT Compilation. Работает с type systems. Менторит команду. |
| Роль | Обязательность | Описание |
|---|---|---|
| Compiler Engineer | Обязателен | Архитектурирует JIT подсистему для language runtime платформы. Принимает решения о стратегии компиляции, tiering policy и memory management JIT кода. Управляет командой JIT инженеров. |
| Systems Programmer (C/C++) | Обязателен | Определяет архитектуру компилятора. Формирует стандарты разработки. Координирует compiler team. |
| Роль | Обязательность | Описание |
|---|---|---|
| Compiler Engineer | Обязателен | Определяет стратегию runtime компиляции для платформы на несколько лет. Исследует передовые техники: YJIT, Cranelift, copy-and-patch compilation. Публикует исследования в области JIT. |
| Systems Programmer (C/C++) | Обязателен | Определяет стратегию развития компилятора/языка. Проектирует core language features. Формирует technology vision. |