Ingénieur·e de recherche et développement en méthodes formelles

Inria

USonsitePosted Jul 16, 2026
Posting intelligenceActively listedReposted 7×, possible evergreen/ghost posting

Skills

typescriptgo

About the role

Type de contrat : CDD

Niveau de diplôme exigé : Bac + 5 ou équivalent

Autre diplôme apprécié : Doctorat

Fonction : Ingénieur scientifique contractuel

A propos du centre ou de la direction fonctionnelle

L’Inria est l’Institut national de recherche en sciences du numérique, dont le centre Inria d’Université Côte d’Azur fait partie. Avec une forte expertise en informatique et mathématiques appliquées, les projets de recherche du centre Inria d’Université Côte d’Azur touchent toutes les dimensions des sciences et technologies du numérique, et génèrent de l’innovation. Implanté principalement à Sophia Antipolis, mais également à Nice ou Montpellier, il regroupe 47 équipes de recherche et neuf services d’appui. Il est présent dans les domaines de l’intelligence artificielle, la science des données, la sécurité des systèmes informatiques, la robotique, l’ingénierie de réseaux, la prévention des risques naturels, la transition écologique, la biologie numérique, les neurosciences computationnelles, les données de santé… Le Centre Inria d’Université Côte d’Azur est un acteur majeur en termes d'excellence scientifique par les résultats obtenus et les collaborations tant au niveau européen qu'international.

Contexte et atouts du poste

Ce poste s'inscrit dans le projet FORMASK, mené en partenariat au sein d'un consortium réunissant Inria, PQShield et CryptoExperts, et soutenu par le Programme de Transfert au Campus Cyber (PTCC).

FORMASK vise à renforcer la sécurité des implémentations cryptographiques face aux attaques par canaux auxiliaires (consommation électrique, rayonnement électromagnétique, temps d'exécution). Le masquage est aujourd'hui l'une des contre-mesures logicielles les plus efficaces, mais sa mise en œuvre correcte reste délicate. L'objectif du projet est de développer une chaîne d'outils de vérification formelle, ouverte et industrialisable, garantissant à la fois la correction fonctionnelle et la résistance aux attaques physiques de ces implémentations.

La personne recrutée contribuera principalement au développement et à l'extension des outils de vérification du consortium (les assistants et langages EasyCrypt, Jasmin et maskVerif), au cœur de l'infrastructure technique du projet. Une part importante des travaux portera sur le compilateur Jasmin (langage bas niveau pour la cryptographie à haute assurance, dont la sémantique est formalisée en Rocq/Coq) : extension de sa modélisation, mutualisation des descriptions d'architecture avec EasyCrypt, et amélioration des chaînes de vérification associées. C'est un poste à forte composante ingénierie logicielle de haut niveau, à l'interface entre langages de programmation, compilation et méthodes formelles, avec des développements publiés en open source.

Des déplacements ponctuels (réunions mensuelles du consortium, séminaires) sont à prévoir ; les frais de déplacement seront pris en charge dans la limite du barème en vigueur.

Mission confiée

Missions :

Avec l'aide de l'équipe projet et sous la supervision de Benjamin Grégoire, la personne recrutée aura la charge d'étendre et de fiabiliser les outils de vérification formelle utilisés dans FORMASK. Il s'agit d'enrichir les langages et logiques de preuve pour couvrir des constructions issues des langages système, de mutualiser les descriptions d'architectures matérielles entre outils, et de renforcer les capacités de vérification automatique des contre-mesures de masquage.

Pour une meilleure connaissance du sujet :

Un état de l'art et des références scientifiques (EasyCrypt, Jasmin, maskVerif, propriétés SNI/PINI) pourront être communiqués au candidat ; ils sont accessibles via le site de l'équipe et les publications du consortium.

Collaboration :

La personne recrutée travaillera en lien étroit avec les chercheurs et ingénieurs des trois partenaires (notamment les auteurs et mainteneurs d'EasyCrypt et de Jasmin), dont elle prolongera et consolidera les développements.

Responsabilités :

Elle est responsable de la conception, de l'implémentation et de la validation de composants logiciels robustes et maintenables, et prendra des initiatives pour améliorer la fiabilité, la cohérence et la réutilisabilité de l'outillage produit.

Pilotage :

Elle assurera le suivi technique de ses développements, leur documentation et leur intégration dans les dépôts partagés du consortium, en autonomie sur son périmètre.

Principales activités

Concevoir et implémenter des extensions de langages et de logiques de programme au sein d'assistants de preuve.

Développer des composants de compilation / traduction entre représentations (langages source, langages intermédiaires, descriptions d'architecture).

Renforcer les outils de vérification automatique de propriétés de sécurité d'implémentations masquées.

Tester, valider et documenter les développements ; les intégrer dans les dépôts open source du projet.

Présenter l'avancement des travaux aux partenaires du consortium.

Activités complémentaires :

Contribuer à la maintenance et à la robustesse générale de l'outillage partagé.

Participer à la diffusion des résultats (documentation publique, site du projet).

Échanger avec la communauté d'utilisateurs des outils.

Compétences

Solide maîtrise de la programmation fonctionnelle, idéalement en OCaml (langage d'implémentation d'EasyCrypt et de Jasmin). Requis.

Bonnes connaissances en théorie des langages de programmation : sémantique, systèmes de types, conception de langages ou de compilateurs. Requis.

Expérience d'un assistant de preuve, en particulier Rocq/Coq (sémantique du compilateur Jasmin formalisée en Rocq/Coq). Fortement recommandée.

Familiarité avec les méthodes formelles et les outils de vérification (EasyCrypt, maskVerif). Appréciée.

Notions de sécurité matérielle / attaques par canaux auxiliaires et de masquage. Appréciées (formation possible en poste).

Connaissance de la programmation bas niveau (assembleur, ISA). Un plus.

Langues : français et anglais (lecture de littérature scientifique et échanges au sein du consortium international). Requis.

Compétences relationnelles : autonomie, rigueur, capacité à collaborer avec des équipes réparties, sens de la communication technique.

Compétences additionnelles appréciées : contribution à des projets open source, expérience de développement d'outils de recherche, publications ou doctorat dans un domaine connexe.

Avantages

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

Rémunération

A partir de 2692 € brut mensuel (selon diplôme et expérience)

Informations générales

Thème/Domaine : Sécurité et confidentialité

Ingénierie logicielle (BAP E)

Ville : Sophia Antipolis

Centre Inria : Centre Inria d'Université Côte d'Azur

Date de prise de fonction souhaitée : 2026-12-01

Durée de contrat : 2 ans

Date limite pour postuler : 2026-08-30

Attention: Les candidatures doivent être déposées en ligne sur le site Inria. Le traitement des candidatures adressées par d'autres canaux n'est pas garanti.

Consignes pour postuler

Sécurité défense :

Ce poste est susceptible d’être affecté dans une zone à régime restrictif (ZRR), telle que définie dans le décret n°2011-1425 relatif à la protection du potentiel scientifique et technique de la nation (PPST). L’autorisation d’accès à une zone est délivrée par le chef d’établissement, après avis ministériel favorable, tel que défini dans l’arrêté du 03 juillet 2012, relatif à la PPST. Un avis ministériel défavorable pour un poste affecté dans une ZRR aurait pour conséquence l’annulation du recrutement.

Politique de recrutement :

Dans le cadre de sa politique diversité, tous les postes Inria sont accessibles aux personnes en situation de handicap.

Contacts

Équipe Inria : SPLITS

Recruteur :

Grégoire Benjamin / Benjamin.Gregoire@inria.fr

L'essentiel pour réussir

Nous recherchons un·e ingénieur·e R&D confirmé·e, à l'aise dans le développement logiciel exigeant comme dans un environnement de recherche. La personne idéale prend plaisir à travailler sur des bases de code complexes, aime concevoir des outils fiables et bien structurés, et sait apprendre en continu au contact d'un domaine scientifique pointu. Rigueur, autonomie, curiosité et goût du travail en équipe au sein d'un consortium sont essentiels pour réussir cette mission. Une thèse dans un domaine connexe (méthodes formelles, langages de programmation, cryptographie, compilation) constitue un réel atout, sans être indispensable.

A propos d'Inria

Questions about this role

Click "Apply with AI Applyd" above. We auto-fill the application from your resume and answer screening questions in seconds. No copy and paste, no juggling tabs.

Compensation for Other roles in United States varies widely by seniority, employer size, and remote vs onsite arrangement. Check the salary range on this listing when published, or browse our Other hub for United States medians across recent openings.

Most applications complete in under 90 seconds. You can track the status in your dashboard and watch the screenshot proof land the moment the application submits.

AI Applyd supports Greenhouse, Lever, Ashby, Workday, iCIMS, SmartRecruiters, Personio, Teamtailor and other major ATS platforms. If we can submit through the platform, we do.

Want AI Applyd to auto-apply to roles like this?

We tailor your resume per posting, fill the forms, and track replies for you.