Compiler Engineer
- Toronto, ON, Canada
$250,000 to $400,000 CAD / year · Full-time
Applications open in a new tab.
Job details
- Pay
- $250,000 to $400,000 CAD / year
- Job type
- Full-time
- Apply by
- Posting language
- English
- Posted
Original job description
Compiler Optimization Engineer | AI Systems
I’m working with a venture-backed AI infrastructure startup building a compiler and runtime platform designed to improve accelerator efficiency and give developers greater flexibility over where their workloads run.
They’re looking for a Compiler Optimization Engineer to shape the part of the compiler that turns model structure into better execution.
The opportunity
You’ll work between model import and target code generation, making decisions about how computations are represented, transformed and prepared for execution.
Your work will include:
- Developing graph transformations that reduce redundant work and unnecessary data movement.
- Improving fusion decisions and how tensor layouts propagate through a program.
- Evolving the IR and pass pipeline as new model patterns emerge.
- Using hardware measurements to identify missed optimisation opportunities.
- Working with frontend and backend engineers to keep compiler interfaces clear.
- Building validation that protects correctness as optimisations become more ambitious.
What would make you a strong fit
- Strong C++ and practical experience developing compiler transformations or IRs.
- A clear understanding of dataflow, optimisation legality and performance tradeoffs.
- The ability to connect graph and layout decisions with memory behaviour on accelerators.
Experience with MLIR, XLA, affine or polyhedral analysis, or ML framework internals would be particularly relevant.
The appeal is substantial technical ownership: your decisions will influence how models are compiled and how effectively they use different hardware. You’ll join an experienced compiler and systems team, with equity participation and room to develop new approaches.
More about this job
Responsibilities
Develop and improve compiler graph transformations, fusion decisions, tensor layout propagation, intermediate representations, and pass pipelines to optimize model execution on accelerators. Use hardware measurements to identify optimization opportunities, collaborate with frontend and backend engineers, and build validation to preserve correctness.
Requirements
Strong C++ skills and practical experience developing compiler transformations or intermediate representations are required, along with understanding of dataflow, optimization legality, and performance tradeoffs. Relevant experience connecting graph and layout decisions to accelerator memory behavior is important; MLIR, XLA, affine or polyhedral analysis, and machine-learning framework internals are particularly relevant.
Skills
- C++
- Compiler Transformations
- Intermediate Representations
- Dataflow Analysis
- Optimization Legality
- Performance Optimization
- Graph Transformations
- Operator Fusion
- Tensor Layouts
- Memory Behavior
- Accelerator Hardware
- MLIR
- XLA
- Affine Analysis
- Polyhedral Analysis
Benefits
- Equity Participation
Visa sponsorship
Not detected in the job text
Categories
- Software
- Technology
- Engineering
Keywords
- Compiler Optimization
- AI Infrastructure
- Compiler
- Runtime Platform
- Accelerators
- C++
- Graph Transformations
- Data Movement
- Operator Fusion
- Tensor Layouts
- Intermediate Representation
- Compiler Pass Pipeline
- Model Import
- Target Code Generation
- Dataflow
- Optimization Legality
- Performance Tradeoffs
- Memory Behavior
- Hardware Measurements
- Correctness Validation
- MLIR
- XLA
- Affine Analysis
- Polyhedral Analysis
- Machine-Learning Framework Internals