| Location: | Cambridge |
|---|---|
| Salary: | £33,002 to £46,049 per annum |
| Hours: | Full Time |
| Contract Type: | Fixed-Term/Contract |
| Placed On: | 18th December 2025 |
|---|---|
| Closes: | 9th January 2026 |
| Job Ref: | NR48331 |
Fixed-term: The funds for this post are available for one year in the first instance, with potential renewal on a yearly basis. Applications are invited for a Research Assistant or Research Associate (PostDoc) to join the Compiler Lab in the Department of Computer Science and Technology at the University of Cambridge, UK.
You will work with a team of students and collaborators on the development of formally verified compiler infrastructure at the intersection of MLIR and Lean4. We aim to bring formally verified compilation into the day-to-day use of the LLVM/MLIR compiler ecosystem. In this context, we use and contribute to the Lean4 proof assistant, where we build foundational technology such as a powerful BitVector library, coinductive proofs, an embedding of MLIR's SSA data structures into Lean, or a model of instruction-set level semantics. We are also interested in cryptography, namely ZKVMs, FHE, game-based proofs (a la Easycrypt), and their models via Lean and MLIR, large-scale SAT/SMT solvers, or the use of program synthesis, for example, for superoptimization. While we have a clear objective, the path towards this objective is flexible. All our work is developed in close collaboration with the open-source community. Hence, we appreciate interest or experience in open-source software development.
The successful applicant at the Research Associate level will possess a PhD in computer science or equivalent experience in compiler design and/or interactive theorem proving, and a track record of relevant scientific publications, whereas at the Research Assistant level must hold a MSc in Computer Science or equivalent experience. Excellent spoken and written English is essential for this role. We particularly encourage applicants who are enthusiastic about our project, even if their background and expertise are only tangentially related to this position.
Appointment at the Research Associate level is dependent on having a PhD, equivalent experience. Those who have submitted but have not yet received their PhD will be appointed at the Research Assistant level, which will be amended to Research Associate once the PhD has been awarded.
The Compiler Lab in the Department of Computer Science and Technology aims to use strong theoretical reasoning to bring innovations to real-world compilation and programming language problems. We aim to rethink performance programming by reconnecting developers and compilers. Today, performance programming is no longer limited to optimizing low-level code. It often includes using domain-specific compilers, constraint programming libraries, complex performance models, and automatic (potentially learned) strategies to search for optimal code transformations. To enable such a search, we contribute to open-source compilers such as LLHD/CIRCT, develop constraint programming libraries such as MLIR's FPL (http://grosser.science/FPL) and high-productivity compilers such as xDSL (https://xdsl.dev).
The Department of Computer Science and Technology is an academic department that encompasses computer science along with many aspects of engineering, technology, and mathematics. We have a worldwide reputation for academic research and consistently top research ratings.
The Department has an open and collaborative culture, supporting revolutionary fundamental computer science research, strong cross-cutting collaborations internally and externally, and ideas that transform computing outside the University.
Please follow the link at https://www.cst.cam.ac.uk to find out more about our Department.
Applicants should contact Tobias Grosser for further information at http://www.grosser.science
To apply and to view further information, click 'Apply' above.
The University actively supports equality, diversity and inclusion and encourages applications from all sections of society.
Type / Role:
Subject Area(s):
Location(s):