Ingénieur développement et méthodes formelles pour les systèmes distribués H/F - Palaiseau, France - CEA Tech

    CEA Tech
    CEA Tech Palaiseau, France

    il y a 2 semaines

    Default job background
    CDD
    Description

    Description du poste

    Domaine

    Mathématiques, information scientifique, logiciel

    Contrat

    CDD

    Intitulé de l'offre

    Ingénieur développement et méthodes formelles pour les systèmes distribués H/F

    Statut du poste

    Cadre

    Durée du contrat (en mois)

    18 /36

    Description de l'offre

    from CEA Tech on Vimeo.

    Le laboratoire participe au développement de la plateforme MAAT IAT pour la spécification et l'analyse formelle de système distribués de tout type. MAAT IAT met en œuvre des techniques de vérification à l'exécution (VE) qui visent à vérifier la correction du fonctionnement d'un système au moment de son exécution. Leur principe est d'analyser la trace d'exécution du système (ou les traces d'exécution des divers composants locaux d'un système distribué), observée au moyen d'une architecture de monitoring, afin de vérifier sa conformité à un modèle formel de référence, caractérisant l'ensemble des comportements acceptables du système.

    Il existe deux types d'approches de VE : les approches hors ligne et en ligne. Dans les approches hors ligne, les exécutions observées sont collectées a priori lors d'une phase d'analyse, tandis que dans les approches en ligne, les messages élémentaires composant l'observation sont traités dès que possible au cours de l'exécution et le processus de vérification interagit continuellement avec l'architecture de monitoring. Jusqu'à présent la plateforme MAAT IAT inclut uniquement des algorithmes de VE hors ligne, mais la définition d'un algorithme de VE en ligne pour IAT est au cœur des travaux de recherche actuel au CEA LIST qui seront développés dans le cadre de différents projets avec nos partenaires industriels et institutionnels.

    Vous rejoindrez l'équipe de développement de MAAT IAT et travaillerez sur la VE en ligne. Vous accomplirez les missions suivantes sous la direction du chef de projet MAAT IAT :

  • Participation à la spécification fonctionnelle, aux choix technologiques et à l'implémentation de l'architecture de monitoring pour la VE en ligne
  • Modélisation de cas d'usage de systèmes distribués spécifiques dans le cadre de projets et tests de la VE en ligne de MAAT IAT sur ces cas d'usage
  • Développement de démonstrateurs de VE en ligne basés sur ces cas d'usage
  • Participation à la maintenance corrective, évolutive et adaptative de MAAT IAT
  • Participation aux actions de communication autour de MAAT IAT
  • #CEA-List CDI CDD ;

    Profil du candidat

    Vous êtes ingénieur ou docteur en informatique ou en mathématiques appliquées à l'informatique et vous avez de préférence acquis 2 à 3 ans d'expérience dans ce domaine.

    Vous avez le goût des défis technologiques où la solution n'est pas connue à l'avance, vous disposez de bonnes aptitudes relationnelles et savez travailler dans un cadre projet, en équipe comme en autonomie.

    Vous possédez obligatoirement les compétences techniques suivantes :

  • Expérience de la programmation logicielle avec un focus sur les aspects distribués, idéalement en Rust et C++
  • Aptitude pour l'analyse et la modélisation formelle d'algorithmes complexes
  • Connaissance de techniques automatiques d'analyse d'exécutions (e.g. automatisation d'exécution de test, Model-Based Testing, Runtime Verification, Monitoring)
  • Les compétences techniques suivantes sont appréciées :

  • Maitrise d'une ou plusieurs technologies de monitoring réseau
  • Connaissance d'une ou plusieurs méthodes de spécification formelle
  • Connaissance de l'ingénierie de la spécification et du test
  • Expérience de l'ingénierie système et de la modélisation de systèmes en UML, SysML et Message Sequence Chart
  • Vous disposez de compétences rédactionnelles dans le domaine technique ou scientifique et savez communiquer en anglais à l'écrit comme à l'oral.