Senior Software Engineer
Functie omschrijving
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, helaas door COVID 19 voorlopig nog voornamelijk vanuit huis, al zijn er in overleg met manager en team mogelijkheden op locatie te werken. Om even je zinnen te verzetten kan je hier 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.
Omdat het Kadaster innovatie hoog in het vaandel heeft staan wordt er 1x per maand een Innovation Friday georganiseerd waarin nieuwe, veelbelovende technieken worden uitgeprobeerd en worden er regelmatig “Taco” sessies gehouden waarin kennis wordt gedeeld.
Omschrijving project waarbinnen de inhuurkracht te werk wordt gesteld
Het Openbaar Register Kadaster (OR) bevat alle akten (als pdf-documenten).
In het Kadaster Pdf Services (KPS) DevOps team zijn de PDF services ontwikkeld om de kwaliteit van het Openbare Kadaster Archief te kunnen waarborgen en uniform te realiseren. Met de KPS services zijn de akten gevalideerd, geconverteerd of ge-OCR-ed, voordat ze geregistreerd worden in het Kadaster OR.
Het KPS DevOps team is op zoek naar een senior software engineer om de functionaliteit van de huidige PDF services (PDF Validator, PDF Convertor, PDF OCR) te beheren en uit te breiden. We willen een zoekengine met ElasticSearch ontwikkelen, om de ge-OCR-de akten te kunnen doorzoeken op kenmerken en/of tekstfragmenten. De zoek-resultaten worden ook gekoppeld met BRK-data (basis registratie kadaster). Deze nieuwe functionaliteit wordt ook primair gebruikt in de APG service van het Kadaster.
Wij maken gebruik van JAVA, Kubernetes, Wiremock, Spring Boot Framework, Postgres, MinIO, PDF library’s (Conversie, Validatie, OCR), ElasticSearch, Splunk, Jira, ServieNow, GIT, Cucumber, Rest en Soap.
Opdrachtomschrijving
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 projectarchitect. Hetzelfde geldt voor integratie aspecten, zij het dat de afstemming dan vooral plaatsvindt met de integratie specialist.
Belangrijkste technieken, methoden en tools
- Java 11, 17;
- Maven;
- Spring Boot, Spring Securiy, Spring Data, Spring MVC;
- Hibernate, Postgresql, Postgis;
- Webservices, REST, JSON, XML;
- Angular 11+, Typescript, Bootstrap, HTML, SCSS;
- Continuous integration/delivery, Jenkins pipelines;
- Kubernetes, Docker;
- Elastic Search;
- Git, Github;
- Unit testen, Cucumber tests;
- Agile / Scrum;
- Design Patterns;
- Postman, JMeter;
- JIRA.
Verantwoordelijkheden:
De belangrijkste taken en verantwoordelijkheden zijn
- Ontwikkelen nieuwe applicaties binnen het bestaande landschap van microservices;
- Ontwerpkeuzes motiveren en toelichten;
- Je ontwikkelt nieuwe applicaties en functies en bent daarbij betrokken in het hele proces: ontwerpen, ontwikkelen, testen en documenteren;
- Automatiseren van het software ontwikkelproces, onder andere van deployments (met Jenkinsfiles, Kubernetes en Docker);
- Deelnemen aan Scrum / DevOps sessies, waarin het team samen met de Product Owner en gebruikers spart over een gedegen oplossing;
- Deelnemen aan de Java community binnen het Kadaster.
Taken
- Ontwikkelen en beheren van Kadaster PDF functionaliteit en van de front-end code (Angular 11+);
- Ontwikkelen van microservices o.b.v. Spring Boot ;
- Ontwikkelen van front-end o.b.v. Angular i.c.m. Bootstrap;
- Onderhouden van Postgresql database met Postgis extentie schema’s middels Liquibase;
- Automatiseren van deployments m.b.v. Jenkins, Kubernetes, Docker;
- Ondersteunen bij testautomatisering;
- Het draaien van performancetests met Jmeter;
- Deelnemen in een Scrum / DevOps team (Stand-ups, retrospectives, refinements en planningssessies);
- Deelnemen in de Java community;
- Toepassen en bijhouden van Java ontwikkelstandaarden.
Functie eisen (1) en -wensen (•)
- Verplichte opgave van uw gewaarmerkte KVK-uittreksel. Hieruit moet de tekenbevoegdheid van de ondertekenaar van de onderhavige overeenkomst blijken,U voegt slechts één Nederlandstalig curriculum vitae (cv) van maximaal 3 pagina's A4 toe. Uit dit cv dient te blijken dat u voldoet aan onderstaande eisen. Indien u naar oordeel van het Kadaster niet voldoet aan de gestelde eisen, of uw cv uit meer dan 3 pagina's bestaat, zal uw offerte terzijde worden gelegd en niet worden meegenomen in de beoordeling van de gunningscriteria
- Aantoonbaar HBO werk- en denkniveau
- Taalniveau Nederlands minimaal B2
- Minimaal 5 jaar ervaring als Java software engineer
- Minimaal 3 jaar ervaring met Angular
- Minimaal 3 jaar ervaring met:,Aantoonbare ervaring met succesvol samenwerken in multidisciplinaire (agile) teams en omgevingen
- Door de kandidaat zélf geschreven CV en motivatie
Je kunt reageren tot
Contactpersoon
- Gelderland
- 2 - 5 jaar
- Projectbasis
- 36 uur of meer