Домен
Компиляторы и языки
Профиль навыка
LSP: autocomplete, diagnostics, go-to-definition, hover, code actions
Ролей
3
где встречается этот навык
Грейдов
5
сформированная дорожка роста
Обязательных требований
6
ещё 9 — необязательные
Компиляторы и языки
Инструменты компиляторов
17.03.2026
Выберите текущий грейд и сравните ожидания. Карточки ниже покажут, что нужно закрыть для следующего уровня.
Таблица показывает, как меняется глубина владения навыком от Junior до Principal.
| Роль | Обязательность | Описание |
|---|---|---|
| Compiler Engineer | Знает базовые концепции language servers для compiler engineer и умеет применять их в типовых задачах. Использует стандартные инструменты и следует установленным практикам команды. Понимает когда и почему применяется данный подход. | |
| Language Tooling Engineer | Понимает поток сообщений LSP между клиентом и сервером. Реализует базовую синхронизацию текстовых документов и простые провайдеры автодополнения по существующим паттернам. | |
| Systems Programmer (C/C++) | Понимает основы Language Server Protocol и JSON-RPC-коммуникации. Настраивает среды разработки с поддержкой LSP и отлаживает простой обмен сообщениями протокола. |
| Роль | Обязательность | Описание |
|---|---|---|
| Compiler Engineer | Уверенно применяет language servers для compiler engineer при решении нестандартных задач. Самостоятельно выбирает оптимальный подход и инструменты. Анализирует trade-offs и предлагает улучшения существующих решений. | |
| Language Tooling Engineer | Реализует функции LSP: переход к определению, поиск ссылок, hover-информацию и диагностику. Строит инкрементальный парсинг документов для отзывчивой обратной связи редактора с эффективным отслеживанием изменений. | |
| Systems Programmer (C/C++) | Реализует обработчики LSP для навигации по коду и разрешения символов. Интегрирует языковой сервер с front-end компилятора для предоставления отчётов об ошибках в реальном времени и семантической подсветки токенов. |
| Роль | Обязательность | Описание |
|---|---|---|
| Compiler Engineer | Экспертно применяет language servers для compiler engineer для проектирования сложных систем. Оптимизирует существующие решения и предотвращает архитектурные ошибки. Проводит code review и обучает коллег лучшим практикам. | |
| Language Tooling Engineer | Обязателен | Проектирует архитектуру языкового сервера с анализом всего workspace, поддержкой рефакторинга и code actions. Оптимизирует производительность сервера для больших кодовых баз с ленивым вычислением и стратегиями кэширования. |
| Systems Programmer (C/C++) | Обязателен | Проектирует архитектуру LSP-сервера с продвинутыми возможностями: семантический анализ, кросс-проектное индексирование и кастомные расширения протокола. Менторит команду по интеграции системы типов и инкрементальной компиляции для инструментов редактора. |
| Роль | Обязательность | Описание |
|---|---|---|
| Compiler Engineer | Устанавливает стандарты применения language servers для compiler engineer в команде и принимает архитектурные решения. Определяет технический roadmap с учётом данного навыка. Менторит senior инженеров и влияет на практики смежных команд. | |
| Language Tooling Engineer | Обязателен | Определяет архитектуру компилятора. Формирует стандарты разработки. Координирует compiler team. |
| Systems Programmer (C/C++) | Обязателен | Определяет архитектуру компилятора. Формирует стандарты разработки. Координирует compiler team. |
| Роль | Обязательность | Описание |
|---|---|---|
| Compiler Engineer | Формирует стратегию применения language servers для compiler engineer на уровне организации. Определяет best practices и влияет на выбор технологий за пределами своей команды. Является признанным экспертом в данной области. | |
| Language Tooling Engineer | Обязателен | Определяет стратегию развития компилятора/языка. Проектирует core language features. Формирует technology vision. |
| Systems Programmer (C/C++) | Обязателен | Определяет стратегию развития компилятора/языка. Проектирует core language features. Формирует technology vision. |