Projecten
2016

Online casino

Anderhalf jaar in een internationaal team gewerkt aan de front-end portal van een online casino game platform.

Angular 2Angular 4Angular UniversalVert.xNode.jsJava 8

Anderhalf jaar lang heb ik in een internationaal team gewerkt aan de front-end portal van een online casino game platform. Het was een omgeving waarin techniek, geld, regelgeving en gebruikerservaring strak op elkaar moesten aansluiten — geen enkel onderdeel kon zomaar een steekje laten vallen.

Mijn verantwoordelijkheid lag bij het bouwen van een Single Page Application op basis van Angular 2 met TypeScript voor de front-end, en Vert.x voor de API-laag. In het portaal konden spelers veilig met echt geld gokken in HTML5- en Flash-games. Veilig betekende hier alles tegelijk: technisch (sessies, transacties, betrouwbaarheid), juridisch (compliance, leeftijdsverificatie, regio-restricties) en mentaal (zelf-uitsluiting, limieten, duidelijke informatie).

Het bouwen van een SPA voor zo'n platform is een ander verhaal dan een doorsnee SPA. Spelers verwachten een ervaring die zo dicht mogelijk bij een native app komt — directe reacties, vloeiende overgangen, geen onnodige navigatie tussen functionele schermen — terwijl onder de motorkap continu communicatie loopt met betalings­providers, gaming­providers en interne systemen voor account, bonus en historie.

Een groot deel van mijn werk zat in die integraties. Een betaling start in het portaal, wordt afgehandeld bij een externe provider en moet daarna binnen seconden weer leiden tot een bijgewerkt saldo en een speelervaring zonder hapering. Bonussen, vrije spins en lojaliteitsregels grijpen op exact dezelfde stromen in. Eén verkeerde aanname over volgorde of timing en de hele speelbeleving kraakt.

Tegelijk moest het allemaal goed testbaar zijn. We hebben veel geïnvesteerd in unit tests met Jasmine en Karma, en in scenario's die complete spelersreizen nabootsten. Voor zoiets als een casino is dat niet alleen technisch verstandig maar ook organisatorisch: je wil áltijd kunnen aantonen waar geld is gebleven en welke gebeurtenissen in welke volgorde hebben plaatsgevonden.

Werken in een internationaal team van 's morgens vroeg overlapte met collega's in andere tijdzones leerde me veel over asynchrone samenwerking: heldere documentatie, duidelijke pull requests en discipline in commits. Een uitdagend project waarin ik mijn vaardigheden in een complexe en dynamische omgeving kon toepassen — en waarin de combinatie van techniek, regulering en gebruikerservaring me blijvend scherp heeft gehouden.

Meer werk

Andere projecten