Software Engineer

Kadaster
Max 95 p/u
Gelderland
40 uur p/w
02-01-2024
01-01-2025
Freelance

Opdrachtomschrijving

Omschrijving Beheer en Ontwikkeling IT
Waar loopt de grens tussen uw tuin en die van uw buurman? En welk vastgoed is van wie? Het Kadaster registreert van al het vastgoed (grond en gebouwen) in Nederland wie welke rechten heeft. We hebben heel veel data over alles onder, op en boven de grond en willen maximale waarde halen uit deze data. Naast onze wettelijke taak, beheert het Kadaster ook voorzieningen van andere organisaties, de Landelijke Voorzieningen. Zo beheren wij onder andere de WOZ Landelijke Voorziening en de Basisregistratie Adressen en gebouwen (BAG): alle adressen en gebouwen in Nederland, zoals bouwjaar, oppervlakte, gebruiksdoel en locatie op de kaart.

Binnen Beheer en Ontwikkeling IT werken we met Scrum en DevOps en zijn de teams integraal verantwoordelijk voor de volledige technische dienstverlening, van idee tot productie. Vanuit een dynamische omgeving bieden wij een informele werksfeer. Soms werkt het beter om even je zinnen te verzetten en kan je met je teamgenoten een potje tafeltennis spelen, gamen of met de 3D printer een ontwerp realiseren. Ook hebben we een innovation hub om in een andere sfeer samen te werken.

Omschrijving team waarbinnen de inhuurkracht komt te werken
Het team Terrestrische Registratie (TR) is op zoek naar een Software Engineer Java.

Het TR team is één van de teams binnen het landmeetkundige (LM) domein. De teams binnen het LM-domein werken gezamenlijk aan een doel: het eenvoudiger, beter en leuker maken voor onze landmeters en klanten. De teams zijn hierin afhankelijk van elkaar. Naast TR is het mogelijk dat je in de toekomst als onderdeel van één van de andere LM-teams gaat werken aan het gezamenlijke doel.

De dienst Terrestrische Registratie verzorgt het archiveren en weer beschikbaar stellen van terrestrische meetgegevens die worden ingewonnen bij het vaststellen van nieuwe kadastrale grenzen. Deze meetgegevens vormen de basis voor het bijwerken van de Kadastrale Kaart, die alle perceelsgrenzen van Nederland bevat. Daarnaast worden de meetgegevens gebruikt wanneer de grens opnieuw uitgezet en aangewezen wordt.

Wij ontwikkelen op een Java backend. Als software engineer maak je deel uit van een ervaren en gedreven Agile/Scrum team en draag je bij aan het vernieuwen en onderhouden van het applicatielandschap van TR. Je werkt mee aan de ontwikkeling van nieuwe producten en draagt daarbij actief je kennis over aan de andere teamleden. De Continuous Integration pipeline wordt volledig containerized met Docker, door de gehele OTAP straat. Pipelines zijn scripted met Jenkinsfiles. We hanteren korte feedback loops om daarmee een beter gevoel te ontwikkelen wat onze klanten en gebruikers nodig hebben. We werken volgens Software Teaming, een software ontwikkelingsaanpak waarbij het hele team aan hetzelfde werkt (ook wel bekend als “Mob Programming”).

Opdrachtomschrijving
Het TR team werkt met state-of-the art technieken aan het ontsluiten van landmeetkundige data. Je hebt daarbij veel vrijheid om nieuwe ontwikkelingen te proberen, te leren en combineren. Het team streeft naar een vooruitstrevend en stabiel TR platform waarmee ze de komende jaren voorop loopt in de publicatie van data via REST API ’s en event sourcing met behulp van het Axon framework. Ontwikkeling zijn op het gebied van Kubernetes en Azure. Vanzelfsprekend is geautomatiseerd wat geautomatiseerd kan worden, zodat zoveel mogelijk tijd in het daadwerkelijk leveren van klantwaarde gestoken kan worden.

De opdracht is om mee te draaien in het TR team en werkende software op te leveren die de gebruiker daadwerkelijk nodig heeft. Hiervoor kan je naast goed programmeren ook goed communiceren met je eigen teamleden, met leden van aanpalende teams en met je stakeholders. Daarnaast verwachten we dat je het werk van je teamleden kunt reviewen, testen en automatische test- en deployment pipelines kan opzetten en bijwerken. Ten slotte vragen we je actief te participeren, mee te denken en je kennis te delen met andere teams en de Java community.

Alle LM teams werken volledig volgens de Agile werkwijze. Business belang en toegevoegde waarde van werkzaamheden zijn bepalend voor de prioritering van alle werkzaamheden binnen de teams. Daarnaast zijn de teams aangesloten bij de Kadaster PI sessies, waarin per kwartaal alle werkzaamheden die verder strekken dan alleen één team ingepland en verdeeld worden. Meerdere teams werken hierin samen om het gehele landmeetkundig proces te ondersteunen en te verbeteren.

De Java-ontwikkelaar maakt het technisch ontwerp en realiseert op basis hiervan ook de uiteindelijke software componenten (code). Beide taken vormen de kern van de functie software engineer. Voor belangrijke ontwerpbeslissingen die de architectuur raken (of daar zelfs van afwijken), stemt hij/zij af met de software architect.

Belangrijkste technieken, methoden en tools

  • Agile/Scrum;
  • Java-frameworks zoals Spring (boot, batch);
  • JPA;
  • Continuous Integration/Delivery en Maven, Tekton, SonarQube, Git, Gittea, Docker, Jira, Artifactory, Openshift;
  • Webservices, JSON, XML, REST;
  • Testframeworks zoals JUnit en Mockito;
  • Postgres database, PostGIS;
  • CQRS;
  • Event Sourcing;
  • Axon;
  • Shell scripting.

De belangrijkste taken en verantwoordelijkheden zijn:

  • Uitbreiden van en wijzigingen doorvoeren in de applicaties;
  • Beheren van de applicaties;
  • Wijzigen en toevoegen van UnitTests en applicatie code;
  • Wijzigen en toevoegen van Gluecode en ondersteunen van test automatisering;
  • Automatiseren van Deployments;
  • Deelnemen in een Scrum / DevOps team;
  • Uitvoeren van impactanalyses, planningssessies;
  • Deelnemen in de Java community;
  • Deelnemen in toepassen en bijhouden van Java ontwikkelstandaarden.

De eisen

Alles uitklappen
Minimaal een afgeronde hbo-opleiding of hoger.
Minimaal drie (3) jaar ervaring als Java Software Engineer.
Minimaal twee (2) jaar ervaring met: o Maven, Jenkins en Git; o JPA; o PostgresSQL; o Spring boot; o REST; o Docker; o Axon; o CQRS en Event Sourcing.
Aantoonbare kennis van en ervaring met: o Het ontwikkelen van Java (Web-) applicaties; o Docker Swarm; o Werken in een scrum team; o Applicaties in het landmeetkundige domein (te beoordelen: werkervaring; o.a. Kadaster, landmeetkundige / geodetische ingenieursbureaus)
Door de kandidaat zélf geschreven motivatie.

De wensen

Alles uitklappen
Ervaring met het volgende is een pré: o Domain Driven Design (DDD); o Software Teaming / Mob Programming; o Kubernetes
U geeft een beschrijving van aanpak (max. 400 woorden) voor de uit te voeren werkzaamheden gezien het specifieke vraagstuk van het Kadaster (zie ook opdrachtomschrijving en verantwoordelijkheden). Beoordeling: De mate waarin de beschrijving van aanpak aansluit bij de wensen van het Kadaster.
U beschrijft 2 cruciale knelpunten (max. 300 woorden) die zich vaak voor doen in dit soort processen / opdrachten en geeft hierbij aan hoe u deze oplost (zie ook opdrachtomschrijving en verantwoordelijkheden). Beoordeling: De mate waarin de knelpunten relevant zijn en de oplossingen aansluiten bij de wensen van het Kadaster.
U toont duidelijk aan (max. 300 woorden) welke wijze de door u geleverde expertise en competenties binnen de geschetste situatie een bijdrage leveren aan te behalen resultaten (zie ook opdrachtomschrijving en verantwoordelijkheden). Beoordeling: Hoe beter de expertise en competenties aansluiten bij de wensen van het Kadaster en de geschetste situatie hoe hoger de score.

Hoe werkt het?

Aanvraag indienen
Dien je aanvraag in middels het onderstaande formulier.
Introductie
We introduceren je profiel bij de desbetreffende opdrachtgever.
Aan de slag
Na akkoord kun je per direct aan de slag met je nieuwe opdracht!

Direct reageren

Vul het onderstaande formulier in en we zullen binnen 24 uur contact met je opnemen.

Het is niet meer mogelijk om op deze opdracht te reageren
Open sollicitatie
Sleep bestanden hierheen of
Toegestane bestandstypen: pdf, Max. bestandsgrootte: 256 MB.
    Sleep bestanden hierheen of
    Max. bestandsgrootte: 256 MB.