Van bioloog naar software engineer

In de levenswetenschappen word je getraind om te denken in termen van ecologische, moleculaire en cellulaire systemen. Die systemen bestaan uit cellen, moleculen of organismen die op elkaars regulatie ingrijpen.

Op ecologisch niveau zijn er soorten die concurreren om grondstoffen, op individu niveau zijn er organen die signalen en hormonen uitzenden en op cellulair niveau wordt de aanmaak van moleculen gereguleerd door de concentratie van andere moleculen. Al met al draait de studie van levende dingen om het in kaart brengen van complexe netwerken van interacterende objecten, op meerdere schalen van tijd en resolutie.

Zodra ik met Object Oriented Programming in aanraking kwam zag ik veel van deze ideeën terugkomen, alleen nu als ontwikkelaar. Plotseling was ik bezig met het afbakenen en definiëren van de interactie tussen twee objecten! Door het juiste niveau aan encapsulatie en toegankelijkheid te kiezen voor de methoden die ik schreef kon ik kiezen welke objecten op elkaars interne staat mochten ingrijpen en welke niet.

Ook op groter niveau kun je deze analogie terug zien komen. Moderne computersystemen bestaan zelden uit een enkel programma. Veel vaker werken we met een groep applicaties die bestanden of berichten delen en reageren op de berichten van anderen. Wederom komt het systeemdenken van pas bij het maken van de juiste keuzes over integratie!

Al met al sluit een studie in de levenswetenschappen ontzettend goed aan op een carrière in software engineering, mits je het analytische aspect van je studie leuk vindt.