1. Vacancies
  2. Scientific programmer of libraries on testing and learning in Haskell and Python

Scientific programmer of libraries on testing and learning in Haskell and Python

Are you looking for a new adventure as a Scientific programmer? Apply now!

Apply now
  • Hi! Are you my
    new colleague?
    Eline Meijerink
  • Hi! Are you my
    new colleague?
    Britt Büter
  • Hi! Are you my
    new colleague?
    Ying Wang
  • Hi! Are you my
    new colleague?
    Stefano Stramigioli
  • Hi! Are you my
    new colleague?
    Clara Stegehuis
  • Hi! Are you my
    new colleague?
    Jeroen Blok
  • Hi! Are you my
    new colleague?
    Kuan Chen

Key takeaways

  • Hours
    16 - 24 hr.
  • Salary indication
    Salary gross/monthly
    based on full-time
    € 3,546 - € 5,538
  • Deadline
    31 May 2026

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.

Your profile

  • You have a background at a master's level related to computer science.
  • You have experience with programming in Haskell or any other functional programming language.
  • You have experience or are willing to learn programming in Python.
  • You are familiar with general software engineering practices and techniques, such as Git, testing, code reviews and Docker.
  • You have an interest in formal methods such as model-based testing and model learning, and are willing to learn on the job.
  • You have a good team spirit and like to work with researchers in an internationally oriented environment.
  • You are proficient in English.

Our offer

  • The scientific programmer position is a temporary position with a budget for 0.5fte during 2 years. The number of working days per week is determined in consultation with you. Preferably, you work 2 or 3 days per week. The budget is fixed, so more working days per week result in a shorter duration of your contract.
  • The University offers a dynamic ecosystem with enthusiastic colleagues.
  • You will be a member of the Formal Methods and Tools research group, a strong research group with an open and welcoming atmosphere.
  • Your salary and associated conditions are in accordance with the collective labour agreement for Dutch universities (CAO-NU).
  • You will receive a gross monthly salary ranging from €3546,- to €5,538,- for a formal workweek of 38 hours. Based on 0.5 FTE, this will be around €1.866,- to €2.915,- gross per month.
  • There are excellent benefits including a holiday allowance of 8% of the gross annual salary, an end-of-year bonus of 8.3%, and a solid pension scheme.
  • The flexibility to work (partially) from home.
  • A minimum of 232 leave hours in case of full-time employment based on a formal workweek of 38 hours. A full-time employment in practice means 40 hours a week, therefore resulting in 96 extra leave hours on an annual basis. Based on 0.5 FTE, this will be around 147 leave hours.
  • Free access to sports facilities on campus.
  • A family-friendly institution that offers parental leave (both paid and unpaid).
  • We encourage a high degree of responsibility and independence, while collaborating with close colleagues, researchers and other staff.

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:

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.

Share this vacancy

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.

Want to know more?

Bos, P. van den (Petra)

Bos, P. van den (Petra)
Assistant Professor

Bos, P. van den (Petra)
Assistant Professor

Do you have questions about this vacancy? Then you can contact Petra for all substantive questions about this position and the application procedure. For general questions about working for the UT, please refer to the chatbot.

How to apply

Step 1

Apply.
When you see a vacancy that appeals to you, you can apply online. We ask you to upload a CV and motivation letter and/or list of publications. You will receive a confirmation of receipt by e-mail.

Apply now

Step 2

Selection.
The selection committee will review your application and you will receive a response within 2 weeks after the vacancy has been closed.

Step 3

1st interview.
The 1st (online or in person) meeting serves as an introduction where we introduce ourselves to you and you to us. You may be asked to give a short presentation. This will be further explained in the invitation.

Step 4

2nd interview.
In the second interview, we will further discuss the job content, your skills and your talents.

Step 5

The offer.
If the conversations are positive, you will be made a suitable offer. If applicable, we will sign you up for screening.

Your Colleagues

About the faculty EEMCS

Curious about what the faculty of Electrical Engineering, Mathematics and Computer Science (EEMCS) stands for? Check out the EEMCS website for more information.

A job that matters

Create new opportunities for yourself, your colleagues and our society. Scientist or teacher, administrator or facilitator, thinker or doer, energetic leader or silent support – your work at the University of Twente matters. And you too!

  • Our mission
    Human Touch

    At the UT it’s all about people, in line with our university’s High Tech Human Touch philosophy. In everything we do, the well-being and future of our students and staff are paramount. From research and teaching to personnel management, campus management and the use of new technologies.

  • Our mission
    We are a university of technology

    Our university is a public institution that serves society. We are accountable to society for the ways in which we use our academic freedom. We are responsible for ensuring that the power of science and technology is harnessed to achieve the best possible impact in a changing world. We cherish our rich tradition of combining technical and social sciences in our five profiling themes: Improving healthcare by personalized technologies; Creating intelligent manufacturing systems; Shaping our world with smart materials; Engineering our digital society; and Engineering for a resilient world.

  • Our mission
    We help to strengthen society

    We help society meet the challenges of today and tomorrow. But we are also transparent about what science and technology can and cannot do in finding sustainable solutions. And help translate these solutions into everyday life.

  • Our mission
    We are sustainable

    We want our communities to flourish and show resilience, so we seize opportunities for innovation. We are knowledgeable and have an eye for what society needs. Our students and staff receive all the guidance they need in their quest for ecological, social and economic sustainability.
    “The University of Twente is all about people. Our sustainable technologies help to strengthen society.”

Browse all jobs