Ingénieur développement Python (Linux)

La Collective
25 days ago

Role details

Contract type
Contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
French, English
Experience level
Senior

Job location

Tech stack

C++
Software Quality
Linux
Fortran
Python
NetCDF
NumPy
GIT
Dask

Job description

Au sein de la BU Environnement / Projets, la mission consiste à participer au développement et à la maintenance logicielle de chaînes de traitement océanographiques existantes, ainsi qu'à la mise en œuvre et à l'évolution d'outils logiciels utilisés pour l'analyse et la valorisation des données issues de missions spatiales.

Ces outils sont employés à la fois pour le développement de chaînes de traitement opérationnelles et par des ingénieurs à profil scientifique pour l'analyse et l'exploitation de données destinées aux agences spatiales (CNES, ESA) et à la Commission européenne (notamment dans le cadre du programme Copernicus Marine Service).

Les développements sont réalisés principalement en Python, en s'appuyant sur les technologies de l'écosystème Pangeo (https://pangeo.io/), particulièrement adaptées à la manipulation de grandes masses de données scientifiques.

L'objectif de la mission est de moderniser les codes existants, d'intégrer les bonnes pratiques de développement, et d'assurer la pérennité et la qualité du code utilisé dans un environnement scientifique exigeant.

Activités principales :

  • Maintenir, faire évoluer et optimiser des chaînes de traitement de données océanographiques.
  • Comprendre et moderniser du code existant (Python, Fortran, IDL, C).
  • Intégrer les bonnes pratiques de développement (structuration, tests, documentation, gestion de version).
  • Collaborer étroitement avec les ingénieurs et scientifiques ayant développé les outils pour comprendre les algorithmes et les besoins métier.
  • Participer à la mise en place d'outils modernes pour le traitement massif de données (écosystème Pangeo : Xarray, Dask, Numpy, etc.).
  • Garantir la robustesse, la lisibilité et la durabilité du code produit.

Requirements

Environnement technique :

  • Système : Linux
  • Langages : Python (principal), Fortran, C/C++, IDL (lecture/maintenance)
  • Outils et bibliothèques :

Python scientifique : Numpy, Xarray, Dask

Écosystème Pangeo

Formats de données scientifiques : NetCDF, binaires

Git (gestion de versions)

  • Méthodologie : bonnes pratiques de développement, optimisation et qualité de code, * Ingénieur expérimenté ou expert (6 ans d'expérience minimum)
  • Solides compétences en développement Python et en environnement Linux
  • Capacité à comprendre du code scientifique complexe et à le faire évoluer de manière structurée
  • Familiarité avec la manipulation de grandes masses de données scientifiques
  • Rigueur, autonomie et sens du travail en équipe
  • Bonne communication pour interagir avec les scientifiques et comprendre leurs besoins
  • Anglais technique (lecture de documentation et rédaction ponctuelle)

Apply for this position