Ingénieur.e développement logiciel spécialiste en Python pour la simulation numérique - Modélisation numérique du système cardiovasculaire
Contract type : Fixed-term contract
Renewable contract : Yes
Level of qualifications required : Graduate degree or equivalent
Fonction : Temporary scientific engineer
Context
L'équipe-projet M3DISIM développe depuis une vingtaine d'années des modèles mathématiques et biomécaniques du coeur et du système cardiovasculaire, et des méthodes de simulation numérique adaptées à ces modèles. Les modèles en question sont de différents types, allant des équations aux dérivées partielles en 3D pour les plus fins, à des versions simplifiées sous forme de systèmes d'équations aux dérivées ordinaires, dits "modèles 0D".
Les modèles 0D permettent des simulations numériques très rapides - potentiellement en temps réel - tout en rendant compte des "aspects systèmes" des modèles cardiovasculaires, c'est à dire des couplages entre les différentes composantes du système cardiovasculaire (coeur, artères, veines, voire poumons, etc.). L'équipe développe notamment des applications de monitorage cardiovasculaire augmenté fondées sur des "jumeaux numériques", en particulier pour l'anesthésie-réanimation, qui exploitent de tels modèles.
Dans le cadre du projet i-Démo intitulé "MediTwin" qui vise à développer des méthodes permettant de construire des jumeaux numériques en médecine, avec diverses applications sur lesquelles ces méthodes donneront lieu à des preuves de concept, l'équipe M3DISIM est responsable d'une tâche visant à développer une bibliothèque logicielle permettant la simulation numérique de modèles simplifiés 0D ou 1D du système cardiovasculaire, avec 3 caractéristiques à privilégier :
- Facilité de développement / portabilité qui motivent le choix du langage Python
- Modularité pour que l’ajout d’une nouvelle brique de modélisation ne requière qu’un travail minimal d’intégration en dehors du code dédié au modèle lui-même
- Vision hiérarchique de la modélisation entre les modèles de différentes dimensions, à l’intérieur de la bibliothèque elle-même (limitée au 0D et 1D), et vis-à-vis des modèles 3D développés par l'équipe par ailleurs
Les utilisateurs visés sont principalement :
- les chercheurs en modélisation cardiovasculaire (dont le personnel de l'équipe M3DISIM elle-même), pour qui la bibliothèque devrait constituer un outil précieux pour tester rapidement des nouvelles briques de modélisation et des méthodes numériques associées
- les médecins, pour qui la bibliothèque devrait représenter une voie d'accès facilitée à la modélisation
- les étudiants (en modélisation ou en médecine) pour accompagner leur apprentissage des concepts de modélisation et/ou de physiologie du système cardiovasculaire
Une partie substantielle de la bibliothèque sera diffusée sous licence opensource, certains développements pointus ayant par ailleurs vocation à demeurer logiciel propriétaire, notamment pour en permettre des valorisations économiques ou entrepreneuriales le cas échéant. La diffusion en opensource s'accompagnera d'un déploiement dans un JupyterHub.
Assignment
L'ingénieur.e recruté.e, pour une durée de 2 ans éventuellement renouvelable, aura pour mission de développer la bibliothèque en Python ci-dessus, et sera rattaché.e à l'équipe M3DISIM du centre Inria-Saclay, sur le campus de l'Ecole polytechnique. Elle ou il sera encadré.e par un chercheur de l’équipe, et par ailleurs accompagné.e par un spécialiste du langage Python du service expérimentation et développement (SED) du centre Inria de Saclay.
Main activities
Activités principales :
- Conception de la bibliothèque (en s'inspirant du logiciel HELEN préalablement développé en C++ dans l'équipe avec une visée de mise en œuvre opérationnelle au détriment de la modularité et de la facilité du développement d’éléments nouveaux)
- Développement complet de la bibliothèque en Python
- Tests détaillés initiaux par comparaison avec le logiciel HELEN
- Mise en place de tests unitaires, de tests d’intégration et de tests fonctionnels dans une démarche d'intégration continue
- Rédaction et présentation de documentation
- Aide à la prise en main des utilisateurs avancés de l'équipe et cercles proches
- Mise en place de simulateurs cardiovasculaires de différentes complexités s'appuyant sur les briques de la librairie
- Déploiement dans un JupyterHub
- Elaboration de notebooks Jupyter pour différents types d'utilisateurs (étudiants en modélisation, en médecine, etc.)
Skills
- Expertise en développement Python
- Expérience de développement souhaitable dans le champ de la simulation numérique
- Connaissances solides et expérience en développement logiciel : architecture logicielle et paradigmes de programmation, génie logiciel, bonnes pratiques et outils de développement logiciel (versionning, documentation, packaging, CI, CD …)
- Aptitudes à la conduite de projet
- Capacité à rédiger, à publier et à présenter, en français voire en anglais
- Capacité à comprendre les contextes et besoins scientifiques, et à les traduire dans des implémentations technologiques
- Acculturation préalable à la modélisation mathématique et/ou au calcul scientifique appréciable
- Savoir être : ouverture d'esprit, goût pour le travail en équipe
Benefits package
- Restauration subventionnée
- Transports publics remboursés partiellement
- Congés: 7 semaines de congés annuels + 10 jours de RTT (base temps plein) + possibilité d'autorisations d'absence exceptionnelle (ex : enfants malades, déménagement)
- Possibilité de télétravail (après 6 mois d'ancienneté) et aménagement du temps de travail
- Équipements professionnels à disposition (visioconférence, prêts de matériels informatiques, etc.)
- Prestations sociales, culturelles et sportives (Association de gestion des œuvres sociales d'Inria)
- Accès à la formation professionnelle
- Sécurité sociale
General Information
- Theme/Domain :
Modeling and Control for Life Sciences
Scientific computing (BAP E) - Town/city : Palaiseau
- Inria Center : Centre Inria de Saclay
- Starting date : 2024-06-03
- Duration of contract : 2 years
- Deadline to apply : 2024-05-31
Warning : you must enter your e-mail address in order to save your application to Inria. Applications must be submitted online on the Inria website. Processing of applications sent from other channels is not guaranteed.
Instruction to apply
Defence Security :
This position is likely to be situated in a restricted area (ZRR), as defined in Decree No. 2011-1425 relating to the protection of national scientific and technical potential (PPST).Authorisation to enter an area is granted by the director of the unit, following a favourable Ministerial decision, as defined in the decree of 3 July 2012 relating to the PPST. An unfavourable Ministerial decision in respect of a position situated in a ZRR would result in the cancellation of the appointment.
Recruitment Policy :
As part of its diversity policy, all Inria positions are accessible to people with disabilities.
Contacts
- Inria Team : M3DISIM
-
Recruiter :
Chapelle Dominique / Dominique.Chapelle@inria.fr
The keys to success
Se sentir à l'aise dans un environnement de dynamique scientifique, aimer apprendre et écouter sont des qualités essentielles pour réussir cette mission.
Les candidatures de jeunes diplômé.es, comme de profils plus expérimentés, sont les bienvenues.
About Inria
Inria is the French national research institute dedicated to digital science and technology. It employs 2,600 people. Its 200 agile project teams, generally run jointly with academic partners, include more than 3,500 scientists and engineers working to meet the challenges of digital technology, often at the interface with other disciplines. The Institute also employs numerous talents in over forty different professions. 900 research support staff contribute to the preparation and development of scientific and entrepreneurial projects that have a worldwide impact.