Standplaats: UTRECHT
Duur: 06-01-2025 - 31-12-2025
Optie tot verlenging: Ja
Reageren voor: 12-11-2024
Opdrachtomschrijving
SURF exploiteert een aantal diensten die in het teken staan van het opslaan, distribueren, publiceren en vindbaar maken van digitale (open/FAIR) leermaterialen met als doel de kwaliteit van het onderwijs te verbeteren. Docenten en studenten kunnen makkelijk leermaterialen vinden en (her)gebruiken en onderwijsinstellingen kunnen nieuwe en bestaande leermaterialen (open/FAIR) delen.
Al deze SURF-diensten zijn ontwikkeld door verschillende teams in verschillende stacks en met verschillende uitgangspunten, maar lijken desondanks sterk op elkaar of delen dezelfde functionaliteit. Ook is er een sterke behoefte om deze systemen meer en beter op elkaar aan te laten sluiten. Deze functionaliteit bestaat uit o.a. het harvesten, verrijken, categoriseren, distribueren, controleren, presenteren en kwalificeren van leermaterialen.
Om dit mogelijk te maken bouwen we momenteel een microservice-gebaseerde architectuur om deze functionaliteit aan een brede groep applicaties beschikbaar te stellen, zowel binnen als buiten SURF.
Jouw opdracht wordt om services te realiseren op het platform dat nu in ontwikkeling is. Je mag deze services gaan bouwen op ons eigen SURF Developer Platform dat op een Kubernetes-cluster draait en zal een event-based oplossing met ons gaan vormgeven.
Je werkt samen met de Technisch Productmanagers van de verschillende diensten en met de Platform Developers en de Portal-developers (frontenders).
De services die we willen ontwikkelen zijn onder te verdelen in drie categorieën:
• Harvesting-services voor het ophalen en normaliseren van materialen uit interne en externe repositories.
• Transformatie-services voor het genereren van zoekindices, vocabularies, vertalingen, tekst-extractie, etc.
• Customer facing services, bijvoorbeeld review/materiaalkwaliteit, previews (screenshots), samenwerkingen, materiaalbundeling, statistieken, etc.
Gevraagd profiel, ervaring, expertise
• Goed in staat jezelf in woord en geschrift uit te drukken in het Engels en je bent in ieder geval in staat om Nederlands te lezen en verstaan.
• Je hebt ervaring met het ontwikkelen van open source software.
• Je hebt ruime ervaring met het ontwikkelen van data-driven applicaties in Python (of een andere, moderne programmeertaal die zich hiervoor leent).
• Je hecht waarde aan goede documentatie en bent ook in staat die op te leveren.
• Je affiniteit hebt met het onderwijs en het is een pré als je ook "in het onderwijs" hebt gewerkt.
• Je kunt samenwerken in een multidisciplinair team met gepassioneerde collega's die gezamenlijk werken aan "the greater good".
• Je bent nieuws- en leergierig en kritisch.
• Je kan uitleggen waarom security en privacy voor SURF niet slechts marketingtermen zijn.
• Je bent bekend met de term DevOps of je noemt jezelf een DevOps'er.
• (Geautomatiseerd) testen is voor jou geen overbodige luxe.
• Jij bent de persoon waar mensen naar verwezen worden als ze willen dat het goed gebeurt.
• Je houdt van uitdagingen en kan je flexibel opstellen.
• Je hebt aan een microservices-gebaseerd systeem gewerkt of hebt er veel kennis van.
• Ervaring met event sourcing en/of Apache Kafka is een pré.
• Ervaring met containerization (Kubernetes of soortgelijk).
• Je bouwt graag aan grote, stabiele, efficiënte en gave systemen.
• Je bouwt graag systemen die voldoen aan de ISO 25010 kwaliteitseisen.
• Je kan goed samenwerken met andere technisch experts.
• Het zou geweldig zijn als je ervaring hebt met (metadata)harvesting (OAI-PMH) en/of zoekoplossingen (bijv. Elastic/Open Search).
Ja, we vragen veel van je. Hier staat tegenover dat je veel speelruimte krijgt voor experimenten die ook mogen mislukken.
Functie-eisen:
Goed in staat jezelf in woord en geschrift uit te drukken in het Engels en je bent in ieder geval in staat om Nederlands te lezen en verstaan
Je hebt ervaring met het ontwikkelen van open source software
Je hebt ruime ervaring met het ontwikkelen van data-driven applicaties in Python (of een andere, moderne programmeertaal die zich hiervoor leent)
Je hecht waarde aan goede documentatie en bent ook in staat die op te leveren
Je affiniteit hebt met het onderwijs en het is een pré als je ook "in het onderwijs" hebt gewerkt
Je kunt samenwerken in een multidisciplinair team met gepassioneerde collega's die gezamenlijk werken aan "the greater good"
Je bent nieuwsen leergierig en kritisch
Je kan uitleggen waarom security en privacy voor SURF niet slechts marketingtermen zijn
Je bent bekend met de term DevOps of je noemt jezelf een DevOps'er
(Geautomatiseerd) testen is voor jou geen overbodige luxe
Jij bent de persoon waar mensen naar verwezen worden als ze willen dat het goed gebeurt
Je houdt van uitdagingen en kan je flexibel opstellen
Je hebt aan een microservices-gebaseerd systeem gewerkt of hebt er veel kennis van
Ervaring met event sourcing en/of Apache Kafka is een pré
Ervaring met containerization (Kubernetes of soortgelijk)
Je bouwt graag aan grote, stabiele, efficiënte en gave systemen
Je bouwt graag systemen die voldoen aan de ISO 25010 kwaliteitseisen
Je kan goed samenwerken met andere technisch experts
Het zou geweldig zijn als je ervaring hebt met (metadata)harvesting (OAI-PMH) en/of zoekoplossingen (bijv. Elastic/Open Search)Ja, we
vragen veel van je. Hier staat tegenover dat je veel speelruimte krijgt voor
experimenten die ook mogen mislukken.