As a scientific programmer, you will support the development of software from a technical point of view; the researchers of the EVI project will collaborate with you and provide the research perspective. Besides pure software development (programming), you also take responsibility for ensuring quality and maintainability of the (open-source) software, for example, with respect to architectural design, and by facilitating a process including, for example, Git, testing, code reviews and usage of Docker.
Your primary task will be software development for the Haskell library Lattest for model-based testing. The library allows the user to (i) write a model of the input-output behaviours a software system is expected to have, (ii) set up the connection with a software system for executing tests consisting of inputs and outputs, and (iii) select test generation algorithms that derive tests from a given model.
As a second task, you will work on software development for model learning, and in particular, on the Python library AALpy. Model learning is done algorithmically, by sending inputs to and receiving outputs from a software system, such that a model of the actual behaviour of a software system can be constructed. In the EVI project, model learning is combined with model-based testing and model checking to construct such a model efficiently.
The EVI project is a collaboration between the University of Twente and Radboud University. As a scientific programmer you will become part of the EVI team with members from both these universities, and you will participate in joined activities. You will be based at the University of Twente, in the Formal Methods and Tools group, where the EVI members focus on the topic of model-based testing.
Information and application
Are you interested in this position? Please send your application via the 'Apply now' button below before June 1 2026, and include:
- A Curriculum Vitae, including a list of all courses attended and grades obtained during your studies, and, if applicable, a list of any previous working experience.
- A cover letter (maximum 2 pages A4), emphasising your motivation to apply for this specific position.
- The names of 2 or 3 people who can be contacted for additional information about you.
Applications will be evaluated on a rolling basis, i.e. when they are submitted, until we find a suitable candidate, or when the vacancy closes.
For more information regarding this position, you are welcome to contact dr. Petra van den Bos, p.vandenbos@utwente.nl.
Screening is part of the selection process.
About the department
The Formal Methods and Tools group is part of the Computer Science department of the University of Twente. Our mission is to develop mathematical methods, high-performance data structures and algorithms, and suitable programming languages for the design of reliable software- and data-intensive control systems. The group consists of approximately 40 researchers with a very diverse background. We have an open and inclusive atmosphere, with many group activities (both work-related and fun).
About the organisation
The faculty of Electrical Engineering, Mathematics and Computer Science (EEMCS) uses mathematics, electronics and computer technology to contribute to the development of Information and Communication Technology (ICT). With ICT present in almost every device and product we use nowadays, we embrace our role as contributors to a broad range of societal activities and as pioneers of tomorrow's digital society. As part of a tech university that aims to shape society, individuals and connections, our faculty works together intensively with industrial partners and researchers in the Netherlands and abroad, and conducts extensive research for external commissioning parties and funders. Our research has a high profile both in the Netherlands and internationally. It has been accommodated in three multidisciplinary UT research institutes: Mesa+ Institute, TechMed Centre and Digital Society Institute.


