Back to search results

Senior Research Associate in Types for Incorrectness

University of Bristol - Computer Science

Location: Bristol
Salary: £43,482 to £50,253 per annum, Grade: J
Hours: Full Time
Contract Type: Permanent
Placed On: 28th October 2025
Closes: 24th November 2025
Job Ref: ACAD108313

The role

This is an opportunity to join a team researching a new and exciting foundation for static type systems as part of the 3-year project Types for Incorrectness, led by Dr. Steven Ramsay.    

It is often said that a typical purpose of a static type system to is to detect runtime errors at compile time, but very few systems are designed with this in mind.  Indeed, traditional type systems are incapable of reasoning about programs with bugs: since well-typed programs cannot go wrong, programs harbouring runtime errors simply don’t exist as far as the type system is concerned.   By contrast, two-sided type systems (Ramsay and Walpole, POPL’24), a new generalisation of traditional static type systems, can both certify that correct programs are type safe, and certify that defective programs have a bug.  This second ability underpins the use of type systems in precision bug-finding, with zero false positives, and opens exciting possibilities for new type-based static analyses for dynamic languages like Erlang, Elixir and Python.

The Senior Research Associate role is expected to lead the investigation of the algorithmic aspects of these systems and the design and implementation of prototype tools for Erlang or Elixir.  They will engage with our project partners to understand how Erlang/Elixir developers can make use of program analyses for bug finding and, ultimately, turn the theory of two-sided type systems into a tool that can really benefit the community.

What will you be doing?

You will lead on the development of algorithms and prototype tools for reasoning about programs with bugs based on two-sided type systems. 

In particular:

  • Designing and analysing algorithms for type inference.
  • Designing and analysing type systems suitable for bug finding.
  • Implementing prototype static analysis tooling.
  • Authoring research papers suitable for venues in programming languages.
  • Conducting case studies to evaluate potential impact.
  • Engaging with the Erlang/Elixir community on relevant practical aspects of the project.

You should apply if

  • You have a PhD in programming languages, logic, formal verification or a related field.
  • You have some experience building programming language tooling (e.g. compilers, interpreters, program analysis tools, program synthesis tools, documentation generators) through research, teaching or hobby projects.
  • You have some background in formal aspects of programming language theory, such as operational semantics, type systems, or program logics.
  • You can communicate technical concepts clearly to both academic & non-academic audiences.
  • You are excited about the idea of making elegant theory work in practice, and building a tool that programmers will really use and value.

Additional information

For informal queries please contact: cs-exec@bristol.ac.uk

Dr Steven Ramsay (steven.ramsay@bristol.ac.uk)

To find out more about what it's like to work in the Faculty of Engineering, and how the Faculty supports people to achieve their potential, please see our staff blog:

https://engineering.blogs.bristol.ac.uk/category/engineering-includes-me/

Contract type: Open ended with fixed-funding until 28/02/2029

This advert will close at 23:59 UK time on Monday 24th November.

Interviews are expected to take place on Monday 19th January.

Our strategy and mission

We recently launched our strategy to 2030 tying together our mission, vision and values.

The University of Bristol aims to be a place where everyone feels able to be themselves and do their best in an inclusive working environment where all colleagues can thrive and reach their full potential. We want to attract, develop, and retain individuals with different experiences, backgrounds and perspectives.

We value your feedback on the quality of our adverts. If you have a comment to make about the overall quality of this advert, or its categorisation then please send us your feedback
Advert information

Type / Role:

Subject Area(s):

Location(s):

Job tools
 

PhD Alert Created

Job Alert Created

Your PhD alert has been successfully created for this search.

Your job alert has been successfully created for this search.

Ok Ok

PhD Alert Created

Job Alert Created

Your PhD alert has been successfully created for this search.

Your job alert has been successfully created for this search.

Manage your job alerts Manage your job alerts

Account Verification Missing

In order to create multiple job alerts, you must first verify your email address to complete your account creation

Request verification email Request verification email

jobs.ac.uk Account Required

In order to create multiple alerts, you must create a jobs.ac.uk jobseeker account

Create Account Create Account

Alert Creation Failed

Unfortunately, your account is currently blocked. Please login to unblock your account.

Email Address Blocked

We received a delivery failure message when attempting to send you an email and therefore your email address has been blocked. You will not receive job alerts until your email address is unblocked. To do so, please choose from one of the two options below.

Max Alerts Reached

A maximum of 5 Job Alerts can be created against your account. Please remove an existing alert in order to create this new Job Alert

Manage your job alerts Manage your job alerts

Creation Failed

Unfortunately, your alert was not created at this time. Please try again.

Ok Ok

Create PhD Alert

Create Job Alert

When you create this PhD alert we will email you a selection of PhDs matching your criteria.When you create this job alert we will email you a selection of jobs matching your criteria. Our Terms and Conditions and Privacy Policy apply to this service. Any personal data you provide in setting up this alert is processed in accordance with our Privacy Notice

Create PhD Alert

Create Job Alert

When you create this PhD alert we will email you a selection of PhDs matching your criteria.When you create this job alert we will email you a selection of jobs matching your criteria. Our Terms and Conditions and Privacy Policy apply to this service. Any personal data you provide in setting up this alert is processed in accordance with our Privacy Notice

 
 
More jobs from University of Bristol

Show all jobs for this employer …

More jobs like this
Join in and follow us

Browser Upgrade Recommended

jobs.ac.uk has been optimised for the latest browsers.

For the best user experience, we recommend viewing jobs.ac.uk on one of the following:

Google Chrome Firefox Microsoft Edge