logo

Bekijk alle vacatures

Backend Developer

Den Haag, Zuid-Holland
Voor onze onze opdrachtgever ICTU zijn wij op zoek naar een DevOps Engineer
 
Start z.s.m.
Einddatum 30-09-2028
Optie op ve
 
rlenging
Nee
Uren per week 36-40
Locatie Den Haag + Remote
Bijzonderheden Deze aanvraag is geschikte voor ZZP'ers. 3 CV kan ik aanbieden echter 1fte wordt er gezocht.
Tarief 100 Euro p/u ex. BTW all-in
Deadline 15-10-2025 om 09.00

Opdrachtomschrijving
 
1. Wat is de reden om een professional in te huren?
 

De specifieke kennis die voor dit programma benodigd is (zie blok specifieke kennis) is niet in dienstverband aanwezig binnen ICTU.
2. Voert de professional het geheel van het takenpakket van de interne medewerker uit?

Nee, de werkzaamheden behelzen geen werkzaamheden die tot de kernwerkzaamheden van ICTU behoren. De werkzaamheden behoren op basis van huidige inzichten ook niet tot een functie die in de toekomst ingevuld gaat worden door een eigen medewerker van ICTU. 
 
3. Gaat personeel van de opdrachtgever de professional werkinhoudelijk aansturen?

Nee, professional is volledig zelfstandig in het bepalen van zijn werktijden en voert in onderlinge
afstemming overleg over de tussentijdse en op te leveren resultaten. De professional realiseert
volgens eigen inzicht/ volgens afgesproken kwaliteitsnormen de gedefinieerde (deel)resultaten). Er wordt geen werkinhoudelijke aansturing of leiding en gezag op de professional uitgeoefend.
 
4. Gaat Opdrachtgever de professional (periodiek) inhoudelijk beoordelen?

Nee, er worden geen functionerings- of beoordelingsgesprekken met de professional gevoerd.
Er vindt periodiek overleg plaats op het behalen van de (deel)resultaten en een eindoverleg bij de oplevering van het eindresultaat.
5.Bepaalt de professional zelf hoe, wanneer en waar de opdracht wordt uitgevoerd?

Ja, de Professional deelt zijn werkzaamheden zelfstandig in. Hij verricht deze naar eigen inzicht.
ICTU kan wel aanwijzingen en instructies geven omtrent het resultaat en de doorlooptijd van de
werkzaamheden.
 
6. Is de professional vrij om zichzelf in de uitvoer van de opdracht te laten vervangen?

Ja, mits over dezelfde kennis en kunde beschikt en na overleg en goedkeuring ICTU.
7.Zijn er binnen de afdeling ook interne medewerkers die dezelfde werkzaamheden uitvoeren?
 

Nee, ICTU heeft geen medewerkers in dienst die dezelfde werkzaamheden uitvoeren en geen
vacatures voor dezelfde werkzaamheden open staan.
8. Wie voorziet de middelen en materialen die nodig zijn voor de opdracht?

De professional voorziet zich van eigen middelen en materialen.
 
Omschrijf de context van het project/programma waarin de activiteiten plaatsvinden, wanneer en op grond waarvan is het project/programma afgerond en welke rol heeft de professional binnen het project/programma? 
Beschrijving project/programma: 

Programma ENIAMS
De activiteiten vinden plaats binnen het Programma ENIAMS. Doel van het programma betreft het ontwikkelen van voorzieningen en ondersteunen van Pilots ten behoeve van implementatie van Europese (o.a. eIDAS 2.0, SDG, en DTC verordening, Asiel- en Migratiepact) en Nederlandse (Wdo, 1e en 2de tranche) Identity en Access Management (IAM) Stelsels.   

De opdrachtgever heeft de opgave om op 12 juni 2026 het Europese Asiel- en Migratiepact geïmplementeerd te hebben. Dit vergt niet alleen een (her)inrichting van organisatie en processen, maar ook de IV-ondersteuning die daarbij hoort.
ICTU heeft als opdracht om voor de opdrachtgever een negental onderzoeksregisters te realiseren.

Omschrijving einde project/programma: 

Programma ENIAMS
De implementatie van betreffende Europese verordeningen en 1e en 2e tranche van Wet Digitale
Overheid vergt naar verwachting meerdere jaren, de looptijd van het project duurt daarom tot en
met 2030. Of eindigt zoveel eerder als voorzieningen zijn opgeleverd en overgedragen aan de
toekomstige beheerorganisatie en financiële en inhoudelijke decharge door klant heeft
plaatsgevonden.

Welke rol heeft de professional binnen het project/programma: 
 
De professional is als back-end ontwikkelaar verantwoordelijk voor de ontwikkeling van de back-end software componenten ten behoeve van geleverde functionaliteit voor het migratiepact.
Welke opdracht gaat de professional uitvoeren en welke activiteiten horen daarbij? 
 
 
De Java Backend Engineer werkt aan de Spring Boot backends van de registers.
Deze backends:
  • Laden en valideren onderzoeksdefinities.
  • Handhaven de sessielevenscyclus (start, opslaan, afronden, auditlog).
  • Implementeren CQRS (CommandService, QueryService) en event sourcing.
  • Publiceren gebeurtenissen.
  • Borgen herleidbaarheid, auditing en compliance conform BIO/AVG.


De activiteiten die horen bij het realiseren van de opdracht zijn:
  • Opleveren van code die voldoet aan de gestelde specificaties en acceptatiecriteria; 
  • Code reviewen van andere ontwikkelaars binnen het team; 
  • Bouwen van unittesten; 
  • Het geven van demo's aan de stakeholders;  
Welke concrete resultaten dient de professional te behalen? Resultaten dienen concreet en meetbaar te zijn. 
 
Welke deelresultaten zal de professional dienen te behalen gedurende de opdracht: 

Gerealiseerde software voor t.b.v. de onderzoeksregisters, waarbij de software voldoet aan:
  • voor opdracht geldende ISO-25010 standaard, Nederlandse Praktijkrichtlijn NPR-5326 en de ICTU kwaliteitsaanpak Softwareontwikkeling (welke is afgeleid van ISO-25010);
  • acceptatiecriteria in de user story;
  • de functionele en niet-functionele eisen, voor zover deze aan de applicatie gesteld zijn;
  • en past binnen architectuur van de klant.

Het resultaat van de inzet is het tijdig, zelfstandig en conform Agile/Scrum werkwijze autonoom opleveren van software in afstemming met de andere ontwikkelaars en testers. Hiervoor levert de professional software op ten behoeve van releases van de klant in gemiddeld 20 - 25 sprints per jaar gedurende de looptijd van de opdracht. De product owner van de klant bepaalt de ontwikkelagenda en releaseplanning en de prioritering binnen deze releaseplanning. 
 
Welke eindresultaten zal de professional aan het einde van de opdracht dienen op te leveren.  
 
  • Werkende aan beheerorganisatie overgedragen softwarecomponenten op basis van acceptatiecriteria van klanten beheerorganisatie
  • Geborgde kennis in de vorm van documentatie (inclusief specificaties) en in broncode van het eindproduct. Warme overdracht van kennis aan de (structurele) beheerorganisatie: bij afronding van de opdracht organiseert de professional een kennisoverdrachtsessie bij de beheerorganisatie.
 
Wanneer is de opdracht afgerond en beëindigd: 

De opdracht is afgerond wanneer er een inhoudelijke decharge heeft plaatsgevonden op het programma en de werkende softwarecomponenten zijn opgeleverd en geaccepteerd door de klant.  
Hoe wat en wanneer zal het werk/de resultaten worden beoordeeld? 
Detailleer de criteria en momenten voor feedback en beoordeling. Voorbeeld: maandelijkse voortgangsrapporten en een eindbeoordeling bij projectafsluiting. 
 
Tussentijdse beoordeling: 
  • Gerealiseerde user stories worden per sprint door product owner van klant geaccepteerd op basis van Definition of Done (DoD);
  • De software wordt periodiek door opdrachtgever getoetst op de bij het resultaat beschreven eisen. 
 
Eindbeoordeling:   
  • Aantoonbaar werkende software met bijbehorende documentatie per softwarevoorziening die voldoet aan criteria van de ICTU kwaliteitsaanpak Softwareontwikkeling, op basis waarvan decharge door klant kan plaatsvinden. 
Wat is de kans dat de verwachte duur wordt overschreden, c.q. welke onzekerheden er zijn t.a.v. de verwachte duur? 
 
De looptijd van het programma ENIAMS is afhankelijk van besluitvorming bij klant en voortgang bij beheerorganisatie en andere ketenpartijen. Op basis van de huidige inzichten wordt de kans klein geacht dat de duur wordt overschreden.
Over welke specifieke kennis beschikt de professional, waarover het eigen personeel van de Opdrachtgever niet beschikt en waar een eventuele vervanger ook over zou moeten beschikken? 
 
De professional beschikt over specifieke kennis en ervaring die essentieel zijn voor de succesvolle uitvoering van deze opdracht en die niet in voldoende mate aanwezig is bij het eigen personeel van de opdrachtgever. Deze kennis omvat:
 
  • Java 21 en Spring Boot 3.5.x (REST API’s, controllers, services).
  • CQRS en Event Sourcing (bij voorkeur met Axon Framework 4.x).
  • JSON Schema 2020-12 (definitie, validatie, versiebeheer).
  • REST API’s volgens OpenAPI 3.1 en integratie met externe systemen.
  • Datamodellering en opslag in Postgres (tabellen, views, JSONB).
  • Unit- en integratietesten (JUnit, Spring Test, Testcontainers).
  • Ontwikkelen in een Linux/Kubernetes omgeving (Docker, containers).
  • CI/CD met GitLab, kwaliteitsmetingen (SonarQube, OWASP Dependency Track).
 
Gewenste profiel
We zoeken een ervaren Java Backend Engineer die gewend is te werken in een multidisciplinair team (DevOps, test, frontend). Je hebt een sterke technische basis in Java + Spring Boot, affiniteit met schema-gedreven werken (JSON Schema) en begrijpt hoe CQRS en event sourcing in de praktijk worden toegepast. Je bent communicatief vaardig, kunt complexe validatieregels goed modelleren, en draagt actief bij aan refinement en sprintplanning.
Een pluspunt is ervaring of affiniteit met de frontend-kant (Vue.js, JSON Forms), zodat je bij kunt dragen aan het doorgronden van de end-to-end keten.
Eisen
De kandidaat heeft (tenminste) HBO werk- en denkniveau en ervaring met:
 
  • Java 21 en Spring Boot 3.5.x (REST API’s, controllers, services).
  • CQRS en Event Sourcing (bij voorkeur met Axon Framework 4.x).
  • JSON Schema 2020-12 (definitie, validatie, versiebeheer).
  • REST API’s volgens OpenAPI 3.1 en integratie met externe systemen.
  • Datamodellering en opslag in Postgres (tabellen, views, JSONB).
  • Unit- en integratietesten (JUnit, Spring Test, Testcontainers).
  • Ontwikkelen in een Linux/Kubernetes omgeving (Docker, containers).
  • CI/CD met GitLab, kwaliteitsmetingen (SonarQube, OWASP Dependency Track).
  • Nederlands in woord en geschrift.
Wensen
Nr Omschrijving Gewicht Beoordeling
1. Ervaring met de frontend-kant (Vue.js, JSON Forms) 35% ≥ 5 jaar = 10 punten
< 5 jaar = 8 punten
< 4 jaar = 6 punten
< 3 jaar = 4 punten
< 2 jaar = 2 punten
< 1 jaar = 0 punten
2. Aantoonbare ervaring met schema-gedreven applicaties (JSON Schema, contract-first API’s, DSL’s) 40% ≥ 5 jaar = 10 punten
≥ 4 jaar < 5 jaar = 8 punten
≥ 3 jaar < 4 jaar = 6 punten
≥ 2 jaar < 3 jaar = 4 punten
≥ 1 jaar < 2 jaar = 2 punten
> 0 jaar < 1 jaar = 0 punten
 
Prijs
Gewicht van prijs bij beoordeling*  25%

Graag ontvang ik het CV van mogelijk passende kandidaten. Hou bij aanbieden rekening met de onderstaande punten (zonder deze info kan het CV helaas niet mee worden genomen in de selectie!):

1.Nederlandstalig CV (Word doc.) van max 5 a 6 pagina's. Indien een Engelstalig CV nodig is dan staat dit in de aanvraag bij de eisen vermeld.

2.Motivatie gericht op de vacature. Dit kan kort d.m.v. ja de ervaring heb ik opgedaan / de werkzaamheden heb ik gedaan in de perioden x  bij de organisaties y. Dus puntsgewijs per eis, wens en werkzaamheden (graag deze ervaring & werkzaamheden in het CV vermelden in de betreffende perioden).

Naast de puntsgewijze motivatie van de wensen ook het aantal punten er bij vermelden; zie kolom beoordeling, dit geldt alleen voor de ICTU aanvragen!

3.Volledige naam + de officiële voorletters zoals in het paspoort staat
4.Woonplaats
5.Geboortedatum
6.Vakantieplannen in de komende 3 maanden

Met vriendelijke groet,

Michael Blaauw
FlexValue
+31613778889
michael
@flexvalue.nl
www.flexvalue.nl

 

Deel deze vacature

Powered by