Research Associate/senior Research Associate In Static Analysis And Programming Language Tools (fixed Term)

Cambridge, ENG, GB, United Kingdom

Job Description

Fixed-term: The funds for this post are available for 2 years.


Programming languages provide an interface for developing increasingly complex models in science. However, as computer models grow more complex, it is increasingly difficult to deliver on core requirements such as verifiability, maintainability, understandability, validity, and portability. Managing software complexity more effectively has been a focus of programming language research for many years, yet we see little adoption of new approaches in the natural sciences.


To address some of these issues, the CamFort suite of tools [1, 2] was developed to provide lightweight verification tools for scientists, targeting Fortran (which is used pervasively in the sciences and in industry). CamFort provides optional advanced type systems (e.g., for units-of-measure typing), novel partial specifications and accompanying verifiers, and deductive verification techniques. CamFort is underpinned by the fortran-src static analysis toolkit for Fortran [3, 4], which provides parsers for various language standards, core static analyses, and various models. The fortran-src toolkit has been developed over the years with collaborators in industry. Both CamFort and fortran-src are open-source, written in Haskell.


This position will support the development of the next phase of work in fortran-src/CamFort and provide an opportunity to do research in static analysis, verification, and/or refactoring. Possible areas of exploration include investigating (1) static analyses to assess cross-platform portability and associated refactoring transformation, e.g., to handle endianness; (2) developing novel analysis to assess properties such as robustness and sensitivity; (3) developing novel specification systems for numerical properties of code. There is an expectation that the post will involve both research and software development. The post will involve collaboration with industry partners actively using and developing fortran-src.


This post is based in the Department of Computer Science and Technology at the University of Cambridge and is also part of the Institute of Computing for Climate Science, a multi-disciplinary initiative supporting climate modelling through the latest in computer science, mathematics, software engineering, and statistics. The institute is a joint venture between the Department of Applied Mathematics and Theoretical Physics (DAMTP), the Department of Computer Science and Technology (CST, also known as the Computer Laboratory), and University Information Services (UIS), and receives funding from a variety of sources. The candidate will join a group applying programming language-oriented research to support scientific work.


Role Requirements




Degree-level education, with a PhD (or nearing completion of) in Computer Science or equivalent experience; Research experience in static analysis and/or compilers and/or programming language tools; Track record of publication; Strong skills in functional programming.

Desirable Characteristics




Haskell experience or a strong desire to learn Haskell; Experience developing practical tools desirable.

Candidates wishing to be judged as Senior candidates should also have




A significant amount of experience in research post-PhD; Evidence of potential for interdisciplinary collaboration; Evidence of potential to obtain additional research funding; Experience in leading research projects.

If you have any questions regarding the role or the application process, please contact Dominic Orchard (dominic.orchard@cl.cam.ac.uk).


[1] https://camfort.github.io/


[2] https://github.com/camfort/camfort


[3] https://github.com/camfort/fortran-src/


[4] https://joss.theoj.org/papers/10.21105/joss.07571


Click the 'Apply' button below to register an account with our recruitment system (if you have not already) and apply online.


Please indicate the contact details of two academic referees on the online application form and upload a full curriculum vitae, publications list, and a description of your recent research, current research and future research interests within this role (not to exceed two pages).


Please quote reference NR45820 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.

Beware of fraud agents! do not pay money to get a job

MNCJobs.co.uk will not be responsible for any payment made to a third-party. All Terms of Use are applicable.


Job Detail

  • Job Id
    JD3047680
  • Industry
    Not mentioned
  • Total Positions
    1
  • Job Type:
    Full Time
  • Salary:
    Not mentioned
  • Employment Status
    Permanent
  • Job Location
    Cambridge, ENG, GB, United Kingdom
  • Education
    Not mentioned