Postdoctoral position in Software Testing and Programming Languages

Postdoc position of up to 36 months

Applications are invited for a postdoctoral position, joint between the Software Reliability Group and the Multicore Programming Group, under the direction of Dr. Cristian Cadar and Dr. Alastair Donaldson.

We are looking for motivated applicants interested in working at the intersection of software testing and programming languages. The research will focus on two main strands:

  • The first research strand will focus on testing compilers for popular programming languages. We will design novel techniques to detect compiler bugs that are currently out of reach to existing compiler testing techniques. Particular attention will be given to bugs that are security-critical in nature, presenting a largely unexplored attack surface whereby software that is correct at the source level can nevertheless be vulnerable to exploitation when erroneously compiled into binary form. We also aim to mitigate this threat at runtime by using novel multi-version execution techniques in which versions of the same program compiled by different compilers are run in parallel.

  • The second research strand will focus on helping software systems evolve safely and securely. It will take a holistic approach to the challenges of safe and secure software evolution, by combining offline program analysis techniques such as static analysis and symbolic execution to verify or comprehensively test software patches, with runtime mechanisms such as multi-version execution for keeping the software updated and secure against potentially erroneous changes that make it into the deployed system.

Candidates should be motivated to work at the intersection of software testing and programming languages. To apply, candidates will need to have a strong computing background, experience in building and working with large software testing tools, and proven knowledge in either software testing techniques (with a particular emphasis on fuzzing and symbolic execution) or practical aspects of programming languages (such as compiler design and implementation). Candidates are also expected to have a proven research record and publications in the relevant areas.

Applicants must have a PhD in an area pertinent to the subject area. Candidates close to completion of their PhD will also be considered, but will be initially appointed as Research Assistant within the salary range £34,397 - £37,486 per annum. Excellent pre-doctoral candidates wishing to undertake doctoral studies in this research area will also be considered.

Candidates will have excellent communication skills and be able to organise their own work with minimal supervision and prioritise work to meet deadlines.

The Department of Computing at Imperial College London is a leading department of Computer Science among UK Universities. The department has achieved top results in each of the research assessment exercises undertaken by the Higher Education Funding Council for England. There are over fifty academic staff members actively involved in research, creating a lively and stimulating atmosphere. The department is located in central London, next to Hyde Park and the museums of South Kensington.

For informal inquiries about this position please contact Dr. Cristian Cadar and Dr. Alastair Donaldson. For further information on the Software Reliability Group and and Multicore Programming Group, and related projects, see http://srg.doc.ic.ac.uk/ and http://multicore.doc.ic.ac.uk/.

How to apply

Applications must include the following:

  • An online college application form available at http://www3.imperial.ac.uk/employment. Please select “Job Search”, then enter the job reference number ENG00979 into “keywords”. Please complete and upload an application form as directed.

  • A full CV including a publication list.

  • A two-page research statement indicating what you see are interesting research issues relating to the above post and why your expertise is relevant.

  • Transcripts of all higher-education degree results.

  • The names and contact information of two or three referees who can provide letters of recommendation.

Should you have any queries regarding the application process please contact Mr. Jamie Perrins, Administrative Assistant, at j.perrins@imperial.ac.uk.

Committed to equality and valuing diversity. We are also an Athena SWAN Silver Award winner, a Stonewall Diversity Champion, a Two Ticks Employer, and are working in partnership with GIRES to promote respect for trans people.