About the job
We are building the next generation of compiler technologies to accelerate deep learning workloads. We are looking for an engineer to implement compiler verification software & related infrastructure in the AI space. You will be solving critical problems working alongside a diverse set of minds in GPU computing and systems software, doing what you enjoy. If this sounds like a fun challenge, we want to hear from you.
Responsibilities
Design and build systems to reason about correctness in deep learning compilers, across graph transformations, IR lowering, and GPU execution
Work with deep learning compiler and architecture teams to analyze and validate sophisticated optimizations (e.g., graph rewrites in MLIR, fusion passes, mixed-precision transformations), ensuring they preserve semantics and numerical behavior
Engineer test generation systems that use deep learning solutions and analysis methods to drive in-depth testing. These systems explore the vast combinatorial space of model topologies, precision modes, and hardware targets.
Define and improve how we measure and guarantee functional quality and performance as models, compiler stacks, and hardware continue to evolve
Qualifications
Minimum
BS, MS or PhD in Computer Science, Computer Engineering, Mathematics, or equivalent experience
3+ years of hands-on engineering experience in compiler development, deep learning systems, or compiler verification
Must have deep proficiency in Python or C++ and experience with one major DL framework. This could be PyTorch, JAX/XLA, TensorRT, or a similar framework. Experience should involve model execution, graph representation, or runtime behavior.
Strong systems intuition and debugging depth — ability to reason across abstraction layers, from high-level model semantics down to generated code, and track down failures that only manifest in edge cases!
Preferred
Compiler engineering experience including LLVM, MLIR, TVM, or XLA — you understand how passes are composed, how IR semantics are preserved, and where correctness breaks down
Formal methods or language specification background: experience with type systems, program semantics, or proof-based verification
DL model internals depth: experience with quantization, operator fusion, mixed-precision, or graph-level optimization