Fixed-term: The funds for this post are available for 2 years in the first instance.
We are seeking a Senior Research Software Engineer (SRSE) with a strong background in the operating systems to contribute to the CHERI Project and our joint work with Arm on their prototype Morello board, which incorporates CHERI into a high-end superscalar ARMv8-A processor. CHERI is a highly successful collaboration between the University of Cambridge, SRI International, and Arm to develop new architectural security primitives. The CHERI protection model extends off-the-shelf processor Instruction-Set Architectures (ISAs) and processors with new capability-based security primitives supporting fine-grained C/C++-language memory protection and scalable software compartmentalization.
CHERI has been developed over the past ten years as part of multiple DARPA-supported research projects, and is the subject of long-term transition efforts to the ARMv8-A and RISC-V architectures. As part of UKRI's ISCF Digital Security by Design Challenge (DSbD), Arm is designing and building an experimental CHERI-extended CPU, System-on-Chip, and development board, Morello, which will be available to academia and industry from early 2022. Simultaneously, the CHERI Project is developing a series of FPGA-based CHERI-RISC-V prototype processors.
This research position will (a) contribute to the research into the adaptation of advanced OS and toolchain (e.g., compiler) features to CHERI and Morello, including tracing/instrumentation/debugging, virtualization, and runtimes; and (b) contribute, both before and after Morello ships, to research activities that explore, prototype, and evaluate software approaches to using the new architecture. These activities will also feed back into future ISA and microarchitectural design, as well as real-world software stacks being used in academic and industrial research and development. More information on CHERI can be found at:
This position will be an integral part of an international team of researchers spanning multiple institutions in academia and industry. Successful candidates will have significant research and engineering expertise in OS kernel development, with a particular interest in experience with the FreeBSD operating system and LLVM compiler suite (which are used heavily in this project), and will collaborate with academic and industrial partners over the multi-year project.
The position will benefit from strong existing experience with the C/C++ programming languages; MIPS, RISC-V, or ARMv8-A assembly; revision control; release engineering; continuous integration; and participation in large (and ideally distributed) industrial, research, or open-source collaborative development projects. Past research and development experience with OS kernel internals or compiler development is essential. Strong interpersonal and organisational skills, and the ability to work in an international team at multiple sites, will also be important in this role.This post will require active engagement with downstream industrial and open-source user communities, as well as research collaborators and sponsors. Initially this will be online, but it is expected that, as the COVID-19 crisis abates, this will also involve domestic and international travel.
Click the 'Apply' button below to register an account with our recruitment system (if you have not already) and apply online.
This post is intended to start on 1 October 2021, but there is flexibility with respect to earlier or later start dates. Our team is highly distributed, with multiple remote members. International applicants may be able to begin work remotely, due to COVID-19, but should contact the department to confirm potential applicability and anticipated arrangements. Whether a candidate would in due course relocate to Cambridge will be discussed in the interview phase, but applicants should clearly state their preference in their application material. Remote work may be available as an option only for limited locations due to tax and other implications.
For additional background regarding the CHERI technology being developed by the team and its collaborators, please see our Technical Report UCAM-CL-TR-941, An Introduction to CHERI.
Questions about the post may be addressed to Dr Robert N. M. Watson
Please provide a CV, including publication list and details of at least 2 references, a brief statement of the contribution you would make to the project, drawing attention to relevant experience with OS research and development; please make clear whether longer-term remote working considered desirable, and if so from where and if you are intending to apply for the part-time post please propose an indicative working schedule. If you upload any additional documents which haven't been requested, we will not be able to consider these as part of your application.
Please quote reference NR26813 on your application and in any correspondence about this vacancy.
The University actively supports equality, diversity and inclusion and encourages applications from all sections of society.
The University has a responsibility to ensure that all employees are eligible to live and work in the UK.