Ervaring
-
Software engineer (staff)
Het aansturen van de uitbouw van nieuwe domeinen binnen het Acquire-team, in combinatie met platformoverkoepelende initiatieven.
Het aansturen van de uitbouw van nieuwe domeinen binnen het Acquire-team, in combinatie met platformoverkoepelende initiatieven.
- Ik heb leiding gegeven aan de eerste opbouw van de Receiver Bounded Context — inclusief de fundamentele entiteiten, het filterframework, het beschikbaarheidsmodel, de eerste service-to-service-eindpunten en de vroege integratie-/systeemtestinfrastructuur — en heb latere iteraties overgedragen aan andere verantwoordelijken.
- Een volledig nieuwe, onbegrensde context voor promoties is opgezet en ontwikkeld: een geaggregeerde root, een entiteit voor targeting-instellingen, de couponlevenscyclus (entiteiten plus beschikbaarheids-/gebruiks-/aanmaakservices), een toewijzingsdomein (entiteiten, gebeurtenissen, contracten, processor) en een routebewuste couponprovider.
- De verouderde API's voor ontvangers worden geleidelijk uitgefaseerd ten gunste van endpoints die eigendom zijn van Bounded Context, en dit geldt voor fabrieken, batchprocessen en interne tools.
- Ik heb een bedrijfsbrede PHP HTTP-clientbibliotheek ontworpen en uitgebracht – gebaseerd op factory-compositie, trait-gestuurd hergebruik, JWT-afgedwongen request factories en Symfony autowiring – en de implementatie ervan in twee services gestimuleerd.
- Ik heb leiding gegeven aan de uitrol van AsyncAPI als de contractgerichte documentatiestandaard van het team: pre-commit schemavalidatie, contracttests die de serialisatie van entiteiten afstemmen op de gepubliceerde schema's, en een schriftelijk beoordelingsproces voor downstreamgebruikers.
- Stuurde de bijdrage van het Acquire-team aan een dienstoverkoepelend programma voor gegevensbewaring dat drie diensten omvatte.
- We hebben AI-ondersteunde ontwikkeltools in het team geïntroduceerd: agentcontextbestanden, gestructureerde commandoworkflows, scheiding van PRD/plan en vaardigheden voor pre-planninganalyse.
- Terugkerend betrouwbaarheidswerk: optimistisch vergrendelen, afhandeling van integriteitsbeperkingen, oplossingen voor racecondities bij invoegingen met duplicatencontrole, N+1-remediatie, onderzoek naar DLQ's, gecontroleerd afsluiten van workers.
- Parallel aan het beheer van Refer-a-Friend: opruimen van verouderde patronen, upgraden van de PHP-versie, automatiseren van afhankelijkheden, systematisch verwijderen van feature-toggle-functionaliteit.
-
Software engineer (staff)
Ik blijf leiding geven aan het 'Refer-a-Friend'-programma binnen het Acquire-team, met een uitgebreidere reikwijdte voor platform- en serviceoverkoepe…
Ik blijf leiding geven aan het 'Refer-a-Friend'-programma binnen het Acquire-team, met een uitgebreidere reikwijdte voor platform- en serviceoverkoepelende vraagstukken.
- De RAF Bounded Context en het bijbehorende datamodel zijn zodanig verbeterd dat een latere extractie van servicegegevens - uitgevoerd door een andere engineer - binnen een paar dagen kon worden afgerond zonder productieproblemen.
- Grootschalige herstructureringen van datastores uitgevoerd, afgestemd op de nieuwe servicegrenzen, waardoor de queryprestaties en de onderhoudbaarheid op lange termijn zijn verbeterd.
- Verbeterde observatiemogelijkheden voor RAF met specifieke meetwaarden, waarschuwingen en dashboards, waardoor productieproblemen sneller worden opgespoord.
- Droeg bij aan een bedrijfsbrede, gedeelde bibliotheek voor foutafhandeling en HTTP-clientgedrag, die later in meerdere services werd overgenomen.
- Ik heb de RFC opgesteld die het domeinmodel voor ontvangers definieert en zo integratiepatronen tussen teams voor afnemers vormgeeft.
- Een reeks product- en platformverbeteringen doorgevoerd: omleidingen van RAF-links, toewijzing van campagnes na gebeurtenissen van identiteitsaanbieders, controles op gerelateerde profielen en vrienden, aanpassing van de programma-valuta, correcties van het totale beloningsbedrag en verfijningen in de herberekening van campagnes.
- Verbeterde onboarding- en marketingtoestemmingsprocessen in samenwerking met de werkgroep Vertrouwen & Regelgeving.
- Doorlopend werk aan de ontwikkelaarservaring: gedeelde enumeraties, ergonomie van de wachtrij en integratieverbeteringen rondom favoriete corridors en transactiegegevens.
-
Externe backend-webontwikkelaar
Onderdeel van het Acquire-team, verantwoordelijk voor de herziening van het 'Vrienden uitnodigen'-platform.
Onderdeel van het Acquire-team, verantwoordelijk voor de herziening van het 'Vrienden uitnodigen'-platform.
- Ik heb een nieuwe Bounded Context ontworpen en geïmplementeerd voor het 'Vrienden doorverwijzen'-domein, waarbij de bestaande functionaliteit is gemigreerd naar een duidelijkere architectuur en de koppeling met het omliggende platform voor geldovermakingen is verminderd.
- Ik was verantwoordelijk voor de volledige levenscyclus van het gebruikersbeheer van Advocate/Friend-accounts binnen de nieuwe context, inclusief identiteit, geschiktheid en statusovergangen.
- Verantwoordelijk voor programmabeheer - programma's, campagnes en promotiestrategieën - en introduceerde ondersteuning voor meerdere gelijktijdige campagnes per programma.
- De handmatige controles op de geschiktheid van gebruikers zijn vervangen door een geautomatiseerd, uitbreidbaar controlekader, waardoor nieuwe regels kunnen worden toegevoegd zonder de kernprocessen aan te tasten.
- Gestandaardiseerde API-responsstructuren en foutafhandeling voor alle RAF-eindpunten, wat resulteert in consistente entiteitscontracten, ongeacht het aanroepende oppervlak.
- Verbeterde gestructureerde registratie en wachtrijbeheer; het toevoegen van een nieuwe wachtrij was voorheen een meerdaags proces, maar nu in één ochtend afgerond.
- De doorlooptijd voor bugfixes en de levering van nieuwe functies is verkort; diverse verbeteringen worden nu binnen enkele uren in plaats van in sprints uitgebracht.
- Er is een cadans van Epic/Story/Sub-task-indeling vastgesteld die door het team wordt gebruikt.
- Verbeterde platformstabiliteit na de migratie.
-
Externe backend-webontwikkelaar
Help mee met het onderhouden van de huidige fintech-oplossing en help bij de overgang van delen van het systeem naar een microservice-architectuur.
Help mee met het onderhouden van de huidige fintech-oplossing en help bij de overgang van delen van het systeem naar een microservice-architectuur.
- Gebaseerd op LAMP (Laravel & Symfony).
- Duidelijke scheiding tussen applicatie- en domeinlagen (en framework en infrastructuur).
- Domeingedreven ontwerp en testgedreven ontwikkeling.
- Het toepassen van de beste industriestandaarden (ontwerppatronen/ontwerpprincipes).
-
Externe backend-webontwikkelaar
Het ontwikkelen van een handelsplatform voor transacties met financiële activa.
Het ontwikkelen van een handelsplatform voor transacties met financiële activa.
Een event-driven microservice-project, onderdeel van een grotere Fintech SaaS-oplossing, met blockchain-tokens en e-walletbeheer. Gebaseerd op LAMP (Laravel).
- Ontwikkelen met behulp van microservices en een gebeurtenisgestuurde architectuur.
- Duidelijke scheiding tussen de applicatielaag en de domeinlaag.
- Domeingedreven ontwerp en testgedreven ontwikkeling.
- Het toepassen van de beste industriestandaarden (ontwerppatronen/ontwerpprincipes).
-
Externe backend-webontwikkelaar
The Interaction Design Foundation
Help mee met de ontwikkeling en het onderhoud van het SaaS-product van het bedrijf.
-
Fullstack webontwikkelaar op afstand / teamleider
redWEB ApS
Het belangrijkste product van het bedrijf herschrijven en voorzien van een betrouwbaardere architectuur en een beter ontwerp. Zowel de backend- als de…
Het belangrijkste product van het bedrijf herschrijven en voorzien van een betrouwbaardere architectuur en een beter ontwerp. Zowel de backend- als de frontend-kernfunctionaliteit ontwikkelen, met een sterke scheiding van verantwoordelijkheden, ter ondersteuning van toekomstige platformontwikkeling.
Overgestapt naar een op Composer gebaseerd pakketsysteem, dat platformonafhankelijk is (PHP). Hierdoor kan het platform in verschillende backend-frameworks/platforms worden geïnstalleerd en kunnen templates/interfaces in de frontend onafhankelijk van elkaar worden aangepast.
Frontend-ontwikkeling met ES6, HTML5 en CSS3 (LESS). Backend-ontwikkeling met SOA/N-Tier-architecturen en DDD. Toepassing van de beste industriestandaarden (ontwerppatronen/ontwerpprincipes).
Duidelijke scheiding tussen de applicatielaag en het domein.
Volledige TDD voor het project (domein en frontend). Volledige unit- en integratietests in het domein. Unit- en acceptatietests in de applicatielaag (nog niet afgerond).
-
Onafhankelijk softwareconsultant / oprichter
Backend engineer op staffniveau en zelfstandig consultant. Meer dan 20 jaar ervaring met het bouwen van productieklare PHP-systemen voor international…
Backend engineer op staffniveau en zelfstandig consultant. Meer dan 20 jaar ervaring met het bouwen van productieklare PHP-systemen voor internationale klanten in de fintech-, betaal-, SaaS-, onderwijs- en cybersecuritysector. Specialist in Domain-Driven Design (DDD), Event-Driven Architecture en microservices.
Op afstand, gevestigd in de EU.
ARCHITECTUUR & DOMEINMODELLERING - Meerdere volledig nieuwe Bounded Contexts opgeleverd - inclusief aggregate roots, domeingebeurtenissen, contracten en service-to-service REST API's - waarbij verouderde functionaliteit uit monolithische applicaties is gemigreerd naar duidelijk gedefinieerde domeinen.
- Ik heb een platformonafhankelijk, op Composer gebaseerd pakketsysteem ontworpen dat inzetbaar is op meerdere PHP-frameworks met verwisselbare frontends.
PLATFORM- EN API-STANDAARDEN - Bedrijfsbrede gedeelde bibliotheken - HTTP-client met factory-compositie, JWT-afgedwongen request factories en Symfony-autowiring, plus gedeelde foutafhandeling - overgenomen door meerdere services.
- Ik heb leiding gegeven aan de implementatie van het AsyncAPI contract-first model: pre-commit schemavalidatie, contracttests die serialisatie koppelen aan gepubliceerde schema's en een schriftelijk beoordelingsproces voor de downstream-afdeling.
BETROUWBAARHEID & OBSERVEERBAARHEID - Een Bounded Context en het bijbehorende datamodel zijn geoptimaliseerd, waardoor een latere extractie naar een zelfstandige microservice binnen enkele dagen kon worden gelanceerd, zonder incidenten in de productieomgeving.
- Terugkerende faalcategorieën geëlimineerd: optimistisch vergrendelen, raceomstandigheden, N+1-query's, wachtrijen voor onbestelbare berichten, gecontroleerde afsluiting van de worker.
- Met behulp van statistieken, waarschuwingen en dashboards wordt de detectietijd verkort.
LEVERING & AI-ONDERSTEUNDE ENGINEERING - Het onboardingproces in de wachtrij is teruggebracht van meerdere dagen naar één ochtend; de doorlooptijd voor bugfixes is verkort van sprints naar uren.
- We hebben AI-ondersteunde ontwikkelingsworkflows geïntroduceerd - agentcontextbestanden, gestructureerde commandopipelines, scheiding van PRD/Plan, pre-planninganalyse - op productiecodebases.
- Leiding gegeven aan en gecoacht van engineers; de Epic/Story/Sub-task-cadans wordt nog steeds gebruikt na de overdracht.
-
CTO
Construções Europa Ar-lindo, S.A
IT-infrastructuurmanager. Supervisor ERP-implementaties. Integratie en automatisering van eigen en externe systemen.
IT-infrastructuurmanager. Supervisor ERP-implementaties. Integratie en automatisering van eigen en externe systemen.
Interne workflowmonitoring, auditing en automatisering. Applicatieontwikkeling voor BI (Business Intelligence). Auditing en rapportage voor DSS (Decision Support Systems).
Web- en Windows-ontwikkeling. Beheer van telecommunicatie.
-
IT-manager
Habitâmega-Construções, S.A.
IT-infrastructuurmanager. ERP-ontwikkeling en -aanpassing. Validators, automatiseringen, audits en rapportages in PHC Advanced en Enterprise.
IT-infrastructuurmanager. ERP-ontwikkeling en -aanpassing. Validators, automatiseringen, audits en rapportages in PHC Advanced en Enterprise.
Implementatie en aanpassing van een domoticasysteem.
-
Webontwikkelaar
DaPitch
Ontwikkeling van een Rich Interface Application (RIA), met uitgebreid gebruik van JavaScript, die het gedrag van een desktopapplicatie nabootst. Gebru…
Ontwikkeling van een Rich Interface Application (RIA), met uitgebreid gebruik van JavaScript, die het gedrag van een desktopapplicatie nabootst. Gebruikersgegenereerde content (UGC) en door het systeem gegenereerde content. Volledig zelfbeheer van het systeem.
LAMP Stack.
-
Desktopontwikkelaar
QuintaSinfonia, S.A.
Desktopontwikkeling voor een van de drie grootste softwarebedrijven voor schoolmanagement in het land. Migratie van VB6 naar WinForms 2.0. Ontwikkelin…
Desktopontwikkeling voor een van de drie grootste softwarebedrijven voor schoolmanagement in het land. Migratie van VB6 naar WinForms 2.0. Ontwikkeling van een automatisch updatesysteem voor de applicatie.
-
Softwareprogrammeur
Instituto Universitário da Maia
Webform-ontwikkeling in .NET 1.1. Multimedia-ontwerp en -ontwikkeling in ActionScript en Flash.