The TU Delft Software Engineering Research Group has the following vacancies:

PhD Position Developer-centred Just-in-Time Test Generation

Tired of writing endless tests? Join our research team and help us revolutionize software development with Just-in-Time Test Generation tools for developers.

Software developers are asked to write comprehensive tests for the code they are creating, which can be a tedious and time-consuming task for them. To help them, researchers are developing a variety of automatic test generation tools. However, current state-of-the-art test generation methods often require the code under test to be fully completed before tests can be generated. This conflicts with our requests to developers to create tests directly when they are writing their production code.
To support developers, we aim to develop tools that closely collaborate with them by studying the code they write and directly proposing relevant generated tests. This type of Just-in-Time test generation would enable many new possibilities to create high-quality software with comprehensive and effective tests early in the programming process.
As a PhD student in this postion, you will lay out the foundations for Just-in-Time test generation and have the opportunity to design, prototype and evaluate new tools and techniques for test generation.
The technologies you work with will be driven by your interest. This could be test amplification, search-based test generation or generative artificial intelligence and large language models. To realize Just-in-Time test generation you will work with source code analysis tools and build prototypes for developer IDEs such as IntelliJ, VS Code or others.

I want to know more…

Contact: Carolin Brandt (c.e.brandt@tudelft.nl)

PhD student in Software Testing and Validation for AI-intense Systems

The Ph.D. position will focus on the research and development of solutions to test and validate AI-intensive systems. AI-intensive systems involve multiple internal stages, pipelines, models, as well as interaction with other non-AI-based components. Often, they also process multimodal data requiring human interpretation. The question of quality assurance for AI thus is more refined than a single evaluation or testing approach, which often is seen today. In this Ph.D. project, we therefore will focus on bridging evaluation and testing methodologies from the software engineering and applied machine learning domains.

This project is a collaboration between the Multimedia Computing (MMC) Group at the Intelligent Systems (INSY) Department, and the Software Engineering Research Group (SERG) at the Software Technology (ST) Department. The INSY and ST departments closely work together in the faculty’s Computer Science research and education.

I want to know more…

Contact: Annibale Panichella (a.panichella@tudelft.nl)

PhD student in Testing Distributed Systems

Modern computation increasingly depends on large-scale distributed systems and blockchains. However, these systems are difficult to design and implement correctly. They may fail to ensure correctness in subtle executions with unexpected orderings of exchanged messages, network partitions, and process failures.

The PhD project aims to develop program analysis and testing techniques for improving reliability of distributed systems and blockchains.

The project lies in the intersection of software testing, program analysis, and distributed systems. The prospective PhD student is expected to do high-quality research involving both theory and implementation: getting a deep understanding of theoretical abstractions of fault-tolerant systems and developing novel software analysis and testing techniques.

I want to know more…

Contact: Burcu Kulahcioglu Ozkan (b.ozkan@tudelft.nl)