Développeur calcul haute performance H/F

Référence : UMR7648-MOBINT-F56621

  • Fonction publique : Fonction publique de l'État
  • Employeur : Centre national de la recherche scientifique (CNRS)
  • Localisation : 91120 PALAISEAU (France)

Partager la page

Veuillez pour partager sur Facebook, Twitter et LinkedIn.

  • Nature de l’emploi Emploi ouvert aux titulaires et aux contractuels
  • Expérience souhaitée Non renseigné
  • Rémunération (fourchette indicative pour les contractuels) Non renseigné
  • Catégorie Catégorie A (cadre)
  • Management Non renseigné
  • Télétravail possible Non renseigné

Vos missions en quelques mots

Mission :
L'ingénieur-e travaillera sur le développement de codes open source et communautaires massivement parallèles (CPU, GPU) de simulation numérique (fluide et particulaire) pour étudier la physique des plasmas. L'ingénieur-e travaillera également sur des codes de visualisation et d'analyse de données.

Activité :
Activités principales :
- Développement de codes : Contribuer activement à la conception et au développement de codes de simulation et d¿analyse de données pour la physique des plasmas.
- Architecture logicielle : Concevoir l¿architecture des codes, en assurant une modularité optimale et une performance sur les différentes configurations matérielles.
- Optimisation des performances : Analyser la performance des codes sur diverses architectures parallèles (CPU, GPU ou mixte.
- Tests et intégration continue : Mettre en place et réaliser les tests, ainsi que les processus d¿intégration continue pour garantir un développement optimal du code.
- Support et maintenance des infrastructures : Assurer le fonctionnement et la performance optimal des codes sur les machines de calcul des centres nationaux et internationaux, actuels et futurs, en participant au passage à l'exascale notamment.
- Diffusion et documentation : Assurer la diffusion des codes et leur documentation, afin de les rendre accessibles et exploitables par la communauté scientifique internationale.
- Cohérence des développements : Harmoniser les développements et les outils (visualisation, validation, analyse de performances, gestion de projet) entre les différents codes plasmas d'intérêts pour les 3 axes de recherche du LPP.
- Gestion de l'écosystème de calcul : Assurer la gestion de l'écosystème de développement et de calcul du LPP, y compris le matériel (hardware) et les logiciels (software).
Activités complémentaires :
- Collaborer avec les Ingénieurs en administration informatique et faire le lien entre les infrastructures matérielles/logiciels et les codes de calcul, visualisation et analyse de données.
- Former les Chercheurs, ITs, Doctorants et Post-doctorants aux bonnes pratiques de simulation et d'analyse de données, en assurant la qualité et la pérennité des contributions aux codes.
- Gérer les outils de développement communautaires.


Profil recherché

Contexte :
Le LPP est un laboratoire de recherche en physique des plasmas très impliqué dans des projets de recherche internationaux et des collaborations industrielles de premier plan comme par exemple les plasmas de fusion avec le projet ITER, les plasmas froids avec les propulseurs de satellites avec SAFRAN ou encore l'exploration spatiale, avec la participation aux missions spatiales comme Magnetospheric MultiScale, Parker Solar Probe, Solar Orbiter, Bepi- Colombo, HelioSwarm et Juice. Devant la complexité des différents plasmas étudiés, la réussite de ces projets nécessite toutefois la mise en œuvre d'approches complémentaires aux expériences, via la simulation numérique et le développement de méthodes innovantes d'analyse de données issues d'expériences de laboratoire ou d'observations spatiales.
L'ingénieur-e évoluera dans un environnement riche en projets plasmas numériques innovants au sein de l'équipe informatique du LPP et de l'écosystème du campus d'IP Paris et en particulier celui des laboratoires de recherche partenaires de l'EUR PlasmaScience et de la fédération de recherche Plas@Par. Il/elle contribuera au développement des codes du LPP pour la communauté, et sera associé.e aux travaux scientifiques des équipes (codes PHARE, SMILEI, LPPic, OHM, SciQLOP, Speasy, Cdfpp, etc.). Il/elle participera à la formation des personnels du LPP (chercheurs, ITs, doctorants, post-doctorants, CDD) aux codes et machines locales ou des centres de calcul des centres nationaux et internationaux, actuels et futurs.

Competence :
Compétences techniques :
- Développer des solutions en langages de programmation C++, Python et C, y compris leur interfaçage et leurs versions modernes.
- Concevoir des architectures logicielles efficaces.
- Gérer des projets de développement logiciel en utilisant des outils comme Git.
- Implémenter des algorithmes de calcul numérique.
- Communiquer en anglais (niveau B2 : lu, écrit, parlé).
- Collaborer au développement de codes de calcul haute performance massivement parallèles en équipe.
- Réaliser des tests unitaires et des tests de fonctionnement pour valider les codes.
- Analyser et optimiser les performances des codes de calcul haute performance.
- Effectuer une veille technologique sur les outils, bibliothèques de calcul et nouveaux algorithmes.

Connaissances :
- Maitrise experte des langages C++, Python, C, et leur interfaçage, dans leur version moderne, et suivre leurs évolutions au cours du temps. Maîtriser le langage FORTRAN (serait un plus).
- Comprendre les principes de calcul scientifique et les algorithmes de haute performance.
- Utiliser les méthodes de gestion de version (Git) et appliquer les bonnes pratiques de développement logiciel en équipe.
- Connaître les outils et bibliothèques de calcul numérique et parallèle.

Compétences comportementales :
- Faire preuve d'un esprit d'analyse et de synthèse.
- Accompagner et conseiller les membres de l'équipe en partageant ses connaissances.
- S'adapter et s'ouvrir à l'apprentissage de nouvelles technologies.
- Exercer une rigueur, une vigilance et un souci du détail dans le travail.
- Cultiver des aptitudes relationnelles et un sens de la communication favorisant le travail en équipe.


Niveau d'études minimum requis

  • Niveau Niveau 6 Licence/diplômes équivalents
  • Spécialisation Informatique, traitement de l'information, réseau de transmission des données

Langues

  • Français Seuil

Qui sommes-nous ?

Le Centre national de la recherche scientifique est un organisme public de recherche pluridisciplinaire placé sous la tutelle du ministère de l’Enseignement supérieur, de la Recherche et de l’Innovation.

C’est l’une des plus importantes institutions publiques au monde : 33 000 femmes et hommes (dont plus de 16 000 chercheurs et plus de 16 000 ingénieurs et techniciens), en partenariat avec les universités et les grandes écoles, y font progresser les connaissances en explorant le vivant, la matière, l’Univers et le fonctionnement des sociétés humaines.

En savoir plus sur l'employeur

À propos de l'offre

  • Campgane printemps 2024

  • Le Centre national de la recherche scientifique est l’une des plus importantes institutions publiques au monde : 34 000 femmes et hommes (plus de 1 000 laboratoires et 200 métiers), en partenariat avec les universités et les grandes écoles, y font progresser les connaissances en explorant le vivant, la matière, l’Univers et le fonctionnement des sociétés humaines. Depuis plus de 80 ans, y sont développées des recherches pluri et interdisciplinaires sur tout le territoire national, en Europe et à l’international. Le lien étroit que le CNRS tisse entre ses missions de recherche et le transfert vers la société fait de lui un acteur clé de l’innovation en France et dans le monde. Le partenariat qui le lie avec les entreprises est le socle de sa politique de valorisation et les start-ups issues de ses laboratoires (près de 100 chaque année) témoignent du potentiel économique de ses travaux de recherche.

  • Vacant
  • Experte / Expert en calcul scientifique

D'autres offres pourraient vous intéresser