DevOps Engineer
Job Description:
• Minimaal 3 jaar ervaring met Agile/Scrum;
• Minimaal 3 jaar ervaring met Kubernetes/Docker;
• Aantoonbare kennis en ervaring met één van de volgende programmeer / script talen:
o Go;
o Python;
o Bash;
o Java/Kotlin;
• Aantoonbare kennis en ervaring met Extract/Transform/Load (ETL);
• Aantoonbare kennis en ervaring met Front-end programmeertools;
o AngularJS;
o Openlayers.
• Kennis van en ervaring met één van onderstaande technieken:
o Mapserver;
o Azure/S3
o MapProxy;
o Geoserver;
• Aantoonbare kennis van netwerken en infrastructuur;
• Taalniveau Nederlands minimaal B2;
• Aantoonbare kennis en ervaring met RESTful API management;
• Aantoonbare kennis en ervaring met CI/CD en dan in ieder geval:
o Jenkins
o Travis
• Aantoonbare kennis van Integration Patterns en Cloud concepten;
o Geostandaarden zoals GML (INSPIRE).
Competenties:
• Klantgericht;
• Resultaatgericht;
• Kwaliteitsgericht;
• In staat om zelfstandig binnen een scrumteam te werken;
• Teamspeler;
• Proactief;
• Analytisch vermogen.
Omschrijving project:
Het bedrijf is een dataplatform van Nederland dat geo-data beschikbaar stelt aan een ieder die hier gebruik van wil maken. De geodata is actueel en betrouwbaar en komt van verschillende overheidspartijen. Het bedrijf stelt deze geo-data door middel van verschillende API’s (o.a. WFS, WMS, WMTS, RESTful), downloads en applicaties beschikbaar. Een voorbeeld van het aanroepen van API’s/webservices van het bedrijf is NL Maps. Hier kun je zien hoe eenvoudig je een kaartbeeld van Nederland op verschillende zoomniveaus kunt genereren door de API’s aan te roepen.
De diensten zijn gebaseerd op open data en daarom voor iedereen vrij beschikbaar. Bij data kan men denken aan topografische data, luchtfoto’s, gebouwen, wegen, statische data en nog veel meer soorten data. Gebruikers van de data en diensten van het bedrijf zijn bijvoorbeeld analisten die research doen maar in veel gevallen ook Software Engineers die bijvoorbeeld op basis van API’s toepassingen maken voor mobiele telefoons, websites of viewers. Het bedrijf heeft als belangrijke taak dat de data snel door middel van API’s beschikbaar kan worden gesteld, een goede performance kennen en een hoge beschikbaarheid hebben. Voorbeelden van toepassingen van externe gebruikers zijn bijvoorbeeld van VanAnaarBeter of de Geozet Viewer of bijvoorbeeld de website van het Kadaster (in opdracht van het Ministerie) waar men kan zien waar met Drones gevlogen mag worden.
Waar zijn en gaan we mee bezig bij het bedrijf?
Voor 2021 en verder focussen we ons op een drietal speerpunten:
1 . Transitie naar de Cloud
Het bedrijf heeft impact! De afgelopen jaren is het bedrijf gegroeid van 580 miljoen requests in 2013 naar meer dan 20 miljard requests vandaag de dag. Verwacht wordt dat het jaarlijkse gebruik in de komende jaren verdubbeld. Om deze groei aan te kunnen zijn we continue bezig met het optimaliseren van de infrastructuur. De belangrijkste stap die we gaan maken, is de stap richting de Cloud. Dit is aan de ene kant noodzakelijk om onze dienstverlening te kunnen waarborgen, anderzijds een hele mooi uitdaging om ons platform en onze standaarden te hervormen. Daarnaast kun je denken aan het inrichten van nieuwe componenten of optimaliseren van bestaande componenten, het inrichten van monitoring etc.
2. Automatisering en standaardisatie omtrent dataverwerking en API’s
Om het inrichten van data en API’s te optimaliseren zal er de komende tijd veel aandacht besteed worden aan het verder automatiseren en standaardiseren van processen. Hiermee moet het opnemen van nieuwe data binnen de infrastructuur nog eenvoudiger, sneller en kwalitatiever worden.
3. Standaardiseren van services en diensten conform INSPIRE uitvoeringsbepalingen
Nederland heeft in nationaalgeoregister.nl een INSPIRE knooppunt gemaakt waardoor iedereen de metadata, met daarin de koppelingen naar de data services van INSPIRE datasets, automatisch kan ophalen. Datasets en -services die onder één van de 34 INSPIRE-thema's vallen, moeten te vinden, te raadplegen en te downloaden zijn. Ook moeten ze grensoverschrijdend op elkaar aansluiten. Dit proces is in 2010 gestart en loopt door tot en met 2021.
Verantwoordelijkheden
De belangrijkste taken en verantwoordelijkheden zijn:
- Deelnemen aan en/of organiseren van Scrum / DevOps sessies (Stand-ups, retrospectives, refinements en planningssessies), waarin het team samen met de Product Owner en gebruikers spart over een gedegen oplossing;
- Doorontwikkeling en hervorming van het bestaande platform (Golang, Java/Kotlin, Python) op een Cloudomgeving;
- Automatiseren van Deployments (Kubernetes/Docker, Jenkins);
- Uitvoeren van impactanalyses en deelnemen aan planningsessies.
Bij interesse, graag de volgende gegevens aanleveren vóór 17 december:
- CV in Word, max. 3 pagina's
- Graag in 1 Word document: Een aparte persoonlijke motivatie aanleveren + onderstaande Gunningscriteria kwaltiteit motiveren per punt
Gunningscriteria Kwaliteit
U geeft een beschrijving van aanpak (max. 400 woorden) voor de uit te voeren werkzaamheden betreffende de drie speerpunten (zie ook opdrachtomschrijving en verantwoordelijkheden). Beoordeling: De mate waarin de beschrijving van aanpak aansluit bij de wensen van het bedrijf. 30 %
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 bedrijf. 30 %
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).
Required Skills:
RESTful API MapServer ETL. GML Travis GeoServer Scrum OpenLayers Kotlin/Java Software Load Research Management Python Java Jenkins Kubernetes Docker Bash Engineer Engineers Integration DevOps AngularJS