Senior Software Engineer KOERS

Kadaster

Kadaster
€3.673 — €5.314 / maand
11 maanden
HBO - WO
Nog 4 dagen

Dit ga je doen

Kadaster
Het kopen van een huis is een spannend moment. Een huis vinden, een hypotheek afsluiten, verhuizen, verbouwen… Zorgen te over. Eén van de zaken waar je je waarschijnlijk niet druk over maakt, en wat misschien niet eens in je opkomt is de vraag: Is het huis wat ik koop straks wel echt van mij? Zijn de verkopers wel echt de eigenaren die het huis mogen verkopen? Krijg ik geen rechtszaak over een oneigenlijke verkoop aan mijn broek? Het bezoek aan de notaris en de daaropvolgende inschrijving van de aktes bij het Kadaster voelt wellicht als een formaliteit, maar dit proces zorgt ervoor dat we in Nederland weten waar we aan toe zijn. Het Kadaster zorgt ervoor dat jij je geen zorgen hoeft te maken over je eigendom. Wij zorgen voor rechtszekerheid.

Het Kadaster heeft de wettelijke taak om van al het vastgoed (grond en gebouwen) in Nederland te registreren wie welke (eigendoms)rechten heeft. Een essentieel onderdeel van die registratie wordt gevormd door de Basisregistratie Kadaster (BRK).  Notarissen gebruiken de BRK om onderzoek te doen dat nodig is om akten op te kunnen stellen en te controleren of jouw aankoop zonder zorgen gepasseerd kan worden. Het is daarbij essentieel dat de informatie in de BRK klopt. Naast notarissen maken ook veel andere instanties om verschillende redenen gebruik van de BRK. Denk aan gemeentes, provincies, gerechtsdeurwaarders en het CBS.

Opdracht
Het team KOERS is op zoek naar een Software Engineer Kotlin/Java. De applicatie KOERS vormt het hart van de BRK. In simpele termen: KOERS houdt voor ieder perceel in Nederland bij van wie het is. Dagelijks worden duizenden aktes zoals hypotheken en overdrachten, door notarissen aangeboden en in KOERS verwerkt. Het domein kent zo'n 150 varianten, waarbij je naast overdrachten ook moet denken aan complexere aktes zoals herverkavelingen en bankenfusies. 

Als ontwikkelaar in het KOERS-team ben je niet alleen verantwoordelijk voor de doorontwikkeling van het systeem, zoals het project scheepsregistratie (ja, het Kadaster registreert ook schepen!), maar ook voor de operations. Een nullpointer exceptie bij de verwerking van een akte? Jij ziet dat in onze alerting, maakt een pull request aan om het te op te lossen en je releast dit na review via onze grondige testset in de continuous delivery pipeline direct naar productie. Akte verwerkt!

Koers bestaat uit zo'n 25 veelal Spring Boot microservices geschreven in Java en Kotlin. Data persistence (en messenging) wordt verzorgd door middel van event sourcing, domain driven design en CQRS, met behulp van het Axon Framework. Door gebeurtenissen (events) voor bijvoorbeeld een perceel sequentieel op te slaan weten we niet alleen wie nu eigenaar is, maar ook wie een jaar geleden eigenaar was. Daarnaast maken we sinds kort gebruik van Github Copilot om ons ontwikkelwerk te versnellen. 

De software engineer werkt aan de doorontwikkeling en het onderhoud van de backend services die van belang zijn voor de controle-, registratie- en informatieservices van KOERS. Het ontwerpen, realiseren en automatisch testen van de software is de kern van de functie.

Belangrijkste technieken, methoden en tools

  • Programmeertalen: Java (21+), Kotlin, Bash, Kubernetes, (Scala)
  • Web frameworks: Spring (incl. Spring Boot, Spring MVC, Spring Cloud Gateway), Javalin
  • Database en integratie: SQL (PostgreSQL), Database-integratie met Hibernate & JDBC, CQRS en event sourcing (Axon Framework)
  • Webservices: REST, SOAP, XML, JSON
  • DevOps en Continuous Delivery: Docker, Kubernetes, Azure, OpenShift, Helm, Tekton, ArgoCD, Continuous Integration / Delivery, SonarQube, Git, Trivy
  • Testing: Spring Test, JUnit, Mockito, Wiremock, Kluent, AssertJ
  • Messenging: Axon Server
  • Monitoring en logging: Grafana, Prometheus, Loki
  • Projectmanagement en samenwerking: Agile/Scrum, Jira, Git, Gitea, Artifactory, Slack, Microsoft Teams,
  • AI Tooling: Github Copilot

De belangrijkste taken en verantwoordelijkheden zijn:

  • Bouwen, testen en documenteren van software
  • Beheren van de ontwikkelde software, testen en documentatie
  • Samenwerken binnen het scrumteam (Agile / Scrum / DevOps)
  • Samenwerken met andere scrum teams.
  • Opzetten en wijzigen Spring Boot applicaties geschreven in Java en Kotlin
  • Opzetten en wijzigen van geautomatiseerde testen (unit testen, integratie- en systeemtesten)
  • Automatiseren van Deployments (Tekton / Docker / Kubernetes)
  • Intensieve samenwerking met andere teams
  • Uitvoerende rol binnen het scrum team samen met de andere developers (refinen, plannen, uitvoeren, evalueren)

Dit ben jij

  • De kandidaat beheerst de Nederlandse taal vloeiend, in woord en geschrift
  • HBO/WO Werk- en denkniveau
  • Minstens 5 jaar ervaring in een moderne Java / Spring Boot omgeving
  • Minimaal 3 jaar ervaring met Kotlin
  • Minstens 5 jaar ervaring met het schrijven van unittests en
    integratietesten
  • Minstens 5 jaar ervaring en kennis van RDBMS en SQL
  • Minstens 3 jaar ervaring met het opzetten, aanpassen en inrichten van
    containergebaseerde workloads in een microservice-architectuur met behulp
    van build, release en deploy pipelines
  • Minstens 3 jaar ervaring met het gebruiken van Kubernetes, Openshift of
    vergelijkbaar op de command line (Kubectl e.d.)
  • Minstens 2 jaar ervaring met Tekton, Gitlab CI, Github Actions of
    vergelijkbaar (Jenkins uitgesloten)
  • Minstens 3 jaar ervaring met Continuous Delivery
  • Minstens 3 jaar ervaring met operations van een productieomgeving (dwz:
    actief monitoren van productie en ingrijpen als er wat misgaat)
  • Minimaal 2 jaar ervaring met PostgresSQL
  • U omschrijft op basis van uw competenties en ervaringen uit het verleden zo
    goed mogelijk de manier waarop u binnen het team een bijdrage wilt leveren
    tijdens de verschillende agile meetings (daily stand-ups, retrospectives,
    sprint reviews, refinements)
  • U beschrijft wat uw ervaring in Continuous Delivery en Operations is
    geweest, en op welke manier uw persoonlijke bijdrage hieraan meerwaarde
    heeft gehad bij eerdere opdrachten
  • U beschrijft wat uw ervaring in Kubernetes / Openshift of vergelijkbaar is
    geweest, en op welke manier uw persoonlijke bijdrage hieraan meerwaarde
    heeft gehad bij eerdere opdrachten
  • U beschrijft wat uw ervaring is met event sourcing en CQRS: Axon Framework
    en basisregistraties

Merlijn de Groot

Recruitment Consultant

Merlijn de Groot

Het proces

Dit verhaal gaat over jou

01

De zoektocht – waar begin je?

Elke maand ontvangen we honderden vacatures. Die publiceren we op onze website, maar we blijven niet achteroverleunen. Ons team gaat actief op zoek naar de juiste match. Misschien vind jij ons, of wij jou – hoe dan ook: we maken snel contact.

02

De kennismaking – een goed gesprek, geen kruisverhoor

Jij ziet een interessante opdracht of wij denken dat er een goed bij je past. We bellen om je beter te leren kennen en de opdracht door te nemen. Wat vind jij belangrijk? Wat zijn je ambities? We houden het persoonlijk én to the point. Zo verkennen we samen wat de juiste match voor je is en wat daarmee ook het beste voor de klant is.

03

Afspraken maken – helder en zonder kleine lettertjes

Past de opdracht bij jouw expertise? Top. We bespreken de voorwaarden, je gewenste salaris en hoe de opdracht eruitziet. Omdat het om overheidsvacatures gaat, kunnen de eisen complex zijn en het proces tijdrovend – maar daar helpen wij je soepel doorheen.

04

Introductie – wij regelen de papierwinkel

Je levert een bijgewerkt cv, motivatie en eventuele referenties aan. Wij stellen de introductie samen, volledig afgestemd op de wensen van de opdrachtgever. Alles wat we bespreken komt daarin terug – eerlijk, transparant en geen verrassingen.

05

Even geduld – maar we houden je op de hoogte

Overheidsprocessen kunnen soms traag zijn. Wij geven je vooraf een realistische tijdlijn en houden je tussendoor op de hoogte. Geen radiostilte, maar duidelijke updates.

06

Op gesprek – goed voorbereid op pad

Word je uitgenodigd? Mooi! We plannen samen het gesprek en bereiden het grondig voor. We geven je tips & tricks en duiken in de inhoud van de opdracht. Het doel: jouw kansen maximaliseren.

07

Go of No-Go – samen evalueren

Na het gesprek evalueren we hoe het ging. Wil jij door en ziet de opdrachtgever het ook zitten? Dan koppelen we je aan één van onze uitzendpartners. Zij regelen het uitzendcontract. Is het toch geen match? Dan halen we feedback op en zoeken we verder.

08

Aan de slag – alles geregeld, jij kunt starten

Bij een succesvolle bemiddeling leggen we alle afspraken vast in een overeenkomst. Je uitzendpartner regelt het contract, de administratie en zorgt ervoor dat je netjes en op tijd betaald wordt. Jij hoeft alleen maar te focussen op je werk (en een taart sturen mag altijd 😉).

09

Service – ook ná de start zijn we er voor je

Zolang je aan de opdracht werkt, blijven wij je aanspreekpunt. Ook kan je regelmatig uitnodigingen van ons verwachten voor kleine events en borrels bij ons op kantoor. Heb je vragen over je opdracht, verlenging of indexaties? Eén belletje en we helpen je verder. Is de opdracht afgerond? Dan zoeken we met plezier naar een volgende uitdaging voor je.

Iets voor jou?

Laat het ons weten!

Reageer op deze vacature via TenMonks en Merlijn neemt contact met je op om de match te verkennen.

Iets voor jou?

Reageer dan vandaag nog!

Feedback