Yacht Freelance

Freelance Java Ontwikkelaar (ZZP)

Geplaatst 5 jul. 2024
Project ID: 9161512
Plaats
Den Haag, Hybride
Uren
36 Uur/week
Periode
1 jaar, 4 maanden
Start: 1 sep. 2024
Einde: 31 dec. 2025
Tarief
88 - 108 €/uur
Uiterste voorsteldatum: 10 jul. 2024 12:00
  • Graag ontvangen we een CV waaruit duidelijk blijkt dat je in ieder geval aan de harde eisen voldoet. Laat dit ook duidelijk naar voren komen in je motivatiebrief.

  • CV en motivatie in het Nederlands

  • Motivatiebrief is verplicht



We gaan we via deze opdracht verder met het ingezette verbetertraject in samenwerking tussen het IMAGE team en opdrachtnemer:


  • Doorontwikkeling van een Python package als basis voor de ontwikkeling van simulatiemodellen (prism ) in het algemeen, voor het IMAGE raamwerk in het bijzonder.

  • Vertaling (1) en verbetering (2) van de TIMER en FAIR modellen van MyM naar Python. Bij de eerste stap van de vertaling is het doel om op niveau van individuele componenten resultaten één-op-één te kunnen reproduceren (met een bepaalde foutmarge); in de tweede stap richten we ons op het verbeteren van de kwaliteit van de code, het reduceren van duplicatie en het beschikbaar stellen van generieke functionaliteit op modelniveau of het niveau van prism .



Verder vinden er binnen het IMAGE team activiteiten plaats ter voorbereiding van een vertaling en verbetering van het IMAGE-land model naar Python.


Daarnaast richten we ons ook op de data- en modeltools die worden toegepast in relatie tot de modellen:


  • Refactoring van pre- en postprocessing tools en vertaling en verbetering van de IMAGE raamwerk run-environment scripts (de ‘1click-tools’, wordt: cobra ). De run-environment scripts zijn nu een collectie batch files, dat wordt een Python package .



Deze activiteiten dragen bij aan de volgende kwaliteitsaspecten:


  • vergroten van de leesbaarheid van de modelcode, o.a. door betere naamgeving en style guide

  • verbeteren van de modelstructuur met één duidelijk doel voor elke bouwblok (model)code

  • verbeteren van de documentatie van de modelcode, met name van prism en nieuw toe te voegen gedeelde functionaliteit

  • toepassen van tests bij de transitie van MyM naar Python en incrementeel test coverage vergroten

  • toevoegen van scenario metadata, zowel op variabele als scenarioniveau, o.a. ter verhoging van reproduceerbaarheid

  • vernieuwen van versiebeheer op modelcode en data

  • efficiënter en consistenter maken van databeheer



PBL is een onafhankelijke kennisinstelling van de rijksoverheid. Met het IMAGE instrumentarium wordt onderzoek gedaan naar mondiale milieuproblematiek. Daarbij wordt op basis van In het IMAGE Python transitie project wordt een kwaliteitsslag beoogd voor het IMAGE raamwerk van modellen. Eerder is al gestart met een transitie van het huidige modelraamwerk naar een raamwerk gemodelleerd voornamelijk in Python. Daarbij is een Python package (genaamd prism) ontwikkeld voor wetenschappelijke simulatiemodellen, zoals in het huidige IMAGE raamwerk en een start gemaakt met het omzetten van het huidige modelraamwerk naar Python.



De ideale kandidaat voldoet aan de volgende eisen:

  • Wetenschappelijk progammeren: PhD/Master

Minimaal 3 jaar ervaring in het volgende:

  • Expertise in scientific programming, bekend met relevante numerieke en wetenschappelijke methoden

  • Expertise in wetenschappelijk modelleren en programmeren in Python

  • Expertise in architectuur en ontwerp van wetenschappelijke software

  • Ervaring met het Python scientific ecosystem (o.a. NumPy, Numba, SciPy, Xarray)

  • Ervaring met integrated assessment modelling en simulatiemodellen

  • Ervaring met simulatietaal MyM (www.my-m.eu) en programmeertaal FORTRAN



Deze expertise en ervaring kan ingevuld worden door meerdere personen, die elkaar aanvullen in skillsets en ervaringsniveau.

Wensen:


  • Uitstekende beheersing van de Engelse taal

  • Kunnen toepassen van best practices rondom versiebeheer met GitHub, testen en documentatie in de context van een Python ecosysteem

  • Kunnen samenwerken met modelleurs en onderzoekers om tot een gezamenlijk resultaat te komen, dit vereist goede communicatieve vaardigheden, het kunnen overbruggen van kennisdomeinen en het overdragen van kennis over programmeren en wetenschappelijk modelleren.

Soortgelijke projecten

+ Bekijk alle projecten