In het kort: Je gaat als lead developer en solution architect conceptuele oplossingen ontwerpen en bouwen, PoC-functionaliteiten ontwikkelen, stubs en testdata realiseren en bevindingen documenteren binnen een agile/scrumtraject met diverse ketenpartners.
Beschrijving project:
In het kader van het stelsel Bescherming Inkomen bij Beslagleggingen Proof of Concepts, worden er één of meerdere tijdelijke, conceptuele oplossing(en) zodat er inzicht verkregen wordt in:
– specificaties en startarchitectuur voor een gedragen minimale samenloopcheck
– een werkwijze voor de ontwikkeling van een voorziening binnen SKD
– voor- en nadelen van diverse oplossingsopties.
Twee situaties zullen worden beproefd:
– Er zal gestart worden met twee sprints ten behoeve van een recap en uitbreiding van de reeds uitgevoerde PoC dat de oplossing van de minimale samenloop check heeft beproefd.
– De tweede PoC is een nieuw onderwerp, de situatiecheck waarvoor de resterende sprints zijn ingepland.
Samen met SZW en de ketenpartners doorlopen we een kort cyclisch ontwikkeltraject. In dit traject ontwikkelt ICTU in een proefomgeving nieuwe functionaliteiten op basis van usecases, die vervolgens aan de proefapplicatie worden toegevoegd. Het resultaat wordt geëvalueerd door de beoogde gebruikers. Op basis van de feedback, ideeën en resultaten worden onderdelen verwijderd, aangepast of toegevoegd. Op deze manier werken we steeds verder aan de realisatie van een concept, waardoor de vereisten voor de uiteindelijke oplossing duidelijk worden. Met deze aanpak is het ook mogelijk om verschillende oplossingen voor een specifieke vraag te ontwikkelen, bouwen en toetsen.
De PoC wordt ontwikkeld in een proefomgeving met fictieve data zonder echte systeem-koppelingen: hiervoor worden stubs gebruikt. Functioneel is het beperkt tot usecases voor de minimale samenloopcheck.
De aanpak is agile/scrum-methodiek met een x-aantal sprints van 3 weken. ICTU organiseert de benodigde sessies, inhoudelijke contacten met ketenpartners en het ontwikkelteam. De opdrachtgever stuurt functioneel en zorgt dat de productowner het scrumteam richting geeft. De producten worden opgesteld en getoetst tijdens verschillende werksessies tussen SZW, ketenpartners en ICTU.
Aan het eind van het traject ligt er een gedragen set aan functionele en niet functionele requirements en een goed inzicht in de risico’s en randvoorwaarden, waarmee een toekomstige ontwikkel- en beheerpartij snel aan de slag kan.
Dit zal gebeuren in de vorm van een:
– Lessons learned document met succesvolle en niet-succesvolle oplossingen en patronen.
– Aanzet voor Project Start Architectuur (PSA) en een aanzet voor een Niet-Functionele-Eisen (NFE).
De voor deze opdracht ontwikkelde benodigde software wordt aan het eind van de opdracht weggegooid. ICTU zorgt voor de ontwikkelomgeving en ontwikkelcapaciteit, SZW voor de productowner, business analisten, programma-architect en domeinarchitect. Het ICTU projectteam bestaat uit een projectleider, software delivery manager, lead developer/solution architect en een junior/medior developer.
Omschrijving einde project:
Het project is in de tijd begrensd: timebox.
Welke rol heeft de professional binnen het project/programma:
De kandidaat wordt ingezet in de rol van Solution Architect en heeft als lead developer een rol als solution architect. De kandidaat heeft in de ‘ontwerp en toetssessies’ met de ketenpartners een belangrijke rol in het ophalen van de inbreng van deze ketenpartners.
Welke opdracht gaat de professional uitvoeren
De kandidaat heeft een brede opdracht. Op basis van de input vanuit de PO en de ketenpartners vertaalt de kandidaat de te toetsen vragen en te ontwerpen functionaliteiten naar een te realiseren conceptoplossing. Vervolgens realiseert de kandidaat deze conceptoplossing ook. De kandidaat kan stubs en testdata snel bouwen of met hulpmiddelen genereren. Kwaliteit van de code en de onderhoudbaarheid van de gerealiseerde conceptoplossing is hier geen onderwerp: de gerealiseerde code wordt na het traject niet meer gebruikt.
De activiteiten die horen bij het realiseren van de opdracht zijn:
– Het opleveren van werkende componenten waarmee de te beantwoorden vragen getoetst kunnen worden
– Opstellen of aanvullen van de technische documentatie
– Toetsen van de oplossingen aan de doelarchitectuur van de gehele schuldenketen
– Vertalen business doelen naar technische opties
– Ontwerpen van de ‘solution’
– Inrichten en onderhouden van de ontwikkelomgeving
– Het ontwikkelen van functionaliteit
– Visueel maken van de bevindingen en gerealiseerde componenten
– Presenteren tussentijdse demo op de programma demo.
Welke deelresultaten zal de professional dienen te behalen gedurende de opdracht:
Het resultaat van de inzet is het tijdig, zelfstandig en conform Agile/Scrum werkwijze autonoom opleveren van werkende concepten in afstemming met de andere leden van het ontwikkelteam. Hiervoor levert de kandidaat per sprint software. Als onderdeel van elke sprint levert de kandidaat een bijgewerkte versie van de documentatie op.
Welke eindresultaten zal de professional aan het einde van de opdracht dienen op te leveren.
Vastgelegde bevindingen in de vorm van documentatie (specificaties).
Wanneer is de opdracht afgerond en beëindigd:
De opdracht is begrensd in de tijd (timebox). De opdracht eindigt na de laatste overeengekomen sprint.
Over welke specifieke kennis beschikt de professional
De ontwikkelaar beschikt over de volgende specifieke kennis en vaardigheden die niet aanwezig zijn binnen het eigen personeel van de opdrachtgever en binnen ICTU:
– Ervaring met het ontwikkelen van complexe (enterprise) softwaresystemen
– Ervaring met informatiebeveiliging en security vraagstukken
– Ervaring met het ontwikkelen binnen de Java stack.
Gewenste profiel
Het betreft hier een ontwerptraject: het maken en toetsen van concepten, een verzameling spikes. Het product van dit traject is documentatie: een flinke verrijking van de requirements en mogelijke oplossingen zodat de partij die dit product gaat realiseren snel en goed kan starten. De gerealiseerde software is slechts een tijdelijk middel en geen onderdeel van de oplevering aan het einde van het traject. De oplossing waaraan we werken is voornamelijk back-end en berichtenverkeer met zeer weinig front-end. Het betreft een register of index die gevuld en geraadpleegd wordt door veel partijen. Deze context resulteert in een gewenst profiel van de kandidaat.
De kandidaat is:
– Creatief, kan conceptueel denken en dat vertalen naar concrete bouwblokken, durft (door) te vragen, heeft respect voor de kennis en ervaringen van collega’s die al jaren in dit domein bezig zijn
– Vooral bezig met- en wordt blij van het realiseren van de beoogde business doelen. De kandidaat is minder bezig met mooie technische oplossingen en innovatieve nieuwe technische ontwikkelingen
– Een goede gesprekspartner voor de productowner, architecten, informatiemanagers en solutionarchitecten van de klant en de betrokken ketenpartners
– In staat om de businessbehoefte en gevraagde functionaliteiten te vertalen in applicatieontwerpen
– Proactief en kritisch meedenken in de toets- en ontwerp sessies
– Heeft ervaring met proof of concept trajecten
– Is in staat snel en effectief stubs en testdata te genereren.
De kandidaat heeft relevante en diepgaande ervaring met:
– Vergelijkbare solution ontwerptrajecten
– Het maken van solution architecturen binnen een overheidscontext
– Softwareontwikkeltrajecten in een overheidscontext
– Berichtenverkeer in een overheidscontext
– Scrum/agile realisatietrajecten
De kandidaat kan:
– Strategisch denken en vooruitkijken
– Goed samenwerken in een scrumteam, teamplayer
– Zelfstandig werkende componenten realiseren, inclusief stubs
– Proactief, helder communiceren, besluitvaardig
– Aanpassingsvermogen en prioriteren wanneer noodzakelijk
– Actief luisteren en opstaan voor ideeën van anderen
– Goed samenwerken met een junior/medior ontwikkelaar, haalt het beste in deze collega naar boven. De kandidaat gebruikt de kennis en kunde van deze ontwikkelaar in het ontwerpproces en de refinements.
Locatie:
Den Haag
– Aantoonbare ervaring (>10 jaar) met het ontwikkelen van ketenbrede (enterprise) softwaresystemen
– Aantoonbare ervaring met het ontwikkelen van webservices
– Aantoonbare ervaring (>5 jaar) in de rol van lead developer
– Aantoonbare ervaring in de rol van solution architect of vergelijkbare rol
– WO werk- en denkniveau.
– De mate waarin de kandidaat aantoonbare, relevante ervaring heeft als lead developer/solution architect, of in een vergelijkbare gecombineerde rol, binnen proof-of-concept-, prototyping- en vergelijkbare ontwerptrajecten.Onder vergelijkbare trajecten worden trajecten verstaan waarin businessvragen zijn vertaald naar technische oplossingsrichtingen en werkende concepten, met als doel aannames te toetsen en requirements, architectuurkeuzes en bevindingen te concretiseren. De software dient daarbij als onderzoeksmiddel en niet als beoogd productieproduct.Toetsing vindt plaats op basis van het cv en een schriftelijke toelichting op relevante praktijkcases.Tijdens het verificatiegesprek wordt de beschreven toelichting verdiept en de eigen bijdrage en gemaakte afwegingen geverifieerd.
– De mate waarin de kandidaat aantoonbare, relevante ervaring heeft met het inrichten, gebruiken en onderhouden van ontwikkel- en testomgevingen met platformen en tooling zoals Kubernetes, Docker, Nexus, GitLab CI, Jenkins en Linux, of functioneel vergelijkbare technologieën.De score wordt bepaald op basis van de totale duur van de relevante, aantoonbaar gemaakte ervaring in het cv.Tijdens het verificatiegesprek wordt de beschreven toelichting verdiept en de eigen bijdrage en gemaakte afwegingen geverifieerd.
– De mate waarin de kandidaat aan de hand van concrete praktijkvoorbeelden aantoont effectief samen te werken met betrokken ketenpartijen en het eigen ontwikkelteam, en teamleden te begeleiden en te versterken in hun bijdrage aan het ontwerp- en ontwikkelproces.Daarbij wordt gelet op het actief ophalen en benutten van domeinkennis, het verbinden van businessbehoeften en technische mogelijkheden, het constructief omgaan met verschillende inzichten en het begeleiden van een junior/medior ontwikkelaar.Toetsing vindt plaats op basis van op beknopte schriftelijke toelichting in het cv.Tijdens het verificatiegesprek wordt de beschreven toelichting verdiept en de eigen bijdrage en gemaakte afwegingen geverifieerd.Aantoonbare ervaring als lead developer / solution architect bij overheids-projecten.Toetsing vindt plaats op basis van op beschreven ervaring in het cv.