Advertorial

Door Tweakers Partners

Als DevOps-engineer bij TKP ben je nooit uitgeleerd

12-03-2020 • 08:00

10

Voor TKP, een van de grootste pensioenuitvoerders van Nederland, is softwareontwikkeling een belangrijk thema. Met de technologie van morgen werk je hier aan de pensioenen van miljoenen Nederlanders.

“Hier wordt van je verwacht dat je niet alleen ontwikkelt, maar het hele traject van begin tot eind oppakt voor een product”, zegt Floris Wits, DevOps-engineer bij TKP. Binnen de organisatie, met bijna duizend medewerkers en het hoofdkantoor in Groningen, werken bijna twintig DevOps-teams. Doorgaans bestaan deze uit ongeveer zes medewerkers, die zich gezamenlijk op verschillende technische vraagstukken richten. Het werk dat Floris met zijn team verricht, omvat een groot aantal taken. “Je moet dan denken aan dingen als het ontwikkelen van it-oplossingen, processen en nieuwe functionaliteit, het automatiseren en optimaliseren van software en systemen, onderhoudsreleases, testen, deployment, monitoring en beveiliging. Maar ook het oplossen van technische problemen, het bijhouden van ontwikkelingen op it-gebied, en het implementeren van nieuwe tools en processen horen bij ons werk.”

Cloud-ready releaseproces
Floris beschrijft het ci/cd-proces als onderdeel van het DevOps-proces. “Wanneer een feature is gemaakt, gereviewd en misschien nog functioneel is getest, wordt hij in Gitlab gemerged naar een releasebranche. Zodra dit gebeurt, wordt de Gitlab-pipeline in gang gezet. Hierin wordt bijvoorbeeld een Docker-container van je releaseversie gebouwd, worden geautomatiseerde tests getriggerd en, als ze slagen, op een Kubernetes-cluster gezet. Dit alles wordt eenmaal ingericht voor je applicatie. Dus zodra de nieuwe versie van je product af is, zet je de pipeline in werking en wordt er automatisch gebouwd, getest en geïmplementeerd. Dit resulteert in een snelle oplevercyclus, omdat je van begin tot eind alles in de hand hebt en veel daarbij ook nog is geautomatiseerd.”

Momenteel draait Kubernetes nog on-premise, maar het mooie is dat het releaseproces klaar is voor de cloud.” We zitten met TKP midden in een transitie naar de cloud. Zodra we hier klaar voor zijn, zal Kubernetes in de cloud kunnen draaien zonder dat we veel aan ons releaseproces hoeven te veranderen.”

Werken met toekomstvaste technologie
TKP gebruikt verschillende talen bij de ontwikkeling van nieuwe software: Java voor backendtoepassingen, Angular voor frontend, en Kafka als de techniek die fungeert als communicatie tussen services en applicaties. “Dit is moderne, toekomstvaste technologie. Het leuke daarvan als DevOps-engineer is dat je je blijft ontwikkelen in mainstreamtalen en -technieken, waarbij de ontwikkeling daarvan ook nog eens heel snel gaat.”

Zelf heeft Floris onlangs de overstap gemaakt naar een nieuw project met een voor hem nieuwe taal: Java. “Ik zat hiervoor in een team dat bestaande applicaties in C# onderhield, maar wilde graag iets nieuws doen en meegaan met de nieuwste ontwikkelingen en technieken binnen het bedrijf. Het was even omschakelen en wennen aan het werken in het Spring Boot-framework, maar de syntax is vergelijkbaar, dus het was goed te doen. Bovendien documenteren we hier altijd goed. En we lopen gemakkelijk even bij elkaar langs. We delen onze problemen en oplossingen. Dat overstijgt zelfs onze eigen organisatie, bijvoorbeeld met leuke evenementen, zoals de TKP-technights. Die worden ook bezocht door it’ers van andere bedrijven, die vaak tegen dezelfde dilemma’s aanlopen als wij, waardoor je van elkaar kunt leren.”

Veelzijdig werk
Binnen de sprints (volgens het scrum-principe) van telkens twee weken is Floris niet alleen bezig met het schrijven van code, maar ook onder andere met het analyseren van problemen, technische oplossingen bedenken, codereview van collega’s, het uitvoeren en automatiseren van tests en het inrichten van het releaseproces. “Als DevOps-engineer ben je bezig met een groot iteratief proces, van begin tot eind. Doordat je overal bij betrokken bent, kun je er ook voor zorgen dat de betrouwbaarheid en veiligheid van je applicaties optimaal zijn. Je hebt alles in eigen hand.”

Omdat een DevOps-engineer verantwoordelijk is voor de eigen software (onder het motto ‘You Build It, You Run It’) is de betrokkenheid met het product groot. “Je werkt bij TKP voor bijna vier miljoen pensioendeelnemers en dat doen wij met moderne technieken. Dan wil je ook dat het goed gebeurt. Inhoudelijk heeft dit werk een heel andere lading dan het ontwikkelen van een fancy applicatie voor bijvoorbeeld een webshop. De impact van wat we hier doen, is groot. Dat maakt het werk ook heel uitdagend.”

Bij TKP vind je Serious Tech, voor ict’ers met ambitie. Iets voor jou? Check werkenbijtkp.nl/tech

Dit artikel is geen redactioneel artikel, maar een advertorial. Mocht je ideeën met ons willen delen over deze vorm van adverteren, dan horen wij dat graag. Hierover kun je met ons in gesprek via [Discussie] Reclame algemeen, daar zullen collega's aanwezig zijn om jouw vragen en/of opmerkingen te bespreken/beantwoorden.

Reacties (10)

10
10
5
0
0
2
Wijzig sortering
Ik moet zeggen, ik snap niet wat er zo aantrekkelijk is als een werkgever zegt dat je nooit uitgeleerd bent en van begin tot eind verantwoordelijk.

Dat klinkt alsof het nooit goed genoeg is en alles op jouw bord gestapeld wordt...

Dan nog het idee dat je dilemma's en problemen gaat proberen op te lossen tijdens avonduren? Waarom? Dat is toch gewoon onderdeel van je werkzaamheden... Leuk geprobeerd om het aan te kleden als "uitje", maar het is simpelweg overwerk.
Ik heb het voorrecht gehad om een legacy applicatie te onderhouden. ~40 jaar oude meuk. Laag op laag kon je zien aan de code dat op een gegeven moment iedereen het had opgegeven. Als het maar werkte - schaalbaarheid, SOLID etc - forget it. Drama.
Met die ervaring is het fijn om te blijven leren zodat je skillset up to date blijft opdat je werk futureproof is (zo goed als dat gaat). Oh ja, die ervaring helpt ook om te herkennen wanneer je weg moet wezen omdat 'de managers' alleen maar meer meer meer willen en je geen tijd geven voor het bijwerken van conventies.
En uit ervaring blijkt dat met de 'nieuwste' technologie gewoon identiek te zijn (wat vaak niet eens nieuwe technieken zijn, maar zelfde oude technieken met een nieuw naampje).. Maar het zal ook wel per bedrijf verschillen.....
ik werk zelf aan een gelijksoortig (multi)-cloudplatform voor een bedrijf dat om maatschappelijke reden security nogal hoog in het vaandel heeft staan, dus ik ben er oprecht erg enthousiast over.

Het is puur dat alle clouds tegenwoordig zoveel nieuwe services uitbieden die je vaak perfect kunt integreren met je applicatie, mits je er genoeg verstand van hebt. Meer en meer cloud native werken geeft je de mogelijkheid om applicaties belachelijk veel schaalbaarder te maken, en vaak ook nog de kosten te beperken (zeker de TOC). Wat het ideaalbeeld van mij, en blijkbaar ook van TKP is, is dat developers echt DevOps gaan werken.

Nu is DevOps een naar woord geworden omdat niemand echt weet wat het betekent, maar er is wel een consensus dat het om een cultuur gaat. De invulling die wij er aan geven is dat je Developers tools geeft om zou eenvoudig en veilig mogelijk nieuwe applicaties online te kunnen zetten.

Developers moeten dus ook cloud-engineers worden. Natuurlijk niet allemaal AWS DevOps Pro gecertificeerd, je kan ook veel weg abstraheren door prefab kant en klare cloud building blocks te gebruiken, zo doet Wehkamp dat met hun Cloudformation in het geval van AWS only, je kunt ook intern Terraform modules aanbieden die 80% van alle usecases vormen.

Daarom "moet" iedereen blijven doorleren, en wil ieder bedrijf een Cloud Excellence Center, zodat er interne consulting kan zijn met de eigen developers, en een library aan perfecte schoolvoorbeelden beschikbaar is qua cloudgebruik.

Het zorgt er ook voor dat je een shared responsibility model hebt met je cloudplatform team, jij bent verantwoordelijk voor de uptime van je applicatie. Wanneer alles plat ligt en je denkt dat het aan het platform ligt kom je bij mij, maar als ik constateer dat jouw applicatie je eigen db kut gebruikt dan los je dat zelf maar op 's avonds, dan heb jij overdag een shortcut genomen of je applicatie niet goed getest op weerbaarheid en schaalbaarheid terwijl ik jou de tools en mogelijkheden heb gegeven om dat te realiseren.
Ik moet zeggen, ik snap niet wat er zo aantrekkelijk is als een werkgever zegt dat je nooit uitgeleerd bent en van begin tot eind verantwoordelijk
Dat heeft te maken met afwisseling en uitdaging zoeken in je werkzaamheden. Mensen die een kunstje kunnen en het allemaal wel best vinden zijn er genoeg binnen de IT. Dat zijn echter niet de toppers die je wilt hebben. Ontwikkelingen gaan snel, wel zo prettig als je kennis en vaardigheden dan nog relevant zijn.

Wat betreft het verantwoordelijkheid stuk: als daar ook verregaande (team) autonomie tegenover staat is het absoluut geen probleem. Zolang de verantwoordelijken ook maar de mogelijkheid hebben om de juiste dingen te doen. Je kunt dan simpelweg zelf de keuze maken om iets niet releasen als je je er nog niet prettig bij voelt. De deadline kan wel even wachten en het gaat wel om je eigen nachtrust.

[Reactie gewijzigd door Tjoekie op 22 juli 2024 23:32]

Maar als je dan ergens wil starten en het leertraject volgen, heb je wel minstens 3 - 5 jaar ervaring nodig ... 8)7
Anoniem: 420148 @Pathogen12 maart 2020 10:19
wat er zo aantrekkelijk is als een werkgever zegt dat je nooit uitgeleerd bent
Dat je niet 5 jaar lang hetzelfde domme werk doet en na zo'n periode gewoon niet meer relevant in de markt bent?
+1 voor de eerste alinea
Werken met toekomstvaste technologie
TKP gebruikt verschillende talen bij de ontwikkeling van nieuwe software: Java voor backendtoepassingen, Angular voor frontend, en Kafka als de techniek die fungeert als communicatie tussen services en applicaties. “Dit is moderne, toekomstvaste technologie. Het leuke daarvan als DevOps-engineer is dat je je blijft ontwikkelen in mainstreamtalen en -technieken, waarbij de ontwikkeling daarvan ook nog eens heel snel gaat.”
Ach ja, Angular toekomstvast..... Hoeveel problemen dat framework heeft..
HTML is toekomstvast, maar ECMAScript verandert veel.
Kijk eens naar ES2015 en hoe goed dat ondersteund wordt (kuch IE kuch).

En dan dit nog: https://hackernoon.com/wh...quit-web-dev-f63b83a157af

C(++) is bewezen toekomstvast te zijn, Angular is daar nog lang niet.

Wie wil er wel "toekomstvast" met Angular werken?
Achja er is om de haverklap wel weer een nieuw framework wat een ander framework weer verbetert en dan redelijk snel weer vervangen wordt door een nieuw fab framework..

Op dit item kan niet meer gereageerd worden.