University of Cambridge

Job Opportunities


Research Assistant/Associate in Systems Software Aspects of Architectural Security (x2)

Fixed-term: The funds for this post are available for 1 year in the first instance.

We are seeking Research Associates to join the CTSRD Project in investigating fundamental improvements to CPU and I/O architecture, operating systems (OSes), program analysis, programming languages, compilers, and applications in support of computer security. The CTSRD Project is a collaboration between the University of Cambridge, SRI International, and ARM Research, and is part of the DARPA's CRASH and SSITH research programmes on clean-slate hardware-software co-design for security. More information may be found at:

Our recent areas of research have included the CHERI Instruction-Set Architecture (ISA) and processor, CHERI software stack including operating system and compiler, TESLA program transformation techniques, SOAAP static program analysis for security, Capsicum OS security model, OS tracing and instrumentation, and high-performance network-stack design. The project also takes an interest in related areas such as I/O security and formal modelling/verification of hardware-software systems for correctness and security.

This positions will be an integral part of an international team of researchers spanning multiple institutions in academia and industry. Successful candidates will contribute to the larger research effort by enhancing the CHERI architecture, hardware, software, and/or formal models, as well as in performing adversarial analysis on these systems. The successful candidate must be willing to travel within the UK and abroad engaging with downstream industrial and open-source user communities, as well as research collaborators and sponsors.

Ideal candidates for these positions will have one or both of (a) substantial experience in OS kernel development such as the FreeBSD, Linux, seL4, FreeRTOS, or RTEMS kernels or (b) substantial past experience extending the Clang/LLVM compiler for use in static analysis, dynamic instrumentation, and/or memory protection. Experience with modelling and extending Instruction-Set Architectures (ISAs) or hardware development will be considered positively.

Research Associates will normally hold, or shortly complete, a PhD in Computer Science (or similar) with specialisation in security, compilers, operating systems, or computer architecture. It is possible that pre-doctoral candidates can be appointed to this position but they will require substantial development experience (in industry or academia), as well as security expertise. If they don't hold the substantial experience required then they may be appointed to the Research Assistant scale.

The roles will benefit from strong existing experience with: the C programming language; 64-bit MIPS, 64-bit RISC-V, or ARMv8 assembly; kernel development; revision control; continuous integration; and participation in large (and ideally distributed) industrial, research, or open-source collaborative development projects. Strong interpersonal and organisational skills, and the ability to work in an international team at multiple sites, are essential.

The positions are intended to start on 9 January 2018, although flexibility is available.

Questions about the post may be addressed to Dr Robert N. M. Watson

To apply online for this vacancy, please click on the 'Apply' button below. This will route you to the University's Web Recruitment System, where you will need to register an account (if you have not already) and log in before completing the online application form.

You will need to upload a full Curriculum Vitae (CV) (including publication list for post-doctoral applicants, and substantive details of industrial or open-source systems software development for other applications) and a brief statement of the contribution you would make to the project. If you upload any additional documents which have not been requested, we will not be able to consider these as part of your application.

Please quote reference NR13885 on your application and in any correspondence about this vacancy.

The University values diversity and is committed to equality of opportunity.

The University has a responsibility to ensure that all employees are eligible to live and work in the UK.

Apply online