Stage Master 2 : Développement d'une nouvelle architecture pour le projet MoonGO

 Stage · Stage M2  · 6 mois    Bac+5 / Master   TAGC - Theories and Approaches of Genomic Complexity · Marseille (France)  Sur grille nationale (~ 500 et600€/mois)

 Date de prise de poste : 2 janvier 2023

Mots-Clés

Interaction Proteine-proteine Python Snakemake SCRUM

Description

MoonGO est une application permettant de construire un réseau d’interactions protéine-protéine de haute qualité à partir des données stockées dans les bases de données publiques.

Très schématiquement, MoonGO est composé d’un workflow d’analyse qui (i) récupère les données publiques de séquence protéiques et d’interactions, (ii) filtre les informations redondantes, (iii) construit le graphe d’interactions (iv) calcule une partition du graphe et (v) analyse les enrichissement des modules de la partition à partir d’annotations fonctionnelles des protéines.  MoonGO utilise les technologies Snakemake et Docker pour assurer le déroulement du workflow et la reproductibilité des analyses. 

L’un des objectifs de MoonGO est de produire un réseau de haute qualité annoté chaque année à partir des données publiques actualisées. Cependant, MoonGO souffre d’un problème d’architecture logicielle rendant son exploitation délicate. Tout d’abord, pour des raisons historiques, le code est écrit dans 3 langages différents (PERL, bash et Python) ce qui rend son évolution complexe. Ensuite, le code ne permet pas de facilement s’adapter aux contraintes des bases de données publiques qui changent régulièrement l’emplacement et le format de leurs fichiers ressources. Enfin, l’exécution du code reste assez complexe du fait de l’architecture composées de couches empilées issues de l’évolution historique du logiciel.

Nous désirons restructurer totalement l’architecture du logiciel, recoder l’ensemble de l’analyse en Python et assurer la simplicité et la flexibilité de l’exécution. Pour cela, il faut (i) bien comprendre le contenu analytique du logiciel qui est plus complexe que l’explication fournie dans cette description (ii) recoder l’ensemble des analyses en Python (iii) trouver et implémenter des solutions innovantes pour assurer la facilité d’exploitation.

Objectifs du stage

Vous serez en charge de la conception et du développement de la nouvelle version de MoonGO. Vous devrez analyser le code existant, proposer une nouvelle architecture, implémenter la solution et offrir une solution pour faciliter l’exécution du logiciel.

Profil recherché

Nous recherchons un étudiant ou une étudiante en bioinformatique ayant les compétences suivantes:

  • Bon niveau en Python

  • Connaissance de l’utilisation de Snakemake

  • Connaissances en analyse de séquences proteiques (facultatif)

  • Une connaissance de Docker serait un plus.

  • Rigueur, adaptabilité, autonomie

  • Bonne capacité de communication

Encadrement

Vous évoluerez au sein de l’équipe Network Biology du TAGC dirigée par Christine Brun. L’encadrement sera effectué par Christine Brun ainsi que par Andreas Zanzoni, Maître de Conférences en bioinformatique et Lionel Spinelli, Ingénieur de Recherche en bioinformatique.

L’équipe utilise des méthodes de gestion de projet adaptées de la méthode Agile SCRUM qui se base sur la définition précise de tâches sur des périodes définies (sprint) et sur des interactions dynamiques et fréquentes entre les personnes impliquées dans le projet.

Vous recevrez les formations sur les technologies qui vous feraient défaut (Docker, Snakemake...) afin de vous permettre d’effectuer le stage dans les meilleures conditions.

Une attention particulière sera apportée à la rédaction de votre rapport de stage et à l’oral de votre soutenance.

Candidature

Procédure : Merci de nous adresser un email avec un CV et une lettre de motivation.

Date limite : 30 juin 2023

Contacts

Christine Brun

 chNOSPAMristine-g.brun@inserm.fr

Offre publiée le 18 octobre 2022, affichage jusqu'au 31 mars 2023