Functieomschrijving

Voor Kadaster zoeken wij een Senior Software Engineer KOERS. Je werkt als Software Engineer Kotlin/Java aan het hart van de Basisregistratie Kadaster (BRK), de applicatie KOERS. Met KOERS wordt voor ieder perceel in Nederland bijgehouden van wie het is en worden dagelijks duizenden aktes, zoals hypotheken en overdrachten, die door notarissen worden aangeleverd, verwerkt. Je krijgt te maken met circa 150 verschillende akte-varianten, waaronder complexere gevallen zoals herverkavelingen en bankenfusies.

In jouw rol als ontwikkelaar ben je verantwoordelijk voor de doorontwikkeling van het systeem, bijvoorbeeld met projecten als scheepsregistratie, en ben je betrokken bij de operations. Wanneer er zich bijvoorbeeld een nullpointer exception voordoet bij de verwerking van een akte, signaleer jij dit via alerting, zet een pull request klaar om het op te lossen en releaset je wijziging na review direct naar productie via de continuous delivery pipeline.

Je werkt met een landschap van circa 25 microservices (voornamelijk Spring Boot) geschreven in Java en Kotlin. Data persistence en messaging verlopen via event sourcing, domain driven design en CQRS, gebruikmakend van het Axon Framework. Door het sequentieel opslaan van gebeurtenissen kun je niet alleen de huidige eigenaar van een perceel inzien, maar ook historische eigendomsinformatie raadplegen. Daarnaast maak je gebruik van tools zoals Github Copilot om ontwikkelwerk te versnellen.

Je draagt bij aan de doorontwikkeling en het onderhoud van backend services die essentieel zijn voor de controle-, registratie- en informatieservices van KOERS. De kern van jouw functie is het ontwerpen, realiseren en automatisch testen van software.

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

Jouw verantwoordelijkheden
  • Bouwen, testen en documenteren van software
  • Beheren van de ontwikkelde software, testen en documentatie
  • Samenwerken binnen het scrumteam (Agile / Scrum / DevOps)
  • Samenwerken met andere scrumteams
  • Opzetten en wijzigen van Spring Boot applicaties geschreven in Java en Kotlin
  • Opzetten en wijzigen van geautomatiseerde testen (unit-, integratie- en systeemtesten)
  • Automatiseren van deployments (Tekton / Docker / Kubernetes)
  • Intensief samenwerken met andere teams
  • Uitvoerende rol binnen het scrumteam: refinen, plannen, uitvoeren, evalueren

Competenties
  • Kwaliteitsgerichtheid
  • Proactief en initiatiefrijk
  • Communicatief vaardig
  • Teamspeler

Organisatie

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 hiervan is de Basisregistratie Kadaster (BRK). Notarissen gebruiken de BRK om het benodigde onderzoek te doen voor het opstellen van akten en om te controleren of een aankoop zonder problemen kan worden gepasseerd. Het is van groot belang dat de informatie in de BRK klopt. Ook andere instanties, zoals gemeentes, provincies, gerechtsdeurwaarders en het CBS, maken om uiteenlopende redenen gebruik van de BRK.

Het Kadaster zorgt ervoor dat je geen zorgen hoeft te maken over eigendomsrechten. Hun werk waarborgt rechtszekerheid rondom vastgoed in Nederland.

Goede beheersing van de Nederlandse taal in woord en geschrift is vereist voor deze functie.

Functie eisen

  • Je beheerst de Nederlandse taal vloeiend, in woord en geschrift
  • Je beschikt over HBO/WO werk- en denkniveau
  • Je hebt minstens 5 jaar ervaring in een moderne Java / Spring Boot omgeving
  • Je hebt minimaal 3 jaar ervaring met Kotlin
  • Je hebt minstens 5 jaar ervaring met het schrijven van unittests en integratietesten
  • Je hebt minstens 5 jaar ervaring en kennis van RDBMS en SQL
  • Je hebt 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
  • Je hebt minstens 3 jaar ervaring met het gebruiken van Kubernetes, Openshift of vergelijkbaar op de command line (Kubectl e.d.)
  • Je hebt minstens 2 jaar ervaring met Tekton, Gitlab CI, Github Actions of vergelijkbaar (Jenkins uitgesloten)
  • Je hebt minstens 3 jaar ervaring met Continuous Delivery
  • Je hebt minstens 3 jaar ervaring met operations van een productieomgeving (actief monitoren van productie en ingrijpen als er wat misgaat)
  • Je hebt minimaal 2 jaar ervaring met PostgresSQL

Functie wensen

  • Je omschrijft op basis van jouw competenties en ervaringen uit het verleden zo goed mogelijk de manier waarop je binnen het team een bijdrage wilt leveren tijdens de verschillende agile meetings (daily stand-ups, retrospectives, sprint reviews, refinements).
  • Het is een pre als je ervaring hebt met Continuous Delivery en Operations, en kunt aangeven op welke manier jouw persoonlijke bijdrage hieraan meerwaarde heeft gehad bij eerdere opdrachten.
  • Bij voorkeur heb je ervaring met Kubernetes, Openshift of vergelijkbare technologieën, en kun je toelichten hoe jouw persoonlijke bijdrage hieraan waardevol was bij eerdere opdrachten.
  • Je hebt ervaring met event sourcing en CQRS, bijvoorbeeld met het Axon Framework en basisregistraties.

Extra informatie

  • Plaats Apeldoorn
  • Opleidingsniveau HBO/WO
  • Aantal uur 32-40 uur per week
  • Startdatum 24-11-2025
  • Geschikt voor ZZP? Nee
  • Thuiswerken mogelijk? N.t.b.