Infrastructure as Code is snel in opkomst, vooral bij de grotere bedrijven. En dat vinden we niet vreemd, want het heeft veel voordelen. Maar wat is het eigenlijk precies? En wat betekent het voor de rol van Software Developer? We vragen het Gorden Blom, want wie kan het nu beter uitleggen dan iemand die hier dagelijks mee werkt? Infrastructure as Code (IaC) in een notendop.
Om het goed te begrijpen, moeten we eerst wat terug in de tijd. Gorden: “Vroeger had je projecten en een idee wat je wilde gaan doen. Daarvoor had je van alles nodig, zoals hardware, servers, support contracten, een operating system. Dat kocht je in eigen beheer of nam je als dienst voor langere tijd af.”
Dat maakte experimenteren lastig en prijzig. “Dit soort investeringen wilden bedrijven alleen doen voor die dingen waar je toekomst in zag. Maar ook dan gebeurde het vaak dat een project halverwege van scope veranderde of gecanceld werd. Dan konden we de server weggooien,” gaat Gorden verder.
Daarna kwam Infrastructure as a Service op, vaak beter bekend onder de afkorting: IaaS. Hiermee neem je de Infrastructure flexibel als een service af, waarbij je contractuele afspraken maakt met je leverancier over hoe snel je kunt op- en afschalen.
“Dat is leuk, maar niet echt bedoeld voor verandering,” legt Gorden uit. “Met IaaS ben je weliswaar een stuk flexibeler, omdat je de omgeving niet zelf in huis hebt. Maar je hebt nog steeds geen controle over die omgeving. Ook kun je niet alleen die omgevingen gebruiken die je nodig hebt. Bovendien heb je nog steeds te maken met contracten, terwijl je het liefst zelf volledige vrijheid wil.”
Niet vreemd dus, de opkomst van Infrastructure as Code, ook wel bekend als IaC. Infrastructure as Code betekent het geautomatiseerd opzetten en managen van omgevingen met code, net zoals je met software doet.
“Je schrijft de infrastructuur die je wilt gebruiken op als code, waardoor de infrastructuur in de cloud gezet kan worden,” legt Gorden uit. “Dit kun je al in een aantal uur doen, waardoor je een nieuw systeem binnen een aantal uur in productie kunt krijgen. Geen inkoopprocessen of dure servers dus, maar snel experimenteren en uitzoeken wat je echt nodig hebt.”
IaC heeft enorme impact op de business. Gorden: “Nieuwe ideeën kunnen we in een aantal uur naar productie krijgen. We hoeven niet te wachten op andere afdelingen, maar zijn zelf volledig autonoom bezig. Nieuwe server nodig? Dan schrijf je er een regel code voor. Meer memory of CPU’s nodig? Dan pas je dat aan in de code. Nieuwe applicatie neerzetten? Dan voeg je dat toe aan je code.”
Een tweede grote voordeel is dat het volledig geautomatiseerd is. Gorden: “Met IaC weet je zeker dat wat je wilt deployen er altijd hetzelfde uitziet. Je omgevingen zien er altijd hetzelfde uit, ook als je het een keer hebt weggegooid of veranderd. Dat komt doordat het code is die jij hebt geschreven en er geen handen zijn die ermee aan de slag gaan.”
Infrastructure as Code is de sleutel naar het DevOps gedachtengoed, zo legt Gorden uit: “Hiermee wordt DevOps, waarin je als team de software zowel ontwikkelt als beheert, echt mogelijk. Het wordt eigenlijk altijd gebruikt in samenwerking met Continuous Delivery. Dat is het proces van bouwen, testen en deployment van project naar productieomgeving. Dat doen we nu continu: zodra het werk klaar is kun je het naar productie brengen, in plaats van moeten wachten tot een vast tijdstip in de week.”
Dit levert veel op: “Je kunt de nieuwe software sneller gebruiken, maar ook sneller uitvinden doordat je meer kunt experimenteren. Dat geeft je als bedrijf het voordeel van ‘early monetization of investment’: zo snel mogelijk geld verdienen met wat je hebt gemaakt!
Gorden verwacht dat IaC de toekomst heeft. “Het merendeel van de grote bedrijven is hier mee bezig. Niet allemaal even succesvol: de mate van automatisering en de mate van autonomie is dan vaak nog de vraag. Mijn advies is dan ook: als je een goede software developer wil worden, zorg dan dat je aan de slag gaat bij een organisatie die IaC serieus neemt. Deze boot is te interessant om te missen.”
Ook Robeco heeft Infrastructure as Code omarmt. Zelfs de trainees van het Tribers Software Development Traineeship die bij Robeco een opdracht doen werken hiermee. Heel mooi, zo vindt Gorden. “Het past helemaal in de ‘automate everything’-mindset, waar ik groot fan van ben.”
Wil jij ook als Trainee meteen met Infrastructure as Code werken? Grijp dan deze kans om je – met ijzersterke begeleiding van Gorden – deze nieuwe technieken eigen te maken. Meld je nu aan voor het Traineeship.
Vragen over Architecture as a Code of het Software Development Traineeship? Aarzel niet en stuur Gorden een mailtje of appje.
Wil jij toffe dingen in de cloud doen? Met .NET Core, Azure en Kubernetes? En direct bij een grote organisatie? Dat kan! Bij ons krijg je de kans om DevOps op Champions League-niveau te doen. Je krijgt ijzersterke inhoudelijke begeleiding van experts die het vak van Cloud Software development écht verstaan. Deze on-the-job training combineer je met meer dan 40 workshops en trainingen. Zodat jouw carrière als een raket van start gaat.
We zien een tekort aan slimme, leuke mensen op de markt en tegelijkertijd een tekort aan tijd om die mensen goed te begeleiden. Met dit Traineeship willen we de brug slaan tussen jong talent en de corporate wereld. Corporates zijn eigenlijk helemaal niet gemaakt om dit soort programma’s te draaien: dat vraagt om tijd en specialisme wat beter extern ingekocht kan worden.
In dit Traineeship combineren we de ervaring van Tribers met dit soort traineeprogramma’s met de kansen die een corporate biedt. Daarbij starten we niet individueel, maar met 6 trainees tegelijk. Zodat we samen nog meer impact maken.