Roles · Compiler Engineer · Lead

What a Lead } should know

12 core skills, 55 in total. Expectations per skill, and what changes at the next level.

This page lists what a Lead } is expected to know and do, skill by skill. Core skills are the ones a manager and peers assess in a review cycle; the rest count only in self-assessment. Main areas: Programming Fundamentals, Version Control & Collaboration, Compilers & Languages.

12core skills
43additional skills
3skill areas
100%at Advanced or Expert
Assess myself as Lead Full role matrix

Core skills for a Lead

Grouped by area. The label on the right is the expected depth: Awareness, Working, Advanced or Expert.

Programming Fundamentals · 3

Establishes algorithms and complexity standards for the compiler engineering team and makes architectural decisions. Defines technical roadmap considering this skill. Mentors senior engineers and influences practices of adjacent teams.

Establishes code quality standards for the compiler engineering team and makes architectural decisions. Defines technical roadmap considering this skill. Mentors senior engineers and influences practices of adjacent teams.

Establishes data structure standards for the compiler engineering team and makes architectural decisions. Defines technical roadmap considering this skill. Mentors senior engineers and influences practices of adjacent teams.

Version Control & Collaboration · 1

Code Review Expert

Establishes code review standards for the compiler engineering team and makes architectural decisions. Defines technical roadmap considering this skill. Mentors senior engineers and influences practices of adjacent teams.

Compilers & Languages · 8

Architects AST transformation system for the compiler project. Makes decisions about IR representation and optimization passes. Introduces transformation testing.

Architects compiler backend and codegen pipeline. Makes decisions about instruction scheduling and peephole optimization. Manages the backend engineering team.

Defines strategy and order of the optimization pipeline for the compiler. Manages balance between compilation time and code quality. Makes decisions about optimization aggressiveness.

Architects interpreter as part of a complete language runtime. Makes decisions about interpreter/JIT balance. Manages execution strategy evolution.

Architects JIT subsystem for the language runtime platform. Makes decisions about compilation strategy, tiering policy and JIT code memory management. Manages the JIT engineering team.

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.

Leads LLVM integration in the team's compiler project. Makes architectural decisions about LLVM version and custom passes strategy. Evaluates trade-offs of LLVM vs QBE vs MLIR.

Architects type system evolution for the language with backward compatibility in mind. Makes decisions about breaking changes. Manages the type system engineering team.

Additional skills

Not assessed by the team, but part of the self-assessment and the development plan.

Async ProgrammingAWSBenchmarking Tools & MethodologyChatGPT / ClaudeCPU ProfilingDesign PatternsDockerDSL Design & ImplementationFunctional Programming PrinciplesGenerics & Parametric PolymorphismGit AdvancedGitHub Actions / GitLab CIGitHub CopilotGraph AlgorithmsI/O & Disk ProfilingImmutability & Persistent Data StructuresIntegration TestingKubernetes CoreLanguage Server Protocol (LSP)Latency OptimizationMemory ManagementMemory ProfilingMemory ProfilingMonads & FunctorsMultithreadingNetwork FundamentalsOOP & SOLID PrinciplesOWASP & Application SecurityPerformance BudgetsPostgreSQLPrometheus & GrafanaPrompt Engineering for CodeProperty-Based TestingRedisResource Optimization FinOpsREST API DesignSecure Coding PracticesStructured LoggingSystem Design FundamentalsTDD & BDDThroughput OptimizationType Safety & Type SystemsUnit Testing

What changes at Principal

0 skills get a higher expectation or become core when moving from Lead to Principal. The biggest jumps first.

See the Principal page →
Run this with your whole team
Self-assessment plus manager and peer reviews against the same matrix, gap analysis and next-level readiness for every engineer. Team Pro is free for 14 days; individual tools stay free forever.
Start a team trial (14 days free) Send to my manager

} in the open competency matrix: 55 skills across 5 levels. The matrix is free for individuals and stays free.