Tooling in het traineeship Software Development

Een 10 voor tooling: Junior Software Specialist Julian Johnson ontwikkelt slimme oplossingen voor opdrachtgevers

khalid Toufik
23 december 2022
 | Leestijd:

De belofte dat onze bèta’s repeterende processen automatiseren, dataverwerking optimaliseren en de tools ontwikkelen die daarbij helpen wordt perfect geïllustreerd door junior software development specialist Julian Johnson. Zijn eerste opdracht bij Talent&Pro label House of Bèta is in volle gang. In zeven maanden ontwikkelde hij al werkend op de back office een webapplicatie met verschillende tools die, in zijn eigen woorden, “de werkzaamheden van collega’s efficiënter maken”. Zijn bijdrage aan die efficiëntieslag werd geprezen en beloond. Want al na zeven maanden maakt hij de overstap naar het DevOps team, waar hij in dienst van collega’s en klanten nu fulltime gaat werken aan de doorontwikkeling van mensen, processen en technologie.

House of Bèta staat bij opdrachtgevers bekend om zijn slimme data- en IT-specialisten. Waar komt jouw affiniteit met het programmeren van slimme oplossingen vandaan?

Bij mij zit het een beetje in het bloed. Mijn vader is al heel lang software developer. En het puzzelen en creëren heb ik van jongs af aan eigenlijk altijd leuk gevonden. Iets moois tekenen of een lego bouwwerk maken en aan mijn moeder laten zien; ik herinner me dat ik daar altijd een trots gevoel aan overhield. En dat is eigenlijk niet veranderd. Die drang om te creëren was de reden dat ik koos voor een bachelor Industrieel Ontwerpen aan de TU Delft. Die combinatie heeft zich vervolgens gemanifesteerd in mijn voorliefde voor programmeren. Daarbij creëer je vaak vanuit niets iets wat mooi én functioneel is.

Hoe heeft jouw interesse zich van Industrieel Ontwerpen naar programmeren ontwikkeld?

Mijn interesse in programmeren is niet nieuw. Al ruim voor de start van mijn bachelor Industrieel Ontwerpen aan de TU Delft heb ik daar ervaring mee opgedaan. Tijdens Informatica-lessen op de middelbare school bijvoorbeeld. En tijdens mijn bachelor heb ik bewust gekozen voor de minor Computer Science. Ik heb toen een halfjaar eigenlijk alleen maar geprogrammeerd. Het was leuk, ik was er goed in en ik wilde er nog meer mee doen. Dat kon wel deels binnen de bachelor Industrieel Ontwerpen, maar de focus ligt toch wel elders bij die opleiding. Een master Computer Science was vanwege de specifieke toelatingseisen niet mogelijk. Daarom ben ik op zoek gegaan naar een traineeship waarin ik kan leren én creëren tegelijk. Die vond ik bij House of Bèta.

 

“Een master Computer Science was vanwege de specifieke toelatingseisen niet mogelijk. Daarom ben ik op zoek gegaan naar een traineeship waarin ik kan leren én creëren tegelijk. Die vond ik bij House of Bèta.”

 

Een eerste opdracht bij House of Bèta betekent vaak met de voeten in de klei meekijken en meewerken bij een opdrachtgever. Hoe was dat voor jou?

Dat beviel goed. Ik kwam op de back office terecht van een verzekeringsmaatschappij die producten aanbiedt op het gebied van overlijdensrisico, pensioenen en hypotheken. Het was goed om de producten, systemen en processen al werkend te leren kennen. Het administratiesysteem van deze opdrachtgever werkte nog niet optimaal. Dat bood me de ruimte om te knutselen en oplossingen te zoeken. Zo kon ik met behulp van tooling fouten opsporen en corrigeren en bepaalde werkzaamheden automatiseren en efficiënter inrichten.

Je hebt onder andere een toolkit ontwikkeld met handige toepassingen die het team een hoop tijd besparen. Waar moeten we dan aan denken?

Ik heb onder andere een KVK UBO extractor, een Excel template validatie tool en een tool voor automatische PDF-correcties ontwikkeld. Voor die tools heb ik meestal gebruikgemaakt van Python. Python beschikt over een hoop handige pakketjes met functionaliteiten die je kunt toevoegen aan je script. Bijvoorbeeld met instructies voor het uitlezen van PDF-bestanden, valideren van gegevens, analyseren van data en implementeren van nieuwe functionaliteiten. Alle tools verzamel ik in een toolkit zodat ze beschikbaar blijven voor het team bij deze opdrachtgever.

Klinkt complex, hoe helpt het de opdrachtgever precies?

Met tooling kun je heel veel, waaronder taken automatiseren en applicaties met elkaar laten communiceren. Ik zal de KVK UBO extractor als voorbeeld nemen. Deze kwam tot stand toen het team een hoop CDD-checks (Customer Due Dilligence, red.) moest doen vanwege een nieuw sanctiepakket door de oorlog in Oekraïne. Om zogeheten ‘Ultimate Beneficial Owners’ in ons klantenbestand op te sporen die op de sanctielijst staan moesten een heleboel KVK-uittreksels stuk voor stuk doorgespit worden. Met behulp van mijn tool konden we met een aantal muisklikken de benodigde informatie uit een KVK-uittreksel onttrekken. Het is minder foutgevoelig en heeft ons veel werk bespaard.

 

“Met behulp van mijn tool konden we met een aantal muisklikken de benodigde informatie uit een KVK-uittreksel onttrekken. Het is minder foutgevoelig en heeft ons veel werk bespaard.”

 

Bij een ander project zagen we fouten in de UPO’s (Uniform Pensioenoverzicht) van deelnemers die het systeem genereerde. Om die te corrigeren moesten PDF’s, Excelbestanden, een online tool en het administratiesysteem met elkaar communiceren. De fouten heb ik gegroepeerd en per groep heb ik een script geschreven dat de juiste URM-berekening (Uniforme Rekenmethodiek) maakte en de fouten in de PDF’jes automatisch corrigeerde. Dit project heeft het team uiteindelijk dagen winst opgeleverd.

Klinkt simpel. Wat heb je nodig om goed te programmeren?

Ik weet het niet precies, maar ik denk dat een stukje inzicht helpt. Bij mij komt dat inzicht van mijn ervaring met visueel programmeren. De logica van het programmeren zit er dan ingebakken. Programmeren is niet meer dan een reeks instructies invoeren. Als je weet wat je wilt bereiken, kun je als het goed is ook beredeneren wat de stappen ernaartoe, of de instructies, moeten zijn. Het vergt misschien een bepaalde manier van denken. En goed kunnen googelen helpt ook. Er zijn genoeg ‘problemen’ te vinden online die lijken op jouw probleem en die je op weg kunnen helpen. Ik weet eigenlijk bijna nooit vooraf wat ik moet doen. Daar kom ik al onderzoekend achter.

Handige vaardigheden om te hebben. Heb je persoonlijk nog veel aan je programmeerkunsten?

Zeker. Tooling helpt het leven makkelijker maken. Dat kun je op je werk doen, maar ook privé. Ik bestel bijvoorbeeld met enige regelmaat merchandise uit Japan. Het kan soms een maand duren voordat ik het pakketje binnen heb en ik vind het onhandig dat ik naar de website moet om de status van mijn bestelling te bekijken. Daarom heb ik een app ontwikkeld die automatisch updates naar mijn telefoon verstuurt. Ik heb ook een videogame prototype ontwikkeld en onlangs geëxperimenteerd met een tool voor ‘text to speech’. Daar zijn hele leuke engines voor en je kunt de tool bijvoorbeeld aansluiten op een live chat. Voor de feestdagen overweeg ik een kerstwensen-app te ontwikkelen voor de familie. Het fijnste aan programmeren is dat het nuttig én leuk kan zijn.

Wat zijn je wensen en doelen voor de nabije toekomst?

Ik zit nu nog in de oriëntatiefase van mijn traineeship bij House of Bèta. Ik was bij mijn sollicitatie gefocust op het software development-traject, maar momenteel ben ik bezig met de cursus Data Modelleren. Ik vind data en development beide interessant, maar uiteindelijk wil ik iets doen waarvan ik aan het einde dag van mijn werkdag denk: het is een leuke dag geweest en ik heb mooie dingen kunnen maken en ontwikkelen die ook het nodige denkwerk vereisten. Als ik daar mijn boterham mee kan verdienen is het natuurlijk mooi meegenomen.

Ook als development specialist slimme tools ontwikkelen zodat bedrijven slimmer en efficiënter kunnen werken?

Bekijk de traineeships bij House of Bèta of Talent&Pro, kies jouw startpunt en zet je eigen ontwikkeling voort bij Talent&Pro.

Deel dit artikel

Welk traineeship past bij jou?

Waar ligt jouw ambitie? Wat is jouw talent? Met de Talent&Pro-test kun je snel zien welk traineeship past bij jouw skills en persoonlijkheid.

Iphone hand vrijstaand 1_edit_TPmodellen_v2-01