Technology

Bewaak jij ons (hart)ritme? Versterk ons Pacemaker Team!

Door 7 maart 2019 maart 13th, 2019 No Comments
Blog: Pragmatic Architect

Update: Pacemaker Team, new payroll engine & pragmatic architects

 

Pacemaker Team? Wat is dat ook alweer?

Het Pacemaker Team – binnen Prato beter bekend als “P-Team” – is een essentieel onderdeel van de organisatie van onze nieuwe loonmotor. Het P-Team richt zich op de analyse, architectuur, ontwikkeling en uitrol van de tweede generatie loonmotor. Dit team helpt actief de agile development teams en zorgt ervoor dat de resultaten van die teams op één lijn zitten en geïntegreerd kunnen worden tot een geolied systeem. Vorig jaar kon je al lezen hoe we dat allemaal organiseren, ondertussen is uit dat P-Team ook al een nieuw team geboren.

Wie zit er vandaag in het pacemaker team?

Vandaag bestaat het P-Team uit een product owner en twee architecten. Het etiket “pragmatisch” past eigenlijk bij elke Pratorian, maar omdat de rol “architect” in een IT-omgeving vele ladingen kan dekken spreken we toch graag over “pragmatische architecten” 🙂

Klinkt interessant, kan je iets meer vertellen over die rol van “pragmatisch architect”?

Een pragmatisch architect weet de balans te vinden tussen het abstracte, het technologische en het diepe. Iets te filosofisch misschien? Tweede poging dan: een ervaren developer die de opbouw en werking van een complex systeem begrijpt en kan overzien, die kan inzoomen op individuele componenten en de technologieën waarmee die gebouwd worden en die ook in de details van de code kan duiken om een specifiek probleem uit te spitten. De pragmatisch architect helpt de development teams om zo productief en zelfstandig mogelijk hun loonmotor microservice te bouwen en waakt er tegelijk over dat die ontwikkeling in lijn blijft met de evolutie van de microservices in de andere teams.

Pacemaker - alignment & facilitation

En de product owner?

De product owner focust zich op de functionaliteit van de nieuwe loonmotor en behoudt het overzicht op de volledige storymap en het budget. Daarnaast helpt ze de analisten in de development teams met het uitwerken en valideren van user stories en het vergelijken van berekende resultaten met resultaten van de eerste generatie loonmotor. Tot slot stemt ze continu de voortgang af met business experts binnen Prato, stakeholders en (potentiële) klanten.

Kan je iets vertellen over de architectuur van de nieuwe loonmotor?

Microservices had ik al vernoemd: meerdere Prato-teams bouwen en beheren hun eigen microservice(s) en laten die slim samenwerken tot een geolied systeem. Een manier ook om Conway’s Law in ons voordeel te gebruiken.
De samenwerking tussen de services gebeurt door berichten uit te wisselen via een queueing systeem. Daar komt meer bij kijken dan je op het eerste zicht zou denken: begrippen als eventual consistency, multi-tenancy, master data, message correlation, events en snapshots zijn ondertussen algemeen bekend in onze teams.

Microservices

Welke technologische keuzes zijn er al gemaakt?

De services worden ontwikkeld in C# op het .Net Core framework en gebruiken een NoSQL database technologie. De beheerschermen worden in Angular en Typescript ontwikkeld.
Operationeel draait alles in de cloud als een schaalbare SaaS oplossing, vandaag als Azure services, maar dat kan morgen ook in AWS of GCP zijn. Minstens even belangrijk als de technologische keuzes zijn de engineering practices die we gebruiken, zoals TDD, BDD, DDD, continuous integration & delivery.

Hoe ziet de toekomst van de nieuwe loonmotor eruit?

De ontwikkeling van een MVP voor de dienstenchequesector is bijna klaar. En omdat de eerste generatie loonmotor al draait, kunnen we de resultaten van deze tweede generatie loonmotor dagelijks vergelijken met productiedata. Feedback die ons helpt om continu bij te sturen.
Maar ook na de MVP en de komende jaren hebben we nog grootse plannen: de doorgedreven automatisering die we nu voor de dienstenchequesector voorzien, willen we uitbreiden naar andere sectoren en marktsegmenten. Tegelijk willen we inzetten op automatisering van facturatie, billing, real-time simulaties, machine learning, API integraties, “work yesterday pay today”, en nog veel meer…

Klinkt boeiend… hoe zou mijn dag eruitzien als pragmatisch architect in het P-Team?

Net als in elk ander team begint je dag met een korte stand-up meeting rond het teambord om het werk te synchroniseren. Zo spreken we bijvoorbeeld af wie vandaag welk team zal ondersteunen. Daarna ga je bij dat team zitten om de developers en analisten te helpen met de ontwikkeling van user stories voor de nieuwe loonmotor. Die hulp kan vele vormen aannemen: (pair-)programmeren, verborgen domein concepten expliciet maken, architectuurprincipes verduidelijken, testen, input geven voor nieuwe user stories, technische team reviews volgen, ontbrekende taken op het kanbanbord zichtbaar maken, presenteren op tweewekelijkse demo’s, je kennis delen in blog posts, de teamwerking verbeteren via retrospectives, (pre-)sales ondersteunen, etc.
Natuurlijk stem je heel frequent af met de andere (P-Team) collega’s, we werken niet voor niets allemaal samen op de Corda Campus. Boeiend en uitdagend is het dus zeker en vast!

 

Heb je interesse in een rol binnen het P-Team? Of wil je liever deel uitmaken van een development team en je concentreren op de bepaling en berekening van lonen, de betalingsflow, de DMFA microservice, de loonmotor UI, de PratoFlex frontoffice applicatie? Bekijk de vacatures en laat snel van je horen!