Compiler Engineer
Разработка компиляторов, оптимизация кодогенерации, работа с LLVM и промежуточными представлениями
Compiler Engineer — роль в семействе Compiler & Language Engineering. Определено 55 навыков по 5 уровням (от Junior до Principal). 60 навыков являются обязательными. Ключевые домены: Основы программирования, Backend Development, Базы данных.
Матрица навыков
55 навыков × 5 уровней. Нажмите на ячейку для детализации.
Архитектура и проектирование
1 навыков| Навыки | Jun | Mid | Sen | Lead | Princ |
|---|---|---|---|---|---|
| Основы System Design | A | W | A | E | E |
Базы данных
1 навыков| Навыки | Jun | Mid | Sen | Lead | Princ |
|---|---|---|---|---|---|
| PostgreSQL | A | W | A | E | E |
Безопасность
2 навыков| Навыки | Jun | Mid | Sen | Lead | Princ |
|---|---|---|---|---|---|
| OWASP и безопасность приложений | A | W | A | E | E |
| Практики безопасного кода | A | W | A | E | E |
Компиляторы и языки
10 навыков| Навыки | Jun | Mid | Sen | Lead | Princ |
|---|---|---|---|---|---|
| Lexing и Parsing | A | W | A | E | E |
| AST и IR Manipulation | A | W | A | E | E |
| Type Inference и Type Checking | A | W | A | E | E |
| Compiler Optimization Passes | A | W | A | E | E |
| LLVM Framework | A | W | A | E | E |
| Language Server Protocol | A | W | A | E | E |
| Code Generation | A | W | A | E | E |
| JIT Compilation | A | W | A | E | E |
| DSL Design и Implementation | A | W | A | E | E |
| Interpreter Design | A | W | A | E | E |
Контроль версий и коллаборация
2 навыков| Навыки | Jun | Mid | Sen | Lead | Princ |
|---|---|---|---|---|---|
| Git Advanced | A | W | A | E | E |
| Code Review | A | W | A | E | E |
Облако и инфраструктура
4 навыков| Навыки | Jun | Mid | Sen | Lead | Princ |
|---|---|---|---|---|---|
| Docker | A | W | A | E | E |
| Kubernetes Core | A | W | A | E | E |
| AWS | A | W | A | E | E |
| Основы сетей | A | W | A | E | E |
Основы программирования
15 навыков| Навыки | Jun | Mid | Sen | Lead | Princ |
|---|---|---|---|---|---|
| Алгоритмы и сложность | A | W | A | E | E |
| Структуры данных | A | W | A | E | E |
| Алгоритмы на графах | A | W | A | E | E |
| Принципы ООП и SOLID | A | W | A | E | E |
| Паттерны проектирования | A | W | A | E | E |
| Многопоточное программирование | A | W | A | E | E |
| Асинхронное программирование | A | W | A | E | E |
| Качество кода и рефакторинг | A | W | A | E | E |
| Основы функционального программирования | A | W | A | E | E |
| Иммутабельность и персистентные структуры | A | W | A | E | E |
| Монады и функторы | A | W | A | E | E |
| Типобезопасность и системы типов | A | W | A | E | E |
| Дженерики и параметрический полиморфизм | A | W | A | E | E |
| Управление памятью | A | W | A | E | E |
| Профилирование памяти | A | W | A | E | E |
Тестирование и QA
4 навыков| Навыки | Jun | Mid | Sen | Lead | Princ |
|---|---|---|---|---|---|
| TDD и BDD | A | W | A | E | E |
| Property-Based Testing | A | W | A | E | E |
| Unit-тестирование | A | W | A | E | E |
| Интеграционное тестирование | A | W | A | E | E |
AI-ассистированная разработка
3 навыков| Навыки | Jun | Mid | Sen | Lead | Princ |
|---|---|---|---|---|---|
| GitHub Copilot | A | W | A | E | E |
| ChatGPT / Claude | A | W | A | E | E |
| Prompt Engineering для кода | A | W | A | E | E |
API и интеграции
1 навыков| Навыки | Jun | Mid | Sen | Lead | Princ |
|---|---|---|---|---|---|
| REST API Design | A | W | A | E | E |
Backend Development
1 навыков| Навыки | Jun | Mid | Sen | Lead | Princ |
|---|---|---|---|---|---|
| Redis | A | W | A | E | E |
DevOps и CI/CD
1 навыков| Навыки | Jun | Mid | Sen | Lead | Princ |
|---|---|---|---|---|---|
| GitHub Actions / GitLab CI | A | W | A | E | E |
Observability и мониторинг
2 навыков| Навыки | Jun | Mid | Sen | Lead | Princ |
|---|---|---|---|---|---|
| Структурированное логирование | A | W | A | E | E |
| Prometheus и Grafana | A | W | A | E | E |
Performance Engineering
8 навыков| Навыки | Jun | Mid | Sen | Lead | Princ |
|---|---|---|---|---|---|
| CPU Profiling | A | W | A | E | E |
| Memory Profiling | A | W | A | E | E |
| I/O и Disk Profiling | A | W | A | E | E |
| Latency Optimization | A | W | A | E | E |
| Throughput Optimization | A | W | A | E | E |
| Resource Optimization FinOps | A | W | A | E | E |
| Benchmarking Tools | A | W | A | E | E |
| Performance Budgets | A | W | A | E | E |
Часто задаваемые вопросы
Какие навыки нужны для роли Compiler Engineer?
Для роли Compiler Engineer требуется 55 навыков, из которых 60 являются обязательными. Навыки распределены по 5 уровням: от Junior до Principal. Смотреть полную матрицу.
Как вырасти до следующего уровня в роли Compiler Engineer?
Используйте Калькулятор грейда чтобы оценить текущий уровень и получить персональные рекомендации. Система покажет, какие навыки нужно развить для перехода на следующий уровень.
Как сообщество определяет требования к роли Compiler Engineer?
Требования к роли формируются сообществом через систему предложений. Любой участник может предложить изменения, которые проходят голосование и ревью экспертов.