Ingénieur développement logiciel spécialiste en compilation (H/F)
Référence : 2024-1516304
- Fonction publique : Fonction publique de l'État
-
Employeur :
INRIA Paris
Inria est l'institut national de recherche dédié aux sciences et technologies du numérique. - Localisation : 36 rue Barrault 75013 Paris
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
- Télétravail possible Oui
Vos missions en quelques mots
Contexte et atouts du poste
Le projet d'envergure visé est le projet Catala, dans le cadre de la stratégie d'appui aux politiques publiques d'Inria. Catala est un nouveau langage de programmation dédié permettant la transcription des textes de loi définissant des algorithmes en code, en commençant par le droit fiscal et celui des prestations sociales.
Chaque année, l'administration fiscale française doit calculer le montant imposable de plus de 38 millions de foyers fiscaux. Depuis les années 1980, celle-ci a mis en place des algorithmes permettant de centraliser et de faciliter tous ces calculs ; les caisses d'allocation familiale ont fait de même, ainsi que les caisses de retraite et l'assurance chômage. Ces algorithmes, s'exécutant grâce à des programmes informatiques, doivent traduire en code informatique les textes de nature législative et réglementaire auxquels ils correspondent. L'adéquation entre les programmes et les textes est essentielle afin de garantir que le montant d'impôt prélevé est bien celui prévu par le législateur, mais les erreurs de transcription ne sont malheureusement pas rares. C'est pourquoi il est nécessaire aujourd'hui de proposer une alternative aux solutions existantes d'implémentation informatique des lois permettant d’en améliorer la correction et l’efficacité. Le langage Catala, développé à l’Inria sous l’impulsion de Denis Merigoux et qui résulte d'une collaboration entre juristes et informaticiens, cherche à résoudre ces problèmes.
Le langage de programmation Catala repose sur son compilateur, écrit en OCaml. Ce compilateur prend en entrée des programmes sources écrit en Catala et produit en sortie des programmes générés dans des langages cibles tels que OCaml, Python, Javascript, C, etc. Ces programmes générés sont ensuite compilés ou interprétés par les utilisateurs pour être utilisés dans leurs applications informatiques. La maintenance et l'évolution de ce compilateur sont critiques
pour le projet, requérant donc une forte expertise en compilation et conception de langages de programmation.
La première affectation au sein de cette équipe est d'une durée de 4 ans.
Mission confiée
Mission principale (environ 90 % de son temps), qui concerne essentiellement le domaine de la compilation et de la conception de langages de programmation:
- Conception et développement de logiciels au sein des projets de développement auxquels la personne est affectée.
- Conseil et soutien à l'expérimentation.
- Soutien et encadrement pour les développeurs.
Missions collectives (environ 10 % de son temps) :
Dans le but de partager son savoir-faire, la personne recrutée est amenée à réaliser des activités utiles au collectif des ingénieurs de développement de l'institut, dans le domaine de la compilation mais aussi plus largement.
Profil recherché
• Connaissances et expérience en maquettage, prototypage logiciels.
• Capacité à participer à la veille technologique au sein de l’institut.
• Capacité à rédiger, à publier et à présenter en français et en anglais.
• Encadrement technique d'autres ingénieurs.
• Capacité à proposer et réaliser des mises en œuvre de référence, des prototypes. et démonstrateurs : autonomie, créativité, veille proactive, écoute des besoins.
• Capacité à comprendre les contextes et besoins scientifiques, et à les traduire dans des implémentations techniques.
• Maîtrise de la démarche scientifique associée à l'expérimentation (science reproductible, état de l'art scientifique, état de l'art technologique d'un domaine, publication logicielle, contribution à la publication scientifique sur l'aspect méthodologique et la mesure de performance).
• Savoir être : ouverture d'esprit, ténacité, aimant l'effort au long terme.
• Expertise technologique pointue sur au moins un outil technique du domaine scientifique de la compilation et de la conception de langages de programmation, par exemple : compilateur pour un langage fonctionnel (OCaml, Haskell, etc.), assistant de preuve (Coq, etc.) ou prouveur automatique (Z3, etc).
Langues
- Anglais Avancé ou indépendant
Éléments de candidature
Documents à transmettre
Qui sommes-nous ?
Inria est l’institut national de recherche dédié aux sciences et technologies du numérique. Il emploie 2600 personnes. Ses 215 équipes-projets agiles, en général communes avec des partenaires académiques, impliquent plus de 3900 scientifiques pour relever les défis du numérique, souvent à l’interface d’autres disciplines. L’institut fait appel à de nombreux talents dans plus d’une quarantaine de métiers différents. 900 personnels d’appui à la recherche et à l’innovation contribuent à faire émerger et grandir des projets scientifiques ou entrepreneuriaux qui impactent le monde. Inria travaille avec de nombreuses entreprises et a accompagné la création de plus de 200 start-up. L'institut s'efforce ainsi de répondre aux enjeux de la transformation numérique de la science, de la société et de l'économie.
Descriptif du service
A propos du centre
Le centre de recherche Inria de Paris est l’un des neuf centres de recherche Inria regroupant 700 personnes réparties dans 34 équipes de recherches et 7 services d’appui à la recherche. Il est un acteur majeur et reconnu dans le domaine des sciences numériques en région Ile de France. Ses axes de
recherche principaux sont : intelligence artificielle, santé numérique, robotique, fiabilité des logiciels et sécurité, etc.
Il est au coeur d'un riche écosystème de R&D et d’innovation : acteurs de la recherche et de l’enseignement supérieur, laboratoires d'excellence, institut de recherche technologique, PME fortement innovantes, grands groupes industriels, pôles de compétitivité…
Le centre Inria de Paris est partenaire des 3 universités de recherche intensive : Sorbonne Université (SU), Université Paris Cité (UPC) et l’Université Paris Sciences & Lettres (PSL).
Chaque équipe-projet conduit des collaborations avec des partenaires industriels, comme par exemple Airbus, Dassault Systèmes, Microsoft, Orange, Renault, Safran, Thales, Valeo…
L'ingénieur·e recruté·e s'intègre au collectif des ingénieur·e·s permanent·e·s de l'institut, représenté au niveau d'un centre par le Service d'Expérimentation et de Développement (SED).
Elle ou il sera rattaché·e hiérarchiquement au responsable du SED.
Son activité principale s'incrit dans le cadre de projets d'envergure sur lesquels elle·il est affecté·e.
À propos de l'offre
-
Principales activités
Aspect recherche:
Veille technologique
Participation aux publications scientifiques issues du projet Catala.
Contribution aux expérimentations et publications scientifiques issues des projets de développement auxquels la personne est affectée.
Aspect ingénierie:Conception et développement des logiciels scientifiques utiles aux travaux de recherche dans le domaine de la compilation et de la conception de langages de programmation.
Rédaction et publication de documentation.
Aspect gestion de projet:Réflexions, mise en place, et éventuellement coordination d'un mode de fonctionnement entre les développeurs au sein des projets de développement auxquels la personne est affectée:
- Présentation des évolutions et des choix techniques ;
- Identification des besoins des utilisateurs ;
- Rétro-planification du travail au fil de l'activité.
Mise en place de support de formation à destination des développeurs/utilisateurs au sein de la communauté des développeur·se·s et mainteneur·e·s de Catala.
Conseil et expertise en développement technologique de la communauté des développeur·se·s et mainteneur·e·s de Catala.Activités collectives, par exemple :
Formation ponctuelle, séminaires.
Vecteur des bonnes pratiques en génie logiciel et enexpérimentation.
Aide aux recrutement et encadrement.
Participation à des rédactions de de projets, conseils sur des projets de développement.
Représentation de l'institut sur le plan technique -
Vacant à partir du 21/03/2024
-
Tech lead