Technical Lead/Full Stack Developer (GEM virtuele assistent)
De Technical Lead speelt een sleutelrol in de technische doorontwikkeling van GEM. Je werkt hands-on mee (60–70% van de tijd) aan het bouwen, uitbreiden en verbeteren van het platform. Tegelijk bewaak je de technische koers, stuur je het ontwikkelteam aan en geef je richting aan langetermijnvisie en architectuur. Je fungeert als verbindende schakel tussen techniek, stakeholders en gebruikers.
- Plaats Utrecht
- Uren per week 16 tot 24 uren per week
- Opleiding HBO
- Vakgebied IV/ICT
- Contracttype Interim / ZZP / Tijdelijke loondienst ICQ / Detachering
- Aanvraagnummer 6470-A
Over de functie
Voor de Gemeente Utrecht zijn wij op zoek naar een Technical Lead/Full Stack Developer (GEM virtuele assistent).
Opdracht:
Utrecht heeft jou nodig! GEM is een open source virtuele assistent die als doel heeft de digitale dialoog tussen inwoner en overheid te verbeteren. Door samenwerking tussen gemeenten, VNG en marktpartijen wordt de assistent continu slimmer via AI en machine learning. GEM is bedoeld om herbruikbare, schaalbare dienstverlening te leveren, waarbij total cost of ownership daalt en de kwaliteit stijgt naarmate meer gemeenten deelnemen. GEM is als use-case gedefinieerd door de VNG binnen de bredere ontwikkeling common ground. Een landelijke beweging die een fundamentele vernieuwing van het gehele gemeentelijke IT dienstverleningslandschap behelst.).
Opdrachtomschrijving:
De Technical Lead speelt een sleutelrol in de technische doorontwikkeling van GEM. Je werkt hands-on mee (60–70% van de tijd) aan het bouwen, uitbreiden en verbeteren van het platform. Tegelijk bewaak je de technische koers, stuur je het ontwikkelteam aan en geef je richting aan langetermijnvisie en architectuur. Je fungeert als verbindende schakel tussen techniek, stakeholders en gebruikers.
Kernverantwoordelijkheden:
1. Ontwikkeling en Technische Realisatie:
- Bouwen en verbeteren van componenten in Python (Django, FastAPI/Sanic), React, Docker.
- Meedenken en implementeren van architectuuroplossingen met aandacht voor schaalbaarheid, veiligheid en performance.
- Implementeren van LLM/RAG-oplossingen op basis van Azure OpenAI en vector databases (zoals Qdrant).
- Actieve inbreng in ontwikkeling van AI-functionaliteiten zoals feedbackloops en machine learning.
- Verantwoordelijk voor veilige DevOps-infrastructuur en on-premise hostingoplossingen.
2. Technische Leiding en Strategie:
- Uitwerken en bewaken van de technische visie op doorontwikkeling (generatieve AI, omnichannel integratie).
- Aansturen van een multidisciplinair ontwikkelteam.
- Bewaken van kwaliteit, consistentie en open source-principes in ontwikkelcyclus.
- Prototyping, technische keuzes maken en code review.
- Onderhouden van stakeholdercontacten met gemeenten, VNG, leveranciers (zoals bijvoorbeeld Spotler, Coosto).
3. Samenwerking en Stakeholdermanagement:
- Technisch aanspreekpunt voor product-owner, architecten, leveranciers en gemeenten.
- Vertalen van klantbehoeften naar technische specificaties en werkbare oplossingen.
- Deelname aan roadmap-overleggen en leveren van voortgangsrapportages.
- Presentaties, demo’s en documentatie voor interne en externe belanghebbenden.
Resultaat van de opdracht:
De Technical Lead heeft GEM technisch doorontwikkeld met nieuwe en verbeterde functionaliteiten (Python, React, DevOps) en geïntegreerde AI-oplossingen (Azure OpenAI, vector databases). Er ligt een gedragen technische visie voor verdere ontwikkeling (generatieve AI, omnichannel-integratie), het ontwikkelteam is succesvol technisch aangestuurd, en het platform is stabiel, veilig en schaalbaar opgeleverd voor gebruik door deelnemende gemeenten.
Jij hebt:
- Afgeronde hbo-opleiding in een relevante richting zoals informatica, software engineering of AI.
- Minimaal 5 jaar ervaring als Technical Lead of Senior Developer.
- Je hebt eerder vergelijkbare rollen gehad en gewerkt voor/bij/in de publieke sector.
Uitgebreide ervaring met:
- Python, Django, Sanic/FastAP.
- React, TypeScript, HTML/CSS.
- Docker, CI/CD, Nginx, Ansible.
- Cloud-native architecturen, beveiliging, DPIA, privacy by design.
- Ervaring met AI-ontwikkeltrajecten is een pre.
- Ervaring met open source-ecosystemen en microservices-architectuur.
Persoonlijkheid en competenties
- Analytisch, oplossingsgericht en strategisch denker.
- Communicatief vaardig en in staat om technische inhoud helder over te brengen.
- Verbindend leider met oog voor samenwerking en maatschappelijke relevantie.
- Hands-on mentaliteit en plezier in technische uitdagingen.
Algemene informatie m.b.t. de aanvraag:
Locatie: Utrecht
Begindatum: Van 1 sept, of eerder in overleg
Einddatum: tot 1 Sept 2026
Optie op verlenging: ja
Inzet per week: 16-24 uur
Tarief: marktconform
Sluitingsdatum: 17-08-2025
Sluitingstijd: 09:00 uur
Intakegesprek: in de week van 21 aug
Over de organisatie
Utrecht een kleine grote stad? Dat zijn we allang niet meer. Als één van de vier grootste steden in Nederland willen wij ruimte geven aan onze ambities. Want steeds meer mensen kiezen voor onze mooie stad in het midden van het land: in 2027 telt Utrecht voor het eerst meer dan 400.000 inwoners. Natuurlijk brengt dit vraagstukken met zich mee. Bijvoorbeeld op het gebied van duurzaamheid, wonen, sociale voorzieningen en infrastructuur.
Ons belangrijkste doel is een gezonde en prettige leefomgeving voor iedereen. Ook als we groeien. En dat pakken we op z’n Utrechts aan: met elkaar. Wij staan voor een stad waar we naar elkaar omkijken, waar iedereen zich thuis voelt en waar iedereen mee kan doen. Ook binnen onze organisatie. Daarbij handelen we naar onze kernwaarden: open, wendbaar, scherp en betrouwbaar.
Ons opvallende en moderne stadskantoor staat direct naast station Utrecht Centraal. Dit is de centrale plek waar inwoners snel geholpen worden én het is de plek waar jij lekker kunt werken en collega’s kunt ontmoeten. Veel van onze collega’s zijn dagelijks zichtbaar in de stad. Daarnaast werken er collega’s op verschillende locaties door de hele stad, zoals bij de zwembaden en op de wijkbureaus.
Met ruim 4.500 collega’s beschikt onze organisatie over een groot netwerk, zowel in de organisatie en in de stad als op nationaal en internationaal niveau. Die omvang maakt het mogelijk om écht verschil te maken in Utrecht. We bieden ruimte aan iedereen, met talent als basis en diversiteit als kracht. Laat jouw ambitie spreken en groei mee met de stad. Dé plek waar je de ruimte krijgt om jouw talent in te zetten zoals jij wilt. Met elkaar maken we er werk van. Want wat jij kan, heeft Utrecht nodig.
Wat wij vragen
- Je bent de afgelopen 2 jaar niet in loondienst geweest bij de Gemeente Utrecht voor dezelfde/vergelijkbare werkzaamheden.
- Je hebt minimaal een afgeronde Hbo-opleiding in een relevante richting zoals informatica, software engineering of AI.
Wensen:
- Je hebt minimaal 5 jaar ervaring als Technical Lead of Senior Developer.
- Kun je meer toelichting geven over je rol als technical Lead of (senior) Developer? Vertel over je opdracht en het resultaat.
- Je hebt eerder vergelijkbare rollen gehad en gewerkt voor/bij/in de publieke sector.
- Uitgebreide ervaring met:
x Python, Django, Sanic/FastAPI
x React, TypeScript, HTML/CSS
x Docker, CI/CD, Nginx, Ansible
x Cloud-native architecturen, beveiliging, DPIA, privacy by design
- Heb je ervaring met AI-ontwikkeltrajecten?
- Heb je ervaring met open source-ecosystemen en microservices-architectuur.
Wat wij bieden
Ben jij als professional op zoek naar een interessante opdracht waarin jij het verschil kunt maken? Dan ben je bij ons aan het juiste adres. Bij ICQ Groep krijg je de kans om te werken aan uitdagende projecten bij verschillende opdrachtgevers. Je krijgt de mogelijkheid om jezelf voortdurend te ontwikkelen en nieuwe kennis op te doen. We zijn op zoek naar talent zoals jij, dus waar wacht je nog op? We seek you!
Meer informatie
Zo zorg je ervoor dat jouw aanbieding opvalt:
CV in topvorm: Lever je CV aan in Word-formaat, in de taal van de opdracht en in een professionele en prettige leesbare lay-out. Maak het CV niet langer dan 7 pagina’s. Laat zien dat je oog hebt voor detail.
Persoonlijke motivatie: Schrijf een overtuigende motivatie in de 'ik-vorm’, waarin je kort en bondig ingaat op de scope van de opdracht. Licht puntsgewijs toe hoe jij aansluit bij de gestelde eisen en wensen.
Beschikbaarheid: Vermeld per wanneer je beschikbaar bent, hoeveel uren per week je kunt werken en of je vakantieplannen hebt.
Tarief of maandsalaris: Vermeld je uurtarief (exclusief BTW) of maandsalaris, specifiek voor deze opdracht, inclusief reis- en eventuele verblijfskosten.
N.B.
Voor deze opdracht werk je uitsluitend met ons samen. Dit betekent dat je je niet via andere intermediairs voor dezelfde opdracht inschrijft. Zo voorkomen we verwarring in het selectieproces en maximaliseren we jouw kansen.
Onvolledige aanbiedingen kunnen we niet in behandeling nemen.
Wij houden je op de hoogte van elke stap in het selectieproces: Heb je vragen? Wij zijn er om ze te beantwoorden.