Developer (NL Design Systems) – ICTU - Verloning opdracht in Zuid-Holland
ICTUOpdrachtomschrijving
ICTU werkt aan een betere digitale overheid, voor en samen met andere overheidsorganisaties.
Voor onze onze opdrachtgever ICTU zijn wij op zoek naar een Developer (NL Design Systems)
Start | 06-10-2025 |
Einddatum | 31-12-027 |
Optie op verlenging | Ja |
Uren per week | 32 |
Locatie | Den Haag + Remote |
Bijzonderheden | Deze aanvraag is niet geschikte voor ZZP'ers. 3 CV kan ik aanbieden echter 1fte wordt er gezocht. |
Tarief | 110 Euro p/u ex. BTW all-in |
Deadline | 23-09-2025 om 13:00 |
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 ES Modules en TypeScript.
- Minimaal 3 jaar ervaring met Node.js en server-side rendering.
- Minimaal 3 jaar ervaring met het opzetten en beheren van continuous integration en continuous delivery met Node.js en npm packages.
- Minimaal 3 jaar ervaring met releases doen met semantic versioning en changelogs voor API’s.
- Minimaal 3 jaar ervaring met het up-to-date houden van Node.js projecten, door dependencies updaten en bestaande code migreren naar nieuwe versies.
- Minimaal 3 jaar ervaring met unittesten of end-to-end testen van front-end software.
Wensen
- Aantoonbare ervaring in de afgelopen 5 jaar met ontwikkelen en onderhouden van open source projecten.
- Aantoonbare, ervaring met het ontwikkelen van een design system en design system documentatie, in de afgelopen 5 jaar.
- Aantoonbare ervaring met frontend ontwikkeling met 1 of meer van de volgende technieken in de afgelopen 5 jaar: Web Component, Angular, Vue.js, Drupal, WordPress, Typo3, React
- Opleveren van documentatie van front-end componenten in Storybook in de afgelopen 5 jaar
- Ervaring met het begeleiden van developers met het gebruik van npm, GitHub infrastructuur, handige build scripts en design systems in de afgelopen 10 jaar
- De kandidaat toont aan over een pragmatische en oplossingsgerichte werkwijze te beschikken.
- De kandidaat toont aan accuraat te werken om tot een toegankelijk en onderhoudbaar resultaat te komen
Competenties
- Heeft ervaring met het toepassen van herbruikbare componenten uit Design Systems of Component Libraries.
- Is pragmatisch en kan werk opdelen in kleine stappen en fases.
- Kan zonder code-duplicatie onderdelen hergebruiken, zodat verbeteringen zowel in de bestaande projecten als de nieuwe projecten kunnen worden gebruikt.
- Heeft ervaring met het werken aan projecten waarbij rekening is gehouden met toegankelijkheid volgens de succescriteria van WCAG.
- 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.
- Heeft uitgebreide ervaring met het zelfstandig opzetten van nieuwe front-end projecten en build-scripts.
- Heeft ervaring met het beheren van gebruikers, secrets en access tokens in een GitHub organisatie en weet hoe dit op een veilige onderhoudbare manier kan worden aangepakt.
- Heeft ervaring met Terraform of OpenTofu.
- De kandidaat vindt het leuk om een stabiele ontwikkelervaring te verzorgen voor de verschillende teams in de community die bijdragen aan het NL Design System.
- Heeft oog voor detail en werkt toe naar een consistente codebase.
- Kan, waar nodig, goed switchen tussen verschillende taken om snel drempels weg te nemen
- 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.
- 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.
- Heeft ervaring met npm packages gebruiken, monorepositories en npm packages publiceren.
- Heeft ervaring met progressive enhancement.
- Heeft ervaring met het maken van Web Components en kan daarbij een goede afweging maken om Shadow DOM of Light DOM gebruiken.
- Heeft ervaring met TypeScript, JSX en kan met renderToString() van React HTML-pagina’s genereren van webpagina’s die zelf geen React gebruiken in de browser.
- Heeft ervaring met unit tests en end-to-end tests voor front-end code. Bijvoorbeeld met Jest, Vitest, Cypress of Playwright.
- Beschikt over goede mondelinge en schriftelijke communicatieve vaardigheden.
- Werkt zelfstandig en bewaakt de eigen voortgang als onderdeel van de scrum planning.
- 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.
- Heeft ervaring met open source werken en vindt het vanzelfsprekend om alles (inclusief het proces) open en transparant te delen.
Overige informatie
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.
Opdrachtvereisten
De opdrachtgever heeft eisen en wensen doorgegeven waaraan een kandidaat moet voldoen. Hieronder vind je een overzicht van de belangrijkste punten, zodat je een goed beeld krijgt van de opdracht.
Eisen opdrachtgever
- 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 ES Modules en TypeScript.
- Minimaal 3 jaar ervaring met Node.js en server-side rendering.
- Minimaal 3 jaar ervaring met het opzetten en beheren van continuous integration en continuous delivery met Node.js en npm packages.
- Minimaal 3 jaar ervaring met releases doen met semantic versioning en changelogs voor API’s.
- Minimaal 3 jaar ervaring met het up-to-date houden van Node.js projecten, door dependencies updaten en bestaande code migreren naar nieuwe versies.
- Minimaal 3 jaar ervaring met unittesten of end-to-end testen van front-end software.
Wensen opdrachtgever
- Aantoonbare ervaring in de afgelopen 5 jaar met ontwikkelen en onderhouden van open source projecten.
- Aantoonbare, ervaring met het ontwikkelen van een design system en design system documentatie, in de afgelopen 5 jaar.
- Aantoonbare ervaring met frontend ontwikkeling met 1 of meer van de volgende technieken in de afgelopen 5 jaar: Web Component, Angular, Vue.js, Drupal, WordPress, Typo3, React
- Opleveren van documentatie van front-end componenten in Storybook in de afgelopen 5 jaar
- Ervaring met het begeleiden van developers met het gebruik van npm, GitHub infrastructuur, handige build scripts en design systems in de afgelopen 10 jaar
- De kandidaat toont aan over een pragmatische en oplossingsgerichte werkwijze te beschikken.
- De kandidaat toont aan accuraat te werken om tot een toegankelijk en onderhoudbaar resultaat te komen
- Heeft ervaring met het toepassen van herbruikbare componenten uit Design Systems of Component Libraries.
- Is pragmatisch en kan werk opdelen in kleine stappen en fases.
- Kan zonder code-duplicatie onderdelen hergebruiken, zodat verbeteringen zowel in de bestaande projecten als de nieuwe projecten kunnen worden gebruikt.
- Heeft ervaring met het werken aan projecten waarbij rekening is gehouden met toegankelijkheid volgens de succescriteria van WCAG.
- 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.
- Heeft uitgebreide ervaring met het zelfstandig opzetten van nieuwe front-end projecten en build-scripts.
- Heeft ervaring met het beheren van gebruikers, secrets en access tokens in een GitHub organisatie en weet hoe dit op een veilige onderhoudbare manier kan worden aangepakt.
- Heeft ervaring met Terraform of OpenTofu.
- De kandidaat vindt het leuk om een stabiele ontwikkelervaring te verzorgen voor de verschillende teams in de community die bijdragen aan het NL Design System.
- Heeft oog voor detail en werkt toe naar een consistente codebase.
- Kan, waar nodig, goed switchen tussen verschillende taken om snel drempels weg te nemen
- 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.
- 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.
- Heeft ervaring met npm packages gebruiken, monorepositories en npm packages publiceren.
- Heeft ervaring met progressive enhancement.
- Heeft ervaring met het maken van Web Components en kan daarbij een goede afweging maken om Shadow DOM of Light DOM gebruiken.
- Heeft ervaring met TypeScript, JSX en kan met renderToString() van React HTML-pagina’s genereren van webpagina’s die zelf geen React gebruiken in de browser.
- Heeft ervaring met unit tests en end-to-end tests voor front-end code. Bijvoorbeeld met Jest, Vitest, Cypress of Playwright.
- Beschikt over goede mondelinge en schriftelijke communicatieve vaardigheden.
- Werkt zelfstandig en bewaakt de eigen voortgang als onderdeel van de scrum planning.
- 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.
- Heeft ervaring met open source werken en vindt het vanzelfsprekend om alles (inclusief het proces) open en transparant te delen.
Sollicitatie procedure
Vind een opdracht die bij je past
Bekijk het actuele overzicht van beschikbare opdrachten en ontdek wat aansluit bij jouw profiel en ambities. Heb je iets interessants gevonden? Klik dan door voor meer informatie en details over de opdracht.
Solliciteer direct
Klaar om te solliciteren? Met één klik stuur je jouw profiel naar de opdrachtgever of partner.
Reactie van de opdrachtgever
Na je sollicitatie neemt de opdrachtgever of partner contact met je op. Je hoort of je wordt uitgenodigd voor een gesprek, of dat je eventueel in aanmerking komt voor een andere opdracht.
Start met je opdracht
Ben je geselecteerd? Gefeliciteerd! Je kunt snel aan de slag en samen met de opdrachtgever duidelijke afspraken maken over de startdatum, voorwaarden en verwachtingen.