Le poste Ingénieur(e) logiciel Full Stack Python / Scientific Software Engineer
Partager cette offre
Contexte
Notre client est une organisation internationale évoluant dans un environnement à forte composante data, analytique et quantitative. Ses équipes conçoivent et exploitent des solutions permettant de traiter des volumes importants de données, de produire des analyses avancées et d’accompagner des activités de recherche, de modélisation et de simulation.
Dans un contexte de modernisation de ses outils internes, notre client souhaite renforcer une équipe dédiée à la conception d’une plateforme de recherche de nouvelle génération, destinée à faciliter le travail d’équipes analytiques et scientifiques sur des environnements de calcul avancés.
À propos du rôle
Nous recherchons un(e) Ingénieur(e) logiciel Full Stack Python / Scientific Software Engineer, anglais fluent, pour contribuer à la conception, au développement et à l’industrialisation d’une plateforme de recherche interne.
Cette plateforme permettra aux utilisateurs de créer, exécuter et partager des notebooks — par exemple Jupyter ou environnements similaires — tout en masquant la complexité liée à l’accès aux données, à la gestion des environnements techniques et à l’infrastructure de calcul.
L’objectif est de conserver la flexibilité appréciée dans les notebooks par les équipes de recherche, tout en rendant ces environnements plus robustes, performants, reproductibles et facilement partageables entre équipes, sans les contraintes opérationnelles associées aux plateformes standards du marché.
Il s’agit d’un rôle d’ingénierie opérationnel, à l’intersection du calcul scientifique, des outils de recherche, de la data engineering et du développement logiciel de niveau production.
Vos responsabilités
Vous serez amené(e) à :
Concevoir et développer des workflows de recherche centrés sur les notebooks, permettant à des analystes, chercheurs ou experts quantitatifs d’exécuter et de partager leurs travaux de calcul de manière sécurisée et reproductible.
Développer des services backend en Python pour prendre en charge l’exécution des notebooks, l’annotation, les commentaires, le versioning, les sorties de simulation ainsi que la traçabilité des données.
Concevoir des processus, services et API permettant aux utilisateurs de parcourir, découvrir, lancer, partager et réutiliser des artefacts de recherche au sein d’une communauté d’utilisateurs internes.
Travailler en étroite collaboration avec des équipes de recherche, d’analyse ou de modélisation afin de comprendre leurs usages, leurs besoins de simulation, leurs contraintes opérationnelles et leurs exigences en matière de données.
Abstraire la complexité de l’accès aux données — jeux de données volumineux, données versionnées, flux propriétaires ou sources multiples — afin que les notebooks restent simples à utiliser, portables et performants.
Contribuer à faire le lien entre le code exploratoire produit dans un cadre de recherche et des solutions logicielles robustes, maintenables et adaptées à un environnement de production.
Participer aux décisions d’architecture relatives aux environnements d’exécution, au sandboxing, à la scalabilité, à la reproductibilité et à la sécurité des traitements.
Promouvoir de bonnes pratiques d’ingénierie logicielle, tout en tenant compte de la nature itérative et expérimentale des travaux de recherche.
Profil recherché
Le profil recherché devra présenter :
Une solide expérience en ingénierie logicielle Python, allant au-delà de simples scripts exploratoires.
Une expérience concrète de l’utilisation de notebooks dans le cadre de workflows analytiques, scientifiques ou de recherche.
Une expérience dans la conception ou le développement de systèmes supportant l’analyse de données, les simulations, la modélisation ou la recherche computationnelle.
Une bonne compréhension des enjeux liés à la reproductibilité, à la gestion des dépendances, à la performance des logiciels scientifiques et à l’industrialisation de travaux exploratoires.
Une capacité à intervenir sur l’ensemble de la stack, notamment sur des sujets backend, API, interfaces ou outillage utilisateur.
Une aptitude à collaborer étroitement avec des utilisateurs qui ne sont pas nécessairement des ingénieurs logiciels traditionnels, tels que des chercheurs, experts quantitatifs, analystes, data scientists ou scientifiques.
Nous sommes particulièrement intéressés par des candidats issus d’environnements où les enjeux de recherche, de calcul, de modélisation ou de simulation sont fortement présents, notamment :
Monde académique : doctorat, post-doctorat, research software engineering, ingénierie de recherche.
Biotechnologies, sciences de la vie ou environnements scientifiques exigeants.
Calcul scientifique, modélisation, simulation numérique ou plateformes de recherche.
Environnements quantitatifs, data-driven ou fortement orientés analyse et modélisation.
Équipes ayant travaillé à la frontière entre recherche exploratoire, outillage interne et industrialisation logicielle.
Environnement de travail
Les compétences suivantes sont particulièrement utiles pour réussir dans ce rôle :
Python avancé et développement backend.
Notebooks et environnements associés, notamment Jupyter ou équivalents.
Conception d’API et de services applicatifs.
Gestion d’environnements d’exécution, dépendances, packaging et reproductibilité.
Traitement de données volumineuses ou complexes.
Pratiques de versioning, traçabilité, documentation et partage d’artefacts.
Sensibilité aux problématiques de sécurité, isolation des environnements, scalabilité et performance.
Ce rôle s’adresse à un(e) ingénieur(e) capable de comprendre les besoins d’équipes de recherche ou d’analyse avancée, puis de concevoir des solutions logicielles robustes pour rendre leurs travaux plus fiables, plus partageables et plus facilement exploitables.
Le profil idéal combine une culture du développement logiciel de qualité avec une bonne compréhension des usages propres aux environnements scientifiques, analytiques ou quantitatifs.
Postulez à cette offre !
Trouvez votre prochaine mission parmi +8 000 offres !
-
Fixez vos conditions
Rémunération, télétravail... Définissez tous les critères importants pour vous.
-
Faites-vous chasser
Les recruteurs viennent directement chercher leurs futurs talents dans notre CVthèque.
-
100% gratuit
Aucune commission prélevée sur votre mission freelance.
Ingénieur(e) logiciel Full Stack Python / Scientific Software Engineer
WE +
