Dominio
Compilers & Languages
Perfil de habilidad
Lexical and syntactic analysis: tokenization, LL/LR/PEG parsers, ANTLR
Roles
3
donde aparece esta habilidad
Niveles
5
ruta de crecimiento estructurada
Requisitos obligatorios
11
los otros 4 opcionales
Compilers & Languages
Compiler Theory
17/3/2026
Selecciona tu nivel actual y compara las expectativas.
La tabla muestra cómo crece la profundidad desde Junior hasta Principal.
| Rol | Obligatorio | Descripción |
|---|---|---|
| Compiler Engineer | Obligatorio | Knows lexical analysis basics: source code tokenization, regular grammars and finite automata. Can implement a simple lexer manually, understands the practical difference between lexer and parser. |
| Language Tooling Engineer | Understands lexer/parser fundamentals: tokenization, grammar rules, and AST construction. Writes simple lexers using regular expressions and modifies existing parser rules for language tooling. | |
| Systems Programmer (C/C++) | Understands basic concepts of lexical analysis and parsing: tokens, grammars, and parse trees. Reads and traces through existing lexer/parser code to understand language processing pipelines. |
| Rol | Obligatorio | Descripción |
|---|---|---|
| Compiler Engineer | Obligatorio | Implements LL(k) and LR parsers, builds AST for programming languages. Uses parser generators (ANTLR, yacc/bison). Handles syntax errors with error recovery strategies. |
| Language Tooling Engineer | Implements recursive descent and PEG parsers for DSLs. Builds error-recovery mechanisms for partial parsing to support IDE features. Generates syntax-highlighted token streams from lexer output. | |
| Systems Programmer (C/C++) | Implements lexers and parsers for system-level languages using tools like flex/bison or hand-written recursive descent. Handles operator precedence, ambiguity resolution, and efficient token buffering. |
| Rol | Obligatorio | Descripción |
|---|---|---|
| Compiler Engineer | Obligatorio | Designs complete compiler frontend: lexer, recursive descent parser, AST builder. Implements Pratt parsing for operator precedence. Optimizes parsing performance for large codebases. |
| Language Tooling Engineer | Obligatorio | Designs incremental parsing architectures (tree-sitter style) for real-time editor feedback. Implements grammar composition for embedded languages and optimizes parser performance for large source files. |
| Systems Programmer (C/C++) | Obligatorio | Designs compiler front-end architectures with custom lexer generators and GLR/Earley parsers for complex grammars. Implements source-map-preserving transformations and mentors team on formal language theory. |
| Rol | Obligatorio | Descripción |
|---|---|---|
| Compiler Engineer | Obligatorio | Defines frontend architecture for a new language or dialect, makes grammar decisions. Establishes parser quality standards for the team, conducts code reviews focusing on correctness. |
| Language Tooling Engineer | Obligatorio | Defines compiler architecture. Establishes development standards. Coordinates compiler team. |
| Systems Programmer (C/C++) | Obligatorio | Defines compiler architecture. Establishes development standards. Coordinates the compiler team. |
| Rol | Obligatorio | Descripción |
|---|---|---|
| Compiler Engineer | Obligatorio | Shapes language frontend technical standards for the platform. Researches and introduces advanced parsing methods (Earley, PEG, GLL). Publishes open source solutions and influences the tooling ecosystem. |
| Language Tooling Engineer | Obligatorio | Defines compiler/language development strategy. Designs core language features. Shapes technology vision. |
| Systems Programmer (C/C++) | Obligatorio | Defines compiler/language development strategy. Designs core language features. Establishes technology vision. |