De beste boeken en bronnen voor aankomende software-architecten

books for architects by mark noten

 

De term “software architect” is niet helemaal eenduidig. Voor degenen die meer bekend zijn met de functietitel, zal dit artikel vooral gaan over welk trainingsmateriaal ik aanbeveel om een solution architect te worden.

Laten we beginnen met fysieke boeken, en er is er één die er voor mij uitspringt: Domain-Driven Design van Eric Evans. Je vraagt je misschien af waarom dit 20 jaar oude boek nog steeds relevant is voor moderne applicatie architecturen zoals event-driven microservices. Wanneer je een microservices architectuur ontwerpt, moet je een goede manier vinden om functionaliteit te partitioneren in een enkele microservice. De beste manier om dit te doen is om één enkele microservice verantwoordelijk te maken voor een deel van je domein of begrensde context.

Voor architectonische ontwerppatronen zoals Event Sourcing en CQRS (Command Query Responsibility Segregation), die ik onlangs in een project heb geïmplementeerd, is dit boek opnieuw een geweldige bron. Onze event streams voor de event store (audit log) zijn gepartitioneerd voor onze Aggregate Root domein entiteiten. Tot slot, als je te maken hebt met een legacy-systeem, moet je vaak een anti-corruptie laag creëren. Nog een belangrijk concept uit het boek.

domain-driven design book by eric evans

Een andere goede manier om op de hoogte te blijven of je geheugen op te frissen over een bepaald softwarearchitectuur onderwerp is om je te abonneren op nieuwsbrieven die gespecialiseerd zijn in software engineering. De nieuwsbrieven ByteByteGo en Refactoring van Substack, waarop ik geabonneerd ben, worden aanbevolen door mijn collega’s. Beide hebben een betaald abonnement.

Beide abonnementen hebben een betaald abonnement, maar je kunt veel informatie gratis krijgen. Meestal zijn de onderwerpen gewoon een snelle opfrisser over hoe dingen achter de schermen werken en kost het maar een paar minuten om te lezen. Ik verwacht niet dat je echt diepgaande kennis opdoet door deze nieuwsbrieven te lezen, maar het helpt echt om je kennis te verbreden. Natuurlijk is er online veel informatie beschikbaar. Ik lees vaak artikelen over software engineering op Medium.

Er is geen vervanging voor praktijkervaring op een klant project, maar wat als je een nieuw technologiegebied wilt verkennen waarin je geen ervaring hebt? De meeste klanten laten je niet eens aan een project beginnen als je geen ervaring hebt. We weten allemaal dat je met de

ervaring die je hebt en de basiskennis snel zult leren, maar je hebt een kans nodig om je waarde te laten zien in een sollicitatiegesprek. Vorig jaar werd ik niet geselecteerd voor een Enterprise Architect interview omdat ik geen ervaring met de Sparx Enterprise Architect tool in mijn cv had staan. Ik heb Togaf en Archimate certificeringen, maar ervaring met deze tool leek me belangrijker. Stel je voor!

Je werkt bijvoorbeeld voor een klant en zij hebben native cloud ontwikkeling op Azure maar je wilt vertrouwd raken met AWS cloud ontwikkeling. Ik raad je aan om een of meer cursussen op Udemy te volgen, zoals de cursus voor een gecertificeerde AWS Certified Architect Associate.

Het mooie van Udemy cursussen is dat je niet elke dag veel tijd nodig hebt om te leren. Gemiddeld een half uur per dag leren zou voor iedereen haalbaar moeten zijn. Zelf download ik de cursussen om ze in de trein te bekijken. Ik beperk ook de tijd die ik aan tv-kijken besteed tot een minimum. Mijn lijst van Udemy-cursussen die ik het afgelopen jaar heb gekocht is veel langer dan dit, maar dit zijn mijn top cursussen:

  • Business Architecture Fundamentals with TOGAF 10 Standard
  • EA Part 1 & 2 with TOGAF 10 Standard
  • Enterprise Architecture by Example by Chris B Behrens
  • Ultimate AWS Certified Solutions Architect Associate/Professional by Stephane Marek
  • AWS Certified Developer Associate
  • AZ-204 Developing solutions for Microsoft Azure
  • Kubernetes Certified Application Developer (CKAD)
  • Certified Kubernetes Administrator (CKA) – Real World
  • HashiCorp Certified: Terraform Associate
  • LLM engineering: Master AI, Large Language Models & Agents by Ed Donner

Veel van deze cursussen gaan meer over DevOps of software engineering, maar voor mij is de beste solution architect iemand die zijn handen vuil maakt. Het is zo nuttig om hands-on kennis te hebben om het ontwikkelteam de solution architectuur te laten volgen omdat het een pragmatisch en realistisch ontwerp is. Als je voor certificering gaat, bestel dan ook altijd de oefentests. Een certificeringsproces kan duur zijn, dus zorg ervoor dat je goed voorbereid bent.

Met behulp van de Udemy-cursussen kon ik 8 certificaten verdienen in iets meer dan zes maanden. Je kunt je conclusies trekken over de kwaliteit van de certificeringen, maar ik vind het nog steeds een mooie prestatie. Maar het belangrijkste is dat je met een certificaat de kans krijgt om een project te starten als software architect, zelfs als je nog niet genoeg ervaring hebt. Een kans om een nieuw project te starten is misschien alles wat je nodig hebt.

Dat was mijn korte overzicht van welke boeken of andere bronnen nuttig kunnen zijn als je wilt doorgroeien tot software architect.

Benieuwd welke boeken of bronnen je zou aanraden?