Magnet.me  -  The smart network where students and professionals find their internship or job.

The smart network where students and professionals find their internship or job.

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

Posted 30 Nov 2024
Share:
Work experience
1 to 3 years
Full-time / part-time
Full-time
Job function
Salary
€2,872 - €3,670 per month
Degree level
Required languages
English (Fluent)
Dutch (Fluent)
Deadline
12 Jan 2025 00:00

Your career starts on Magnet.me

Create a profile and receive smart job recommendations based on your liked jobs.

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

Job description

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.

In your research, you will first learn to, and later independently… :

  • Apply qualitative and quantitative research methods to study the experiences of developers with just-in-time test generation.
  • Develop and evaluate new techniques for detecting test-worthy code changes and quickly generating incremental and effective tests.
  • Design and conduct user studies to assess the effectiveness of the proposed tool.
  • Collaborate with other researchers and developers to strengthen the tool's practical applicability.
  • Communicate your research findings by publishing in and presenting at top-tier academic conferences and journals.

The PhD candidate will be embedded in the Software Engineering Research Group at TU Delft, an internationally recognized research group with a strong focus on quality in software engineering, while encompassing a wide range of software engineering topics like AI for SE, sustainability, DevOps and testing of distributed systems. The candidate will have the opportunity to collaborate with experienced researchers, attend conferences, and experience an international research environment. The position will focus on research, with optional contributions to education and supervision of students.

We are committed to creating a diverse and inclusive research environment and encourage applications from all qualified candidates, regardless of their background or experience. We believe that diversity contributes to a more innovative and creative research community.

If you do not meet some of the optional requirements listed, we encourage you to still apply and explain how your unique experience and skills can contribute to our research.

Requirements

Required (by the Graduate School of TU Delft):

  • Master's degree in Computer Science, Software Engineering, or a related field.
  • Proficiency in the English language (https://www.tudelft.nl/onderwijs/opleidingen/phd/admission)

Optional requirements:

  • Programming skills in languages such as Java, Python or C++.
  • Knowledge of software engineering and software testing methodologies and tools.
  • Interest and motivation to develop excellent research and analytical skills, such as a critical attitude, self-organization and academic writing.
  • Passion to consider the humans that create and use software.

TU Delft (Delft University of Technology)

Delft University of Technology is built on strong foundations. As creators of the world-famous Dutch waterworks and pioneers in biotech, TU Delft is a top international university combining science, engineering and design. It delivers world class results in education, research and innovation to address challenges in the areas of energy, climate, mobility, health and digital society. For generations, our engineers have proven to be entrepreneurial problem-solvers, both in business and in a social context.

At TU Delft we embrace diversity as one of our core values and we actively engage to be a university where you feel at home and can flourish. We value different perspectives and qualities. We believe this makes our work more innovative, the TU Delft community more vibrant and the world more just. Together, we imagine, invent and create solutions using technology to have a positive impact on a global scale. That is why we invite you to apply. Your application will receive fair consideration.

Challenge. Change. Impact!

Faculty Electrical Engineering, Mathematics and Computer Science

The Faculty of Electrical Engineering, Mathematics and Computer Science (EEMCS) brings together three scientific disciplines. Combined, they reinforce each other and are the driving force behind the technology we all use in our daily lives. Technology such as the electricity grid, which our faculty is helping to make completely sustainable and future-proof. At the same time, we are developing the chips and sensors of the future, whilst also setting the foundations for the software technologies to run on this new generation of equipment – which of course includes AI. Meanwhile we are pushing the limits of applied mathematics, for example mapping out disease processes using single cell data, and using mathematics to simulate gigantic ash plumes after a volcanic eruption. In other words: there is plenty of room at the faculty for ground-breaking research. We educate innovative engineers and have excellent labs and facilities that underline our strong international position. In total, more than 1000 employees and 4,000 students work and study in this innovative environment.

Click here to go to the website of the Faculty of Electrical Engineering, Mathematics and Computer Science.

Conditions of employment

Doctoral candidates will be offered a 4-year period of employment in principle, but in the form of 2 employment contracts. An initial 1,5 year contract with an official go/no go progress assessment within 15 months. Followed by an additional contract for the remaining 2,5 years assuming everything goes well and performance requirements are met.

Salary and benefits are in accordance with the Collective Labour Agreement for Dutch Universities, increasing from € 2872 per month in the first year to € 3670 in the fourth year. As a PhD candidate you will be enrolled in the TU Delft Graduate School. The TU Delft Graduate School provides an inspiring research environment with an excellent team of supervisors, academic staff and a mentor. The Doctoral Education Programme is aimed at developing your transferable, discipline-related and research skills.

The TU Delft offers a customisable compensation package, discounts on health insurance, and a monthly work costs contribution. Flexible work schedules can be arranged.

De fascinatie voor science, design en engineering is wat ruim 13000 bachelor & masterstudenten en 5000 medewerkers van de TU Delft drijft. De Technische Universiteit Delft is niet alleen de oudste, maar ook de grootste technische universiteit van Nederland: een universiteit die continu op zoek is naar jou als (inter)nationaal talent om het onderzoek en onderwijs van deze unieke instelling…


De fascinatie voor science, design en engineering is wat ruim 13000 bachelor & masterstudenten en 5000 medewerkers van de TU Delft drijft. De Technische Universiteit Delft is niet alleen de oudste, maar ook de grootste technische universiteit van Nederland: een universiteit die continu op zoek is naar jou als (inter)nationaal talent om het onderzoek en onderwijs van deze unieke instelling op topniveau te houden. Met ongeveer 5.000 medewerkers is de Technische Universiteit Delft de grootste werkgever in Delft. De acht faculteiten, de unieke laboratoria, onderzoeksinstituten, onderzoeksscholen en de ondersteunende universiteitsdienst bieden de meest uiteenlopende functies en werkplekken aan. De diversiteit bij de TU Delft biedt voor iedereen mogelijkheden. Van Hoogleraar tot Promovendus. Van Beleidsmedewerker tot ICT'er.

Engineering
Delft
5,000 employees