De CTO's van onze drie units - Data, DevOps en Development - vormen samen met de CTO van CINQ een denktank: de CINQTank. Zij houden zich bezig met het “voorspellen” van de toekomst. Samen met de mensen uit de units kijken zij in de verschillende vakgebieden naar de ontwikkeling van technieken en tools. Hiermee wordt een technische visie gecreëerd. Deze wordt onder andere gebruikt om richting te geven aan de opleiding van medewerkers. Tevens wordt het gebruikt als input voor de jaarplannen van elke afdeling. Tot slot is het natuurlijk ook gewoon leuk om na te denken hoe de toekomst eruit zou kunnen zien. Hieronder lees je onze verwachtingen op het gebied van Development in 2024.
Als we terugblikken op de verwachtingen van het afgelopen jaar, voorspelden we een toenemende vraag vanuit de markt naar gespecialiseerde ontwikkelaars die bereid zijn buiten hun gebruikelijke rol te treden. Deze ontwikkeling heeft zich gedurende het afgelopen jaar voortgezet.
Kort gezegd zijn onze klanten op zoek naar ontwikkelaars die goed zijn in het ontwikkelen binnen hun specialisme (bijvoorbeeld backend Java), maar niet terughoudend zijn om andere ontwikkelwerkzaamheden (bijvoorbeeld frontend Javascript) op te pakken. Er wordt van ze verwacht dat ze buiten hun eigen vakgebied kunnen acteren en ook verantwoordelijk zijn voor het ontwerpen, testen, beveiligen en beheren van hun software samen met de specialisten op deze onderwerpen.
Als we de cloud providers analyseren die actief zijn in ons marktsegment, valt op dat Microsoft Azure veruit het grootste marktaandeel heeft. Dit is een opvallende trend, aangezien er een wereldwijde voorkeur voor AWS is. Bij het trachten te verklaren van deze trend in Nederland, kom je uit op een historisch sterke vertegenwoordiging van Microsoft Nederland en de aanwezigheid van ervaren Nederlands personeel met betrekking tot Microsoft Azure.
Bovendien markeerde het afgelopen jaar als het 'Jaar van Artificial Intelligence', met als primaire katalysator de vrijgave van ChatGPT aan het grote publiek. Hierdoor kwam iedereen ermee in aanraking, wat resulteerde in een situatie waarin eenieder er gelijktijdig gebruik van kon maken. Deze dynamiek verschilt aanzienlijk van de gebruikelijke manier waarop baanbrekende technologie de markt betreedt. Normaliter is het aanvankelijk te kostbaar voor de gemiddelde persoon en komt het eerst ten goede aan grote ondernemingen die er royaal voor betalen, alvorens het zich verspreidt naar de open source-gemeenschap.
Door deze nieuwe manier van technologie op de markt brengen, constateren we dat veel bedrijven nog niet volledig zijn voorbereid op de implementatie van AI. We zien dat technologiebedrijven intensief bezig zijn met het verdedigen of vergroten van hun marktpositie door AI toe te voegen aan hun portfolio.
Tegelijkertijd merkten we op dat bedrijven die software ontwikkelen nog niet volledig gereed waren om AI in de praktijk te ondersteunen voor hun medewerkers. Veel grote ondernemingen waren hierdoor zelfs genoodzaakt AI in de ban te doen, uit vrees voor datalekken, ongeoorloofd gebruik en andere risico's.
Ten slotte, als engineer, was het mooi om te zien dat gedurende het hele jaar wekelijks nieuwe ideeën en toepassingen op het gebied van generatieve AI opdoken. Zelfs aan het einde van het jaar lijkt deze trend niet af te nemen. Dit maakte het jaar buitengewoon interessant.
De opkomst van open toegankelijke Large Language Models heeft ertoe geleid dat we een herdefinitie hebben gekregen van AI. Waar we vorig jaar nog intensief debatteerden over de kwestie "het is machine learning, geen AI", lijkt iedereen zich er nu langzaam bij te hebben neergelegd dat AI de overkoepelende term is geworden waaronder we alles scharen.
Ook het komende jaar zal in het teken staan van AI. Terwijl de technologiereuzen Microsoft, Google en Amazon zich blijven concentreren op het aanbieden van Large Language Models, heeft de rest van de AI-markt een aanzienlijke toename van aandacht en innovatie ervaren. Ook het komende jaar belooft daarom een voortdurende stroom van nieuwe tools en ideeën met betrekking tot het gebruik van AI.
Ook op andere technologie segmenten zijn bedrijven druk bezig hun producten aan te passen aan de komst van AI. Het meest sprekende voorbeeld voor ontwikkelaars zijn de code assistenten die voor veel ontwikkelaars een tool zullen worden / blijven voor dagelijks gebruik ter ondersteuning van hun werk.
Steeds meer bedrijven hebben al AI-richtlijnen vastgesteld of zijn bezig met het formaliseren van het gebruik van AI. We zien hierbij een duidelijke trend waarbij veelal wordt gekozen voor het hosten van Large Language Models binnen de eigen private cloud. Hierdoor zullen veel ontwikkelaars het komende jaar de mogelijkheid krijgen om ook code assistenten te gebruiken in het kader van hun opdrachten.
Wat betreft de backend constateren we dat de JVM-talen nog steeds de dominante meerderheid vertegenwoordigen in ons marktsegment, waarbij Java nog steeds de grootste speler is. Echter, steeds meer klanten maken ook gebruik van Kotlin. De verwachting is dat beide talen in de komende jaren steeds meer gezamenlijk zullen worden ingezet, waarbij Kotlin een steeds prominentere rol zal gaan vervullen.
Als we naar backend frameworks kijken, blijft Spring (Boot) nog steeds de grootste speler in ons marktsegment. Desalniettemin groeit de interesse voor alternatieven zoals Quarkus en Micronaut. Op dit moment wordt echter vaak nog niet heel concreet gevraagd naar werkervaring met deze laatste twee frameworks en is ervaring met Java/Spring voldoende. Mocht de populariteit van Quarkus en Micronaut echter snel toenemen, dan zal bij het werven van ontwikkelaars ook een grotere voorkeur ontstaan voor specifieke ervaring met deze frameworks.
Het javascript ecosysteem blijft één van de meest veranderlijke omgevingen in de IT met constante ontwikkelingen op gebied van runtimes, libraries, build tools en zeer actieve ontwikkelingen van Typescript met de komst van versie 5 in het afgelopen jaar. Deze trend zal doorzetten en onze frontend ontwikkelaars zijn hier aan gewend en dusdanig intrinsiek gemotiveerd dat ze makkelijk met deze ontwikkelingen mee gaan.
Echter is er ook een stabiele factor op het gebied van frontend. Wat betreft frameworks blijven React en Angular dominant. In ons marktsegment constateren we een groeiende vraag naar React ten opzichte van Angular.
Over het algemeen blijft het voor onze ontwikkelaars raadzaam om technische kennis in tweevoud te verwerven en te experimenteren met nieuwe technieken. Denk hierbij aan bijvoorbeeld twee verschillende frontend frameworks, twee verschillende programmeertalen of twee verschillende cloud omgevingen. Dit is raadzaam omdat het beheersen van kennis in tweevoud, een bredere kennis ondersteunt en meer inzichten met zich meebrengt. Bovendien maakt de eerder verkregen kennis het leren van een derde onderwerp in dezelfde categorie sneller en gemakkelijker.
Als we specifiek kijken naar development, is er op dit moment geen onderwerp of technologie die duidelijk zal verdwijnen in het komende jaar. Het lijkt erop dat de focus voornamelijk zal liggen op het verfijnen en optimaliseren van bestaande toepassingen. Kosten en duurzaamheid zijn hier voornamelijk de drijfveer.
De meeste bedrijven hebben hun cloudtransities voltooid of zijn hierin vergevorderd, waarbij veel applicaties nu cloud native zijn. Desondanks overwegen enkele bedrijven in specifieke gevallen delen van hun IT-infrastructuur terug te halen uit de cloud of te migreren naar hybride situaties. Vaak wordt deze overweging ingegeven door minder positieve ervaringen met cloud providers of wordt het gedreven door kostenoverwegingen.
De verwachting is dat deze discussie de komende jaren steeds prominenter zal worden en dat de strategie van "alles in de cloud" verschuift naar "in de cloud, tenzij."
Als we de backend-architectuur onder de loep nemen, is de verwachting dat er een spanningsveld zal ontstaan tussen micro-architecturen en monolieten. Gedurende vele jaren werden monolieten als ongunstig beschouwd. Ze moesten worden vernieuwd en werden als ongeschikt gezien voor de cloudtransformatie.
Echter, dankzij katalysatoren zoals Java-modules, Spring Modulith, en soms negatieve ervaringen met de complexiteit van een microservices-architectuur, wordt verwacht dat de vertrouwde monoliet in sommige bedrijven en situaties een nieuw leven zal krijgen.
Microservices-architecturen zullen gedurende vele jaren een prominente rol blijven spelen en zijn uitermate geschikt om schaalbare, cloud-native, gedecentraliseerde, en herbruikbare architecturen op te zetten. De complexiteit van deze systemen ligt in de onderlinge interactie.
De verwachting is dat er een niche zal ontstaan waar bedrijven met kleine softwareteams ervoor kiezen om de complexiteit van onderlinge systemen weer in de applicatie zelf te integreren. Dit doen ze door applicaties op te splitsen met behulp van modules in plaats van microservices, waardoor dezelfde ontkoppeling en herbruikbaarheid gefaciliteerd kan worden.
In de wereld van Artificial Intelligence bevinden we ons in een periode waar alle tech giganten op meerdere fronten strijden om de overhand op de markt. Op het gebied van zoekmachines, AI assistenten en cloudproviders concurreren voornamelijk dezelfde bedrijven om marktaandeel, met name Microsoft, Amazon en Google.
Wat opvalt, is dat Microsoft op al deze fronten zeer prominent aanwezig is:
Microsoft lijkt daarmee op meerdere fronten direct marktaandeel te willen veroveren, zowel op het gebied van zoekmachines ten opzichte van Google als in directe concurrentie met AWS door middel van AI cloudservices en code assistenten. Of dit zal resulteren in een situatie waar mensen eindelijk Bing gaan gebruiken, valt nog te bezien.
AI heeft de potentie om de markt volledig te ontwrichten en op dit moment zijn de meningen over de mate hiervan nog sterk verdeeld. Binnen CINQ zien we veel dynamiek rondom dit onderwerp en een actieve discussie over de toekomstige rol van AI binnen onze markt.
Het lijkt onvermijdelijk dat er verschuivingen zullen plaatsvinden, hoewel de mate van deze verschuivingen nog moeilijk te voorspellen is. Het is nog niet duidelijk of de AI samen met ons of in plaats van ons gaat programmeren. In het meest extreme geval zal de ontwikkelaar van vandaag een sturende en controlerende rol krijgen.
Als we specifiek kijken naar wat er zal verdwijnen, zullen AI tools delen van ons werk overnemen. De mate hiervan is echter nog moeilijk te voorspellen, omdat het afhangt van te veel factoren.
Hier bepalen we de potentie van technieken ten opzichte van de inspanning die het kost om ze eigen te maken.
Inspanning: Bij inspanning gaat het om de inspanning voor onze developers om kennis en kunde op te doen van een onderwerp. Hierbij telt mee dat als onze developers bij een klant al veel met soortgelijke technieken in contact komen, dat de inspanning over het algemeen lager zal liggen. Bijvoorbeeld de inspanning voor CINQ om nieuwe Cloud technieken op te pakken is laag, omdat de meeste developers al veel basis kennis hebben opgedaan bij verschillende klanten.
Potentieel: Bij potentieel gaat het niet alleen om het potentieel van de techniek in de hele markt, maar ook om impact op CINQ en zijn klanten. Voorbeeld: Quantum Computing heeft het potentieel de hele IT markt te veranderen. Echter voor de diensten die wij leveren is het aannemelijk dat Quantum Programming voorlopig nog niet aan de orde is. Hierdoor is de potentie laag.
Afbeelding 1: Potentieelbepaling 2024
Voor CINQ is het goed als de units elkaar beter kunnen vinden en hierdoor elkaar makkelijker kunnen ondersteunen.
Dit willen we bereiken door meer kruisbestuiving te bewerkstelligen tussen de units. Dit doen we door expertise met elkaar te delen en door gezamenlijk projecten te gaan doen.
Vanuit zowel de DevOps als de Data unit is er behoefte aan meer programmeer expertise. Hierbij kan de Development unit goed ondersteunen.
Omdat er steeds meer verantwoordelijkheid komt te liggen bij ontwikkelaars, is de kennis die de Data unit heeft van monitoring en observability zeer waardevol voor onze ontwikkelaars. Daarnaast kunnen we van deze expertise gebruikmaken om productieproblemen beter te analyseren en meer controle te hebben over ons productielandschap.