Jobs in the Netherlands, in English.

Java Developer Public Transport Payments

Hybrid in Utrecht·Full-time·Added today (last checked 13 Nov)

Our summary

Salary
€3,634 a month
Work mode
Hybrid, Utrecht
Contract
Full-time
Languages
Dutch
Experience
3+ years

Skills

Nice to have

This job advert was originally written in Dutch.

Requirements

What we're looking for

For this position, we are primarily looking for a Java Developer who not only enjoys building new software but also wants to take responsibility for its operation in production.

This is what we find important:

  • You have HBO or WO level of work and thinking.
  • You have at least 3 years of relevant experience as a Java Developer.
  • You have demonstrable experience with Java 21+ and Spring Boot.
  • You have experience with setting up and implementing automated tests.
  • You have experience with production problems, incident analysis, and root cause analysis.
  • You can explain how you arrived at the root cause after an incident, how you restored the service, and what measures you took to prevent repetition.
  • You understand that changes and incidents can have an impact on users, other teams, and chain partners.
  • You have at least Dutch at B2 level. This is important because you discuss technical choices, incidents, and agreements in Dutch with colleagues and stakeholders.
  • You can explain complex technical topics clearly.
  • You enjoy collaborating with other development teams, platform teams, service management, and external parties.
  • You work with a focus on quality and pay attention to testing, security, manageability, and continuity.

Nice to have

Familiarity with Microsoft Azure and Azure DevOps is valuable for this position.

We work with, among others:

  • Azure Cosmos DB;
  • Azure Web Apps;
  • Azure Functions;
  • Azure Service Bus;
  • Azure Event Hubs;
  • Azure DevOps.

You do not need to fully master every component yet. We find it especially important that you understand cloud principles and can explain how, for example, hosting, messaging, data storage, and deployment work together within a solution.

Do you also have experience with one or more of the following techniques? Then that is a plus:

  • Docker;
  • Kubernetes;
  • Bicep;
  • PowerShell;
  • Python;
  • BPMN;
  • AZ 204 certification;
  • applications of AI within software development or management.

This knowledge is not a hard requirement. We find experience with Java, Spring Boot, automated testing, and production management more important for this position.

Pay & benefits

What you'll get

Working at NS means that you can make *the* difference in the dynamic world of sustainable mobility. You help keep the Netherlands accessible, for everyone. At NS, you get a lot of freedom. The possibilities to develop yourself are great. We promise you that no day is the same. And as one of the most beautiful employers in the Netherlands, we have even more to offer. For this position, including:

  • Scale 60 = € 3,743 and € 6,491 gross per month (scale 60) (based on 36 hours - scaling based on work experience)
  • The possibility of working from home and flexible working hours (in consultation)

  • A 36-hour work week

  • 3% end-of-year bonus, 8% holiday allowance, and an excellent pension scheme

  • Upon good performance, you will receive a permanent contract after one year

  • Your train travel in 2nd class is free; travel in 1st class is possible with a small personal contribution

  • Your family travels for free during off-peak hours

  • 144 hours of statutory leave (based on full-time employment) plus extra leave depending on age (minimum one week)

  • The possibility to exchange 3 Christian holidays for 3 non-Christian holidays

  • Discount on European train travel once you have worked at NS for 1 year

  • A choice plan including, among others, a bicycle plan, extra pension accrual, or extra vacation days

Want to know more? View our employment conditions and collective labor agreement (CAO).

The role

  • Using Java 21+, Spring Boot and Microsoft Azure, you will develop software for ordering, delivering, and modifying the public transport pass.
  • You are responsible for the entire DevOps cycle: from new functionalities and automated testing to monitoring, incident analysis, and production management.
  • You work in a self-organizing team on an important chain within public transport payments and coordinate extensively with other development teams, platform teams, and external chain partners.

"With your Java knowledge, you don't just build new functionalities. Together with your team, you also ensure that public transport payments continue to work reliably every day."

What you'll do

As a Java Developer, you work according to DevOps principles. This means that development and management go hand in hand. Together with your team, you are responsible for the entire software lifecycle.

You develop and maintain Java functionalities and Azure components for the chain surrounding the ordering, delivery, and modification of the public transport pass.

This means that you:

  • develop new functionalities using, among others, Java 21+ and Spring Boot;
  • set up and implement automated tests;
  • monitor applications and Azure components;
  • analyze and resolve production problems and incidents;
  • perform root cause analyses to determine why problems arise;
  • take measures to prevent incidents from recurring;
  • improve logging, monitoring, dashboards, and alerts;
  • further automate deployments, tests, and management tasks;
  • perform technical maintenance, upgrades, and lifecycle management;
  • monitor availability, performance, data integrity, and ICT security;
  • collaborate with other development teams, platform teams, service management, and external chain partners;
  • explain technical topics clearly and make agreements regarding dependencies, interfaces, and responsibilities.

In doing so, you look beyond your own application. In the event of a change or incident, you want to understand what happens further down the chain. What does a change mean for another team? What does a chain partner notice? And what consequences can a malfunction have for travelers?

Therefore, in the event of a production problem, you do not just look for a quick solution. You use logs and measurements, for example, to find the cause, restore the service, and then look at how to prevent repetition.

Together with your team, you are constantly looking for the right balance between new functionalities, technical quality, maintenance, and operational stability.

This type of developer feels at home here

Of course, you do not need to be able to do everything already. However, we are looking for someone who takes responsibility for software quality, remains curious, and enjoys collaborating.

You can analyze problems systematically and distinguish between a symptom and the actual cause. In the event of a malfunction, you look at logs and measurements before drawing conclusions.

You also dare to adjust or postpone a release if quality, security, or manageability requires it. You can explain why you are making that choice.

Because your software is part of a larger chain, you actively seek collaboration. You make dependencies clear, involve the right colleagues in a timely manner, and can explain technical choices understandably to people with different expertise.

You find new technology interesting. At the same time, in a production environment: we innovate deliberately. You experiment, learn from results, and ensure that production stability is not unnecessarily jeopardized.

Hiring process

Apply directly via the application button. Within a few minutes, you will receive an automatic application confirmation, and we will respond to your application within 2 weeks.

You can address your application to Jeroen van den Berg, Corporate Recruiter IT.

Do you have any questions about the application process? Then mail our front office at recruitment@ns.nl.

Would you prefer telephone contact? Then call our front office at 088-6713666.

About Nederlandse Spoorwegen

Industry
Railways

In their own words

About the company & team

You will work from Utrecht within ComIT Kern. From this department, we work on future-proof, accessible, and reliable mobility services for NS.

We focus on, among other things, good facilities at stations, an intuitive customer experience, and clear travel and price information. We also guide the transition to the public transport pass. Traveler data and operational data help us to continuously improve our services.

The solutions developed for this run in the Microsoft Azure cloud.

Team Mena consists of seven professionals, including a Scrum Master and Product Owner. It is a self-organizing, agile, and multidisciplinary DevOps team within ComIT Kern.

The team develops and manages Java software and Azure components for the ordering, delivery, and modification of the public transport pass. Additionally, Team Mena ensures that various systems from NS and external partners can communicate well with each other.

Mena also plays a facilitating role. The team connects systems, development teams, platform teams, service management, and external chain partners. This requires clear communication and good agreements in addition to technical knowledge.

And the work does not stop as soon as new software goes live. The team is also responsible for the reliability and continuity of its own products in production.

Therefore, you will monitor the service together, handle incidents, and perform maintenance. You also work continuously on better performance, security, logging, monitoring, and manageability.

We work openly and reliably and actively seek collaboration with one another.

You work 36 hours per week. Working from home and flexible working hours are possible in consultation. Tuesday is the fixed office day in Utrecht.

Working at NS means that you can make the difference in the world of sustainable mobility. You help keep the Netherlands accessible, for everyone. At NS, you get a lot of freedom. We promise you that no day is the same. The core values of NS are open and reliable. We aim for results and want to move forward.

Additional information

  • A background check, including a VOG (Certificate of Good Conduct), is part of the application procedure. This also includes signing an integrity statement and a non-disclosure agreement.

  • We believe it is important that everyone who works with us feels at home. This is reflected in our hiring policy. Read more here.

  • With this vacancy, we are recruiting our new colleague ourselves. This is NOT a call for acquisition. The position cannot be filled on an interim basis. Please see our hiring page for that.

All open roles at Nederlandse Spoorwegen
WhatsApp