De activiteiten die horen bij het realiseren van de opdracht zijn:
• 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.
• 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:
o Een keer in de 2 weken op dinsdag: Sprint planningen.
o Indien nodig: Refinements in een privé Slack Huddle van het kernteam.
o Indien nodig: reviewen van pull requests van andere experts uit het project om vroegtijdig feedback te geven vanuit eigen expertise.
o Voortgang delen in het privé Slack kanaal van het kernteam en de NL Design System Heartbeat.
o Publieke Huddles om een nieuwe aanpak voor de NL Design System architectuur of Definition of Done te bepalen.
Welke deelresultaten zal de professional dienen te behalen gedurende de opdracht:
• De componenten pagina’s zijn verbeterd zodat alle beschikbare informatie makkelijk te vinden en gebruiken is.
• Het component overzicht is verbeterd om te zorgen dat gebruikers componenten zo makkelijk mogelijk kunnen vinden.
• Delen van informatie over community componenten is makkelijker gemaakt.
• Verbeteren van het proces om delen van de component documentatie met anderen te delen.
• Doorontwikkeling van de Node.js package om component informatie uit GitHub projectborden op te halen met de GraphQL API.
• Ontwikkeling van npm packages met component-informatie uit Storybook, en die zonder tussenkomst van Storybook in de component pagina tonen.
• In Github aangemaakte issues voor benodigde uitbreiding van nldesignsystem.nl
• In Github aangemaakte issues voor benodigde uitbreiding van gebruikersonderzoeken.nl
• Verbeterde documentatie repository op basis van de vastgelegde stories in GitHub conform de met de Product Owner, danwel opdrachtgever, vastgestelde acceptatiecriteria zijn doorgevoerd.
• Verbeterde gebruikersonderzoeken.nl repository op basis van de vastgelegde stories in GitHub conform de met de Product Owner, danwel opdrachtgever, vastgestelde acceptatiecriteria zijn doorgevoerd.
• Werkende deployments van de websites van NL Design System, zodat gebruikers ongestoord alle informatie kunnen vinden en taken kunnen uitvoeren terwijl de website verbeterd wordt.
• Gebruikersfunctionaliteit van bestaande versie van nldesignsystem.nl gedocumenteerd.
• Formulieren en enquêtes toegevoegd op de websites.
• Gebruikersonderzoeken.nl en nldesignsystem.nl delen dezelfde logica.
• Gebruikersonderzoeken.nl en nldesignsystem.nl gebruiken beschikbare componenten van NL Design System.
• Alle componenten op gebruikersonderzoeken.nl en nldesignsystem zijn gebouwd volgens de NL Design System architectuur.
Welke eindresultaten zal de professional aan het einde van de opdracht dienen op te leveren.
De volgende resultaten worden door de professional opgeleverd:
• De marktplaats voor componenten is uitgebreid zodat componenten makkelijk vindbaar, bruikbaar en deelbaar zijn.
• NL Design System huisstijl is vastgelegd in Design Tokens JSON en wordt gebruikt voor alle componenten die gebruikt worden op de website.
• Actueel gehouden documentatie van de gebruikersfunctionaliteit op nldesignsystem.nl
• Nieuwe toegankelijke versie van de websites nldesignsystem.nl en gebruikersonderzoeken.nl gebouwd met NL Design System componenten
• Actueel gehouden code dependencies van nldesignsystem.nl en gebruikersonderzoeken.nl
• Verbeterde code coverage van nldesignsystem.nl en gebruikersonderzoeken.nl
Wanneer is de opdracht afgerond en beëindigd:
De opdracht is ten einde wanneer de opdrachtgever de opgeleverde resultaten heeft geaccepteerd en een inhoudelijke decharge heeft verleend. Is het geval wanneer de klant en een landingsplaats heeft voor alle activiteiten en instrumenten van NL Design System, zijn overgedragen aan de betreffende beheerpartij en nazorg is uitgevoerd.
Hoe wat en wanneer zal het werk/de resultaten worden beoordeeld?
De werkzaamheden van de professional zoals hierboven beschreven zijn onderdeel van de Definition of Done (DoD) van een sprint. De resultaten worden na elke sprint gevalideerd op de acceptatiecriteria samen met de Product Manager, danwel opdrachtgever. Daarnaast vindt er een eindbeoordeling plaats bij de projectafsluiting (decharge) om de algehele prestaties en behaalde resultaten te evalueren.
Wat is de kans dat de verwachte duur wordt overschreden, c.q. welke onzekerheden er zijn t.a.v. de verwachte duur?
Op basis van de huidige inzichten wordt de kans klein geacht dat de duur wordt overschreden. Een overschrijding van de verwachte duur wordt bepaald door externe factoren. Daarbij kan gedacht worden aan een verlenging van de opdracht door de opdrachtgever wanneer blijkt dat de gevraagde projectresultaten door omstandigheden niet binnen de gestelde tijd bereikt kunnen worden of dat derden diensten niet tijdig kunnen leveren.
Over welke specifieke kennis beschikt de professional, waarover het eigen personeel van de Opdrachtgever niet beschikt en waar een eventuele vervanger ook over zou moeten beschikken?
De opdracht behelst werkzaamheden waarbij specialistische kennis over Design Systems, Component Libraries, webcomponenten en static site generation noodzakelijk is. De specialistische kennis waar naar gezocht wordt, worden in het gewenste profiel in combinatie met de gevraagde eisen verder toegelicht.
• Hybride: De standplaats van ICTU is Den Haag, maar vanwege het karakter van het project wordt digitaal op afstand gewerkt.
• Gewenste dagen in de week inzet (indien van toepassing) :
In elk geval op dinsdag i.v.m. Scrum afspraken en 2-wekelijkse heartbeat-sessie. Overige dagen in overleg.
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.
• De kandidaat heeftervaring met TypeScript, JSX en kan met renderToString() van React HTML-pagina’s genereren van webpagina’s die zelf geen React gebruiken in de browser.
• De kandidaat heeft ervaring met REST en GraphQL APIs gebruiken om data te laden waarmee de pagina’s gevuld worden.
• De kandidaat heeft ervaring met unit tests en end-to-end tests voor front-end code. Bijvoorbeeld met Jest, Vitest, Cypress of Playwright.
• De kandidaat beschikt over goede mondelinge en schriftelijke communicatieve vaardigheden.
• De kandidaat werkt zelfstandig en bewaakt de eigen voortgang als onderdeel van de scrum planning.
• De kandidaat is accuraat, werkt gedisciplineerd en is in staat om de veelheid en diversiteit aan werkzaamheden te ordenen en te prioriteren en stemt hierover af met de Product Manager.
• De kandidaat heeft ervaring met open source werken en vindt het vanzelfsprekend om alles (inclusief het proces) open en transparant te delen.
Hierbij is het van belang dat de professional: Motiveren!!
1. Minimaal 5 jaar ervaring met HTML en CSS technieken.
2. Minimaal 5 jaar ervaring met JavaScript.
3. Minimaal 3 jaar ervaring met GitHub of vergelijkbaar, waaronder samenwerken via merge/pull requests en het geven van code reviews.
4. Minimaal 3 jaar ervaring met ECMAScript en TypeScript.
5. Minimaal 3 jaar ervaring met Node.js en server-side rendering.
6. Minimaal 1 jaar ervaring met unittesten en end-to-end testen van front-end software
7. Aantoonbare ervaring met websites maken die toegankelijk zijn volgens recente versies van WCAG.
8. Een korte motivatie te kunnen geven, waaruit blijkt dat:
• 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 (alle wensen toelichten!!)
W1 Aantoonbare ervaring met het ontwikkelen van front-end voor een headless CMS, in de afgelopen 5 jaar. 15%
• Maximaal 10 punten
• 2 punten per aangetoond jaar
• 0 punten – ontbreekt, niet aanwezig
W2 Aantoonbare, ervaring met het ontwikkelen van een design system en design system documentatie, in de afgelopen 5 jaar. 15%
• Maximaal 10 punten
• 2 punten per aangetoond jaar
• 0 punten – ontbreekt, niet aanwezig
W3 Aantoonbare ervaring met static site generation en build scripts voor optimaliseren van performance, in de afgelopen 5 jaar. 10%
• Maximaal 10 punten
• 2 punten per aangetoond jaar
• 0 punten – ontbreekt, niet aanwezig
W4 Aantoonbare ervaring met het ontwikkelen van een complexe website zonder client-side framework, in de afgelopen 5 jaar. 20%
• Maximaal 10 punten
• 2 punten per aangetoond jaar
• 0 punten – ontbreekt, niet aanwezig
W5 Aantoonbare ervaring met React toepassen voor een component library en een complexe website in de afgelopen 5 jaar. 20%
• Maximaal 10 punten
• 2 punten per aangetoond jaar
• 0 punten – ontbreekt, niet aanwezig
Tijdens het gesprek moet(en) de kandida(a)t(en) kunnen aantonen dat voldaan wordt aan het gewenste profiel, door uit de 6 categorieën code toe te lichten die zelf zijn gemaakt: ECMAScript, HTML, CSS, Node.js, Web Component en testautomatisering.
NL Design System
ICTU werkt aan een betere digitale overheid, voor en samen met andere overheidsorganisaties. Voor het project NL Design System zijn we op zoek naar een Developer Relations Engineer.
Met de NL Design System aanpak verzamelen we richtlijnen, componenten en voorbeelden om robuuste websites en webapplicaties voor de overheid te bouwen. Dat doet het kernteam samen met een actieve community van specialisten van diverse overheidsorganisaties.
De componenten en richtlijnen van NL Design System zijn open source beschikbaar op GitHub en Figma, zodat iedereen ze kan gebruiken voor een begrijpelijke, gebruiksvriendelijke én toegankelijke online dienstverlening.
Omschrijving einde project/programma:
Het project is ten einde wanneer de opdrachtgever de opgeleverde resultaten heeft geaccepteerd en een inhoudelijke decharge heeft verleend. Is het geval wanneer de klant en een landingsplaats heeft voor alle activiteiten en instrumenten van NL Design System, zijn overgedragen aan de betreffende beheerpartij en nazorg is uitgevoerd.
Welke rol heeft de professional binnen het project:
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.
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.
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 .
Hinttech Staffing
Contactgegevens
Bedrijfsnaam: Hinttech Staffing
Contactpersoon: De heer Staffing
Adres: Loire 172
Postcode/plaats: 2491 AL 's-Gravenhage
Telefoon: +31 (0)70 315 7679
Fax: www.hinttech.com
Email: staffing@hinttech.com