领域
Compilers & Languages
技能档案
Code generation: machine code emission, register allocation, instruction selection
角色数
3
包含此技能的角色
级别数
5
结构化成长路径
必要要求
11
其余 4 个可选
Compilers & Languages
Compiler Tools
2026/3/17
选择当前级别并对比期望。下方卡片显示晋升所需掌握的内容。
表格展示从初级到首席的技能深度变化。点击行查看详情。
| 角色 | 必要性 | 描述 |
|---|---|---|
| Compiler Engineer | 必要 | Understands what code generation is and the difference between native code, bytecode and interpretation. Knows basic concepts of register allocation and instruction selection. Can read x86/ARM assembly. |
| Language Tooling Engineer | Generates simple code output from IR using template-based emitters. Understands the mapping from AST nodes to target language constructs. Writes basic tests verifying generated code correctness. | |
| Systems Programmer (C/C++) | Reads generated assembly or machine code output from compiler backends. Understands basic instruction selection and register allocation concepts. Traces code generation paths to debug simple output issues. |
| 角色 | 必要性 | 描述 |
|---|---|---|
| Compiler Engineer | 必要 | Implements code generation for stack-based or register-based bytecode. Uses LLVM or QBE for native code generation. Generates optimized code for function call patterns. |
| Language Tooling Engineer | Implements code generators targeting multiple output formats (source code, bytecode). Builds peephole optimizations and handles platform-specific code emission. Writes property-based tests for generated output validation. | |
| Systems Programmer (C/C++) | Implements instruction selection and scheduling passes for target architectures. Works with register allocators and handles calling convention compliance. Writes extensive tests ensuring generated binary correctness across platforms. |
| 角色 | 必要性 | 描述 |
|---|---|---|
| Compiler Engineer | 必要 | Designs instruction selection and register allocation for a new target. Implements calling convention for custom ABI. Optimizes codegen for specific CPU architectures (x86/ARM/RISC-V). |
| Language Tooling Engineer | 必要 | Designs code generation pipelines with pluggable backends for multiple target platforms. Architects JIT compilation and incremental code generation strategies. Mentors the team on compiler backend design and optimization trade-offs. |
| Systems Programmer (C/C++) | 必要 | Designs code generation backends targeting custom hardware and specialized ISAs. Architects auto-vectorization and SIMD code emission strategies. Mentors engineers on low-level optimization and hardware-software co-design. |
| 角色 | 必要性 | 描述 |
|---|---|---|
| Compiler Engineer | 必要 | Architects compiler backend and codegen pipeline. Makes decisions about instruction scheduling and peephole optimization. Manages the backend engineering team. |
| Language Tooling Engineer | 必要 | Defines compiler architecture. Establishes development standards. Coordinates compiler team. |
| Systems Programmer (C/C++) | 必要 | Defines compiler architecture. Establishes development standards. Coordinates the compiler team. |
| 角色 | 必要性 | 描述 |
|---|---|---|
| Compiler Engineer | 必要 | Defines code generation strategy for new ISAs (RISC-V, WebAssembly). Researches superoptimization and stochastic codegen techniques. Participates in ABI standardization for the platform. |
| Language Tooling Engineer | 必要 | Defines compiler/language development strategy. Designs core language features. Shapes technology vision. |
| Systems Programmer (C/C++) | 必要 | Defines compiler/language development strategy. Designs core language features. Establishes technology vision. |