Senior Java developer – Nederlandse Spoorwegen (NS) - Verloning opdracht in Utrecht

Nederlandse Spoorwegen (NS)
Direct solliciteren Goed nieuws! De opdracht is nog geopend

Opdrachtomschrijving

De Donna Service Organisatie (DSO) is verantwoordelijk voor verdere ontwikkeling en beheer van het systeem Donna. De DSO omvat alle disciplines van systeemontwikkeling, technisch beheer en gebruikersondersteuning. Bij elkaar zijn het ongeveer 140 medewerkers. De DSO onderscheidt zich door een open en warme sfeer, waar we. elkaar uitdagen en voor elkaar klaar staan. Je krijgt de ruimte om met jouw unieke bijdrage echt het verschil te maken.

Wij zijn op zoek naar een communicatieve backend Java developer, die snel de weg weet te vinden in een zeer grote en complexe applicatie.
De applicatie Donna is een bedrijf kritische applicatie waarmee de dienstregeling voor alle treinen van alle vervoerders gemaakt wordt. Zonder Donna rijden er dus geen treinen. Daarnaast maakt Donna het ProRail mogelijk om als onafhankelijke scheidsrechter op te treden en de beperkte capaciteit van het spoor eerlijk en transparant te verdelen.

Donna is een groot complex geïntegreerd systeem (ter illustratie meer dan 1.600.000 regels code) wat in productie staat en beheerd wordt. Daarnaast werken teams aan de modernisering van microservices. Naast het faciliteren van het genereren van gedeeltes van de planning, gaan de microservices op termijn ook de grote monolithische applicatie vervangen waar honderden planners via grafische interfaces dagelijks de dienstregelingen in maken. We werken voornamelijk aan backend services, die zich in het hart van het landschap bevinden. Aan de monolithische applicatie voert het team beperkt beheertaken uit.

Binnen het Scrumteam ben je betrokken bij iedere stap van het proces. Samen met het team maak je designs voor gedistribueerde systemen en implementeer je de oplossing. Daarbij werk je aan een volledig geautomatiseerd CI/CD proces: van het bouwen en testen van de artifacts tot het deployen op productie en het monitoren van de services. Samen met je team ben je in sprints van 2 weken verantwoordelijk voor het op tijd en met goede kwaliteit opleveren van afgesproken functionaliteit. Dit alles in samenwerking met je stakeholders. Hierbij vragen we je ook zelf ideeën aan te dragen om te verbeteren en veranderingen mede vorm te geven. Experimenteren wordt aangemoedigd. Als team refinen we samen de technische oplossingen en daarvoor doen we technische POC’s. Daarnaast is er ieder kwartaal een Innovatie & Planning sprint waar geen functioneel werk wordt ingepland zodat je aan innovaties kunt werken.


Eisen

  • Je hebt minimaal 5 jaar ervaring als developer.
  • Je hebt ervaring met Java 11 of nieuwer.
  • Je hebt ervaring met relationele databases en query optimalisatie.
  • Je hebt ervaring met event driven architecture en concepten zoals eventual consistency.
  • Je hebt ervaring met DevOps (mindset en tooling).
  • Je hebt ervaring met Spring Boot.
  • Je hebt ervaring met Openshift (Kubernetes).
  • Je hebt ervaring met Jenkins / CI tooling.

Wensen

  • Ervaring met Kotlin vinden wij een pre.
  • Ervaring met functioneel programmeren vinden wij een pre.
  • Ervaring met Gradle vinden wij een pre.
  • Ervaring met ActiveMQ vinden wij een pre.
  • Ervaring met tools als Grafana en Prometheus vinden wij een pre.
  • Ervaring met Domain Driven Design en Hexagonal Architecture vinden wij een pre.

Competenties

  • Teamspeler; je kan zowel taken zelfstandig uitvoeren, als samen werken aan een oplossingsrichting;
  • Je bent in staat om user stories en non-functional requirements te vertalen naar technische taken en implementaties;
  • Je bent analytisch sterk, hebt een goed abstractievermogen en kunt complexe dingen helder uitleggen;
  • Je bent leergierig en vindt het leuk om nieuwe technieken/ideeën naar het team te brengen;
  • Je beschikt over goede communicatievaardigheden, je bent aanwezig in het team, aanspreekbaar en helpend;
  • Je staat voor je code en hebt kwaliteit hoog in het vaandel staan;
  • Je beheerst de Nederlandse taal goed want je gaat daarin programmeren

Overige informatie

Op NS kun je rekenen Werken bij NS betekent dat jij hét verschil kunt maken in de wereld van duurzame mobiliteit. Je maakt deel uit van een organisatie die midden in de maatschappij staat en Nederland in beweging brengt. Van deur tot deur. De kernwaarden van NS zijn proactief, verbindend, vakkundig en gastvrij.

Opdrachtvereisten

De opdrachtgever heeft eisen en wensen doorgegeven waaraan een kandidaat moet voldoen. Hieronder vind je een overzicht van de belangrijkste punten, zodat je een goed beeld krijgt van de opdracht.

Eisen opdrachtgever

  • Je hebt minimaal 5 jaar ervaring als developer.
  • Je hebt ervaring met Java 11 of nieuwer.
  • Je hebt ervaring met relationele databases en query optimalisatie.
  • Je hebt ervaring met event driven architecture en concepten zoals eventual consistency.
  • Je hebt ervaring met DevOps (mindset en tooling).
  • Je hebt ervaring met Spring Boot.
  • Je hebt ervaring met Openshift (Kubernetes).
  • Je hebt ervaring met Jenkins / CI tooling.

Wensen opdrachtgever

  • Ervaring met Kotlin vinden wij een pre.
  • Ervaring met functioneel programmeren vinden wij een pre.
  • Ervaring met Gradle vinden wij een pre.
  • Ervaring met ActiveMQ vinden wij een pre.
  • Ervaring met tools als Grafana en Prometheus vinden wij een pre.
  • Ervaring met Domain Driven Design en Hexagonal Architecture vinden wij een pre.
  • Teamspeler; je kan zowel taken zelfstandig uitvoeren, als samen werken aan een oplossingsrichting;
  • Je bent in staat om user stories en non-functional requirements te vertalen naar technische taken en implementaties;
  • Je bent analytisch sterk, hebt een goed abstractievermogen en kunt complexe dingen helder uitleggen;
  • Je bent leergierig en vindt het leuk om nieuwe technieken/ideeën naar het team te brengen;
  • Je beschikt over goede communicatievaardigheden, je bent aanwezig in het team, aanspreekbaar en helpend;
  • Je staat voor je code en hebt kwaliteit hoog in het vaandel staan;
  • Je beheerst de Nederlandse taal goed want je gaat daarin programmeren

Sollicitatie procedure

Vind opdracht
Solliciteren
Reactie
Start opdracht
  1. Vind een opdracht die bij je past

    Bekijk het actuele overzicht van beschikbare opdrachten en ontdek wat aansluit bij jouw profiel en ambities. Heb je iets interessants gevonden? Klik dan door voor meer informatie en details over de opdracht.

  2. Solliciteer direct

    Klaar om te solliciteren? Met één klik stuur je jouw profiel naar de opdrachtgever of partner.

  3. Reactie van de opdrachtgever

    Na je sollicitatie neemt de opdrachtgever of partner contact met je op. Je hoort of je wordt uitgenodigd voor een gesprek, of dat je eventueel in aanmerking komt voor een andere opdracht.

  4. Start met je opdracht

    Ben je geselecteerd? Gefeliciteerd! Je kunt snel aan de slag en samen met de opdrachtgever duidelijke afspraken maken over de startdatum, voorwaarden en verwachtingen.

Direct solliciteren Goed nieuws! De opdracht is nog geopend