Engineer Program matching and transformation at a massive scale: Coccinelle meets Software Heritage
Type de contrat : CDD
Niveau de diplôme exigé : Bac + 5 ou équivalent
Fonction : Ingénieur scientifique contractuel
Corps d'accueil : Ingénieur d'Etudes (IE)
Contexte et atouts du poste
Coccinelle (https://coccinelle.gitlabpages.inria.fr/website/) is a tool for program matching and transformation that has been developed in the Whisper team. Coccinelle has been extensively used for making repetitive transformations in the Linux kernel. Today, in the context of the project SWHSec, we would like to consider how Coccinelle can be used effectively to improve quality of software more generally, by targeting the sorce code collected in Software Heritage (https://www.softwareheritage.org/).
Mission confiée
Expected tasks include:
- Developing infrastructure to allow Coccinelle to interact with Software Heritage
- Identifying and resolving weaknesses in Coccinelle (typically in the parser) with respect to the software projects found in Software Heritage
- Identifying transformation and bug finding rules that can be applicable to a wide range of software projects found in Software Heritage
- Contributing to the design and evaluation of an approach to inferring transformation rules from examples, targeting the range of software projects found in Software Heritage
Note that Coccinelle is implemented in OCaml, and thus improvements to Coccinelle will involve OCaml programming. There is also the possibility to work with Coccinelle for Rust, which is written in Rust. Infrastructure for evaluating Coccinelle on the software projects found in Software Heritage can be developed using other programming languages, subject to the constraints of the task at hand and the interfaces provided by Software Heritage.
Principales activités
The principal activities are described in the previous section.
Compétences
Strong software development skills. Experience in designing and developing software that is robust and can be used and maintained by others.
Experience in programming with OCaml or another functional language.
Familiarity with common code patterns that indicate insecure or poor quality software.
Familiarity with build tools and git.
The ability to work independently.
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 et aménagement du temps de travail (après 12 mois d'ancienneté)
- É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
Informations générales
- Thème/Domaine :
Systèmes distribués et intergiciels
Ingénierie logicielle (BAP E) - Ville : Paris
- Centre Inria : Centre Inria de Paris
- Date de prise de fonction souhaitée : 2024-10-01
- Durée de contrat : 2 ans, 6 mois
- Date limite pour postuler : 2024-08-31
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 : WHISPER
-
Recruteur :
Lawall Julia / Julia.Lawall@inria.fr
A propos d'Inria
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.