Standplaats: DEN HAAG
Duur: 01-05-2025 - 01-07-2025
Optie tot verlenging: Ja
Reageren voor: 04-04-2025
Opdrachtomschrijving
De opdracht bestaat uit doorontwikkeling van nldesignsystem.nl en gebruikersonderzoeken.nl zodat de open source componenten uit de community worden gebruikt en de NL Design System richtlijnen worden toegepast. De bedoeling is dat de website gebruikersonderzoeken.nl wordt doorontwikkeld zodat die op dezelfde manier onderhouden kan worden als nldesignsystem.nl.
Doel van de functie
De professional gaat de beste overheidswebsite van Nederland maken, die developers en designers inspireert om dat ook te doen. Het wordt zo makkelijk mogelijk gemaakt om de kunst af te kijken. Dat kan door de website open source te ontwikkelen, de voortgang en aanpak te delen met de community, gebruik te maken van de open source componenten van NL Design System, en modulaire en leesbare broncode te delen die zoveel mogelijk framework-onafhankelijk is.
Verantwoordelijkheden
De professional zorgt dat de andere professionals binnen het project makkelijk nieuwe documentatie kunnen toevoegen, dat voor evenementen een aanmeldingspagina beschikbaar komt en dat de community waar nodig op een veilige manier nieuwe informatie voor de websites kan aanleveren. Daarnaast zorgt de professional dat de informatie van de websites die door anderen hergebruikt kan worden via npm packages beschikbaar wordt gemaakt, zoals de Markdown documentatie of de component voortgang.
Activiteiten
• Refactoren van de websites nldesignsystem.nl en gebruikersonderzoeken.nl die nu met Docusaurus gebouwd zijn.
• Vertalen van visueel ontwerp in Figma naar toegankelijke HTML, CSS en Design Tokens JSON.
• Ontwikkelen van een nieuwe website volgens de Definition of Done.
• Verbeteren van de zoekfunctie binnen de websites.
• Verbeteren van de vindbaarheid van informatie op de websites met zoekmachines.
• Toevoegen van formulieren op de verschillende websites.
• Beschikbaar maken van nieuwe functionaliteiten op de websites.
• Toepassen van NL Design System componenten, richtlijnen en documentatie voor de websites.
• Feedback geven op componenten, richtlijnen en documentatie van NL Design System.
• Bijhouden van gebruikers statistieken in overleg met de Product Manager, danwel opdrachtgever.
• Vers & veilig houden van de websites door maandelijks code dependencies te updaten en Documentatie opleveren zodat anderen het beheer van de website kunnen doen.
• In overleg met Product Manager, danwel opdrachtgever worden acceptatiecriteria voor opleveringen opgesteld;
• In overleg met professionals uit het NL Design System Kernteam activiteiten uitvoeren voor valideren en uitbreiden van NL Design System door middel van:
• Een keer in de 2 weken op dinsdag: Sprint planningen.
• Indien nodig: Refinements in een privé Slack Huddle van het kernteam.
• Indien nodig: reviewen van pull requests van andere experts uit het project om vroegtijdig feedback te geven vanuit eigen expertise.
• Voortgang delen in het privé Slack kanaal van het kernteam en de NL Design System Heartbeat.
• Publieke Huddles om een nieuwe aanpak voor de NL Design System architectuur of Definition of Done te bepalen.
Gewenste profiel
• De kandidaat heeft ervaring met het toepassen van herbruikbare componenten uit Design Systems of Component Libraries.
• De kandidaat is pragmatisch en kan werk opdelen in kleine stappen en fases.
• De kandidaat kan zonder code-duplicatie onderdelen hergebruiken, zodat verbeteringen zowel in de bestaande website als de nieuwe website kunnen worden gebruikt.
• De kandidaat heeft uitgebreide ervaring HTML. Bijvoorbeeld met landmark roles, document order, semantische HTML, tabellen, formulieren, links en buttons, video, autocomplete, details/summary, custom elements, role, live regions, aria-labelledby, aria-describedby, aria-required, aria-invalid, aria-controls, aria-haspopup, aria-hidden, aria-current, aria-pressed, aria-sort, aria-activedescendant en aria-selected.
• De kandidaat heeft uitgebreide ervaring met CSS. Bijvoorbeeld met layouts met Grid en Flexbox, CSS logical properties, CSS custom properties, CSS variables, calc() voor fluid font sizes, container queries.
• De kandidaat heeft ervaring met het geoptimaliseerd laden van assets, zoals afbeeldingen, fonts en videos.
• De kandidaat heeft uitgebreide ervaring met ECMAScript. Bijvoorbeeld met: ES Modules, import(), URL, async/await, Map, Set, map/filter/reduce, nullish coalescing, class, import.meta, Promises, Object entries, destructuring.
• De kandidaat heeft ervaring met npm packages gebruiken, monorepositories en npm packages publiceren.
• De kandidaat heeft ervaring met progressive enhancement.
• De kandidaat heeft ervaring met het maken van Web Components en kan daarbij een goede afweging maken om Shadow DOM of Light DOM gebruiken.
• De kandidaat heeft ervaring met Node.js en ES Modules om server-side rendered (SSR) websites te maken.
Overige informatie
• Losse motivatie, inclusief beargumentering per bullet van de eisen en wensen waarom hier aan wordt voldaan, is verplicht.
• CV in Word formaat
• Hybride werken. Dinsdag op kantoor i.v.m. Scrum afspraken en 2-wekelijkse heartbeat sessie. Overige dagen in overleg.
Functie-eisen:
Minimaal 5 jaar ervaring met HTML en CSS technieken.
Minimaal 5 jaar ervaring met JavaScript.
Minimaal 3 jaar ervaring met GitHub of vergelijkbaar, waaronder samenwerken via merge/pull requests en het geven van code reviews.
Minimaal 3 jaar ervaring met ECMAScript en TypeScript.
Minimaal 3 jaar ervaring met Node.js en server-side rendering.
Minimaal 1 jaar ervaring met unittesten en end-to-end testen van front-end software.
Aantoonbare ervaring met websites maken die toegankelijk zijn volgens recente versies van WCAG.
de kandidaat over een goede schriftelijke beheersing van de Nederlandse taal beschikt;
de kandidaat goed mondeling kan samenwerken tijdens online en fysieke bijeenkomsten;
de kandidaat over een goede schriftelijke beheersing van de Engelse taal beschikt;
de kandidaat bij wil dragen aan het NL Design System;
Per wens het aantal jaar concrete ervaring dat de professional per wens heeft opgedaan in de context van deze aanvraag.
Wensen:
Aantoonbare ervaring met het ontwikkelen van front-end voor een headless CMS, in de afgelopen 5 jaar
Aantoonbare, ervaring met het ontwikkelen van een design system en design system documentatie, in de afgelopen 5 jaar.
Aantoonbare ervaring met static site generation en build scripts voor optimaliseren van performance, in de afgelopen 5 jaar.
Aantoonbare ervaring met het ontwikkelen van een complexe website zonder client-side framework, in de afgelopen 5 jaar
Aantoonbare ervaring met React toepassen voor een component library en een complexe website in de afgelopen 5 jaar