Stage Software Engineering IoT

Waterschap Limburg
StageOp locatie
Functiebeschrijving
Stage Software Engineering IoT Tijdens deze stage werk je aan software die direct bijdraagt aan betere inzichten in neerslag, piekbuien en het watersysteem. Je combineert backend development, IoT, datapipelines en API ontwikkeling in een maatschappelijk relevante omgeving. Je bouwt mee aan een oplossing die klein begint, maar groot moet kunnen worden: van 10 pilotstations naar een fijnmazig neerslagnetwerk met ongeveer 100 meetpunten in Limburg. Achtergrond Waterschap Limburg werkt elke dag aan veilige dijken, droge voeten, schoon water en voldoende water. Goede en actuele data is daarbij onmisbaar. Zeker bij lokale piekbuien kan het verschil tussen wel of geen goede meting groot zijn. Een bui kan op de ene plek voor flinke wateroverlast zorgen, terwijl een paar kilometer verderop nauwelijks neerslag valt. Daarom wil Waterschap Limburg haar meetnetwerk uitbreiden met amateur neerslagstations bij burgers thuis. Door deze stations slim te plaatsen op plekken waar nog weinig dekking is vanuit professionele meetpunten, zoals KNMI stations of eigen meetpunten van het waterschap, ontstaat een veel fijnmaziger beeld van lokale neerslag. Deze data helpen hydrologen, de monitoringswacht van de WMC, de crisisorganisatie en dashboardgebruikers om sneller inzicht te krijgen in actuele neerslag, piekbuien en mogelijke gevolgen voor het watersysteem. Binnen deze stage werk je mee aan het Informatieknooppunt, kortweg IKP. Dit is het dataplatform van Waterschap Limburg waarin metingen, verwachtingen en dashboards samenkomen. Je bouwt dus geen los experiment, maar een productiewaardige Proof of Concept die past binnen onze backend en data architectuur. De opdracht Voor deze pilot wordt vooraf hardware geselecteerd. Denk bijvoorbeeld aan een Netatmo neerslagstation of een Ecowitt neerslagstation. We starten met ongeveer 10 stations, maar willen op termijn kunnen opschalen naar circa 100 stations. Jouw opdracht is om een technische oplossing te ontwerpen en te bouwen waarmee data uit deze amateur neerslagstations automatisch wordt opgehaald, verwerkt, opgeslagen en beschikbaar gemaakt voor het IKP. De nadruk ligt op backend development, datapipelines, API koppelingen en betrouwbare dataopslag. Wanneer de tijd het toelaat (half jaar stage is het wel onderdeel van de opdracht) ontwikkel je ook een uitbreiding op onze bestaande dashboard (React) om de data weer te geven. Wat ga je doen? Je onderzoekt hoe de gekozen neerslagstations hun data beschikbaar stellen. Dit kan bijvoorbeeld via een lokale/ cloud API van de leverancier, een app of portaal, een WiFi module of een andere technische koppeling. Daarna ontwerp en bouw je een Python datapipeline die deze data ophaalt en verwerkt. De data wordt opgeslagen in MongoDB en via een API endpoint beschikbaar gemaakt voor IKP producten. Daarbij denk je ook mee over schaalbaarheid, foutafhandeling, logging en traceerbaarheid. Concreet werk je aan: - Het onderzoeken van de API of uitleesmogelijkheid van de gekozen hardware. - Het ontwerpen van de gegevensstroom van neerslagstation naar IKP. - Het bouwen van een Python datapipeline voor het ophalen en verwerken van meetdata. - Het opslaan van meetdata enstationsmetadatainMongoDB. - Het bouwen van een API endpoint voor ontsluiting richting IKP producten. - Het vastleggen van metadata zoals locatie, sensortype, eigenaar/beheerrelatie, batterijstatus, laatste contactmoment en verbindingsstatus. - Het meenemen van basisvalidatie, zoals ontbrekende waarden, dubbele metingen, foutievetimestampsen onbereikbare stations. - Het documenteren van de oplossing, zodat hetIKP teamhierop kan doorontwikkelen. - Het geven van advies over opschaling van 10 naar circa100 stations. Wat lever je op? Aan het einde van je stage ligt er een werkende, productiewaardige Proof of Concept met minimaal de volgende resultaten: - Een werkende Python datapipeline. - Een opslagstructuur in MongoDB voor neerslagmetingen en metadata. - Een API endpoint waarmee IKP producten de data kunnen ophalen. - Een demonstratie met echte sensordata uit de pilot. - Technische documentatie voor ontwikkelaars en beheerders. - Advies over schaalbaarheid, beheer, monitoring en foutafhandeling. - Een overzicht van keuzes en aandachtspunten voor verdere productiegang. Technische inrichting De opdracht richt zich technisch op backendontwikkeling met Python. De meetdata wordt opgeslagen in MongoDB en ontsloten via een API endpoint, zodat IKP producten de data kunnen gebruiken. De definitieve hardware wordt voor de start van de stage geselecteerd. Tijdens de stage draai je mee in het Scrum team van IKP. De scope ligt op backendontwikkeling, het bouwen van een datapipeline en het betrouwbaar ontsluiten van data. Kennis van Python is vereist, MongoDB kennis is een pré. Onderzoeksvraag Omdat deze opdracht geschikt is als derdejaars stage én als afstudeeropdracht, is er ruimte voor zowel onderzoek als realisatie. Mogelijke hoofdvraag: Hoe kan Waterschap Limburg amateur neerslagstations op een betrou
Wat ga je doen?
Je onderzoekt hoe de gekozen neerslagstations hun data beschikbaar stellen. Dit kan bijvoorbeeld via een lokale/ cloud API van de leverancier, een app of portaal, een WiFi module of een andere technische koppeling. Daarna ontwerp en bouw je een Python datapipeline die deze data ophaalt en verwerkt. De data wordt opgeslagen in MongoDB en via een API endpoint beschikbaar gemaakt voor IKP producten. Daarbij denk je ook mee over schaalbaarheid, foutafhandeling, logging en traceerbaarheid.
Solliciteer direct
Over Waterschap Limburg
Terug naar vacatures
Stage Software Engineering IoT bij Waterschap Limburg | Dripline