CURRICULUM VITAE Jonathan Lejeune LIPN - Laboratoire d informatique de Paris Nord 99, avenue Jean-Baptiste Clément 93430 Villetaneuse FRANCE Tel LIPN : +33 (0)1 49 40 40 83 Tel IUT : +33 (0)1 76 53 47 77 Mail : jonathan.lejeune33@gmail.com Né le 8 Novembre 1988 à Amiens, France Nationalité : française Attaché Temporaire d Enseignement et de Recherche à l IUT de l Université de Paris Descartes et au Laboratoire d Informatique de Paris Nord (LIPN, UMR CNRS 7030) Qualifié aux fonctions de Maître de conférences en informatique (section 27) numéro 15227267875 Formation universitaire 19 Sept. 2014 Doctorat d informatique de l Université Pierre et Marie Curie (UPMC-CNRS-Inria REGAL) mention très honorable Sujet de thèse : Algorithmique distribuée d exclusion mutuelle : vers une gestion efficace des ressources Rapporteurs : M. Abdelmadjid Bouabdallah Professeur UTC Mme Christine Morin Directrice de recherche Inria Examinateurs : M. Achour Mostefaoui Professeur Université de Nantes M. Mohamed Naimi Professeur Université de Cergy-Pontoise M. Franck Petit Professeur UPMC Encadrants : M. Pierre Sens Professeur UPMC et Directeur de thèse Mme Luciana Arantes Maître de conférences UPMC M. Julien Sopena Maître de conférences UPMC Sept. 2011 Juin 2009 Master d informatique de l UPMC spécialité systèmes et applications répartis parcours systèmes embarqués, temps réel mention bien Diplôme d excellence en informatique de l UPMC (équivalent Magistère) Licence d informatique de l Université de Picardie Jules Verne (Amiens) mention bien
Sept. 2015 - Août 2016 Oct. 2014 - Août 2015 Oct. 2011 - Sept. 2014 Avr. - Sept. 2011 Juin - Juil 2010 Expériences professionnelles ATER IUT Paris Descartes et Laboratoire d Informatique de Paris Nord Sujet de recherche : Ordonnancement de tâches à large échelle Post-doc à École des Mines de Nantes au LINA (UMR 6241) dans l équipe Inria ASCOLA Sujet : Élasticité et informatique autonome dans le modèle du Cloud Computing Doctorant / moniteur par le financement d une allocation ministérielle Stage recherche de fin d études au LIP6 (équipe Inria REGAL), encadré par Julien Sopena, Pierre Sens et Luciana Arantes. Sujet : Exclusion mutuelle répartie pour les clouds Stage de Master 1 au LIP6 (équipe Inria REGAL), encadré par Olivier Marin, Julien Sopena et Luciana Arantes. Sujet : Tolérance aux pannes byzantines sur la plate-forme Hadoop MapReduce. Domaines Partie 1 : Activités de recherche Systèmes distribués à large échelle (Clouds, Grilles, Cluster) ; Algorithmique distribuée ; Autonomic computing ; Résumé des activités de recherche Mes travaux de recherche se situent dans le cadre des systèmes distribués à large échelle. Je me suis intéressé lors de mon premier stage de master en laboratoire, à des algorithmes de tolérance aux pannes byzantines dans la plate-forme de Map Reduce Hadoop. Mes travaux de thèse se sont portés sur l exclusion mutuelle distribuée. Ce pilier de l algorithmique répartie permet de protéger les accès concurrents sur une ou plusieurs ressources partagées. Dans un premier temps, j ai conçu et évalué des algorithmes d exclusion mutuelle en prenant en compte des requêtes ayant des contraintes de temps ou de priorités. Dans un second temps, j ai abordé le problème de l exclusion mutuelle généralisée pour allouer de manière exclusive plusieurs types de ressources hétérogènes. Mes travaux de recherche effectués à l École des Mines de Nantes lors d un post-doc d un an portaient sur des mécanismes d auto-dimensionnement de systèmes offrant des services (IaaS, SaaS, ) que l on rencontre dans les Nuages informatiques. Les travaux actuels au Laboratoire d informatique de Paris Nord porte sur des problèmes d affectation de tâches dans des systèmes large échelle. Ils font également l objet de collaborations avec des partenaires industriels dans le cadre de projets FUI. Tous mes travaux de recherche sont abordés de manière formelle en proposant et en prouvant de nouveaux algorithmes/modèles. J apporte également une approche expérimentale complémentaire en évaluant mes algorithmes sur des plates-formes réelles (clusters internes au laboratoire ou bien sur des plates-formes académiques comme Grid 5000).
1) Stage de Master : Tolérance aux pannes dans le Map-Reduce Problématique : La plate-forme Hadoop permet de déployer et d exécuter des programmes MapReduce sur un ensemble de machines. Les versions (0.x et 1.x) de la plate-forme sur lesquelles nos travaux ont porté, sont basées sur un modèle purement maître/esclaves et possèdent peu de mécanismes de tolérance aux pannes. D une part, la panne franche d un esclave implique une réaffectation des tâches perdues sur un autre esclave opérationnel en perdant ainsi leur progression ce qui peut introduire un temps de recouvrement long. D autre part la plate-forme ne tolère pas les pannes byzantines, pouvant poser des problèmes de sécurité et produire des résultats incohérents. Contribution : Nous nous sommes donc penchés sur une modification de la plate-forme en introduisant dans un premier temps des mécanismes de réplication de tâches sur des esclaves différents. À la panne d un esclave, il n est donc plus nécessaire de relancer les tâches perdues puisque d autres instances de celles-ci ont été exécutées ailleurs. Ce mécanisme de réplication a servi dans un deuxième temps pour la conception d un protocole distribué tolérant les comportements malveillants (byzantins) et reposant sur un vote parmi les différents résultats des réplicas. Ces travaux ont été faits en collaboration dans un projet international avec une équipe de l université de Lisbonne et ont donné suite à deux publications francophones : la conférence [RenPar-2011] et le journal [TSI-2012]. 2) Thèse (UPMC) L exclusion mutuelle est un des piliers de l algorithmique et permet d assurer que l exécution d une portion de code manipulant une ressource partagée (section critique) se fera toujours de manière exclusive (propriété de sureté) et que tout processus souhaitant l utiliser y accédera en temps fini (propriété de vivacité). Les nombreux algorithmes distribués d exclusion mutuelle de la littérature ne sont pas adaptés aux besoins spécifiques des systèmes distribués modernes. Ces systèmes tels que les Clouds mettent souvent à disposition un ensemble de ressources partagées hétérogènes et les applications s exécutant sur ces systèmes peuvent avoir des contraintes différentes en termes de priorité, temps de réponse ou fiabilité. La thèse propose donc de nouveaux algorithmes distribués d exclusion mutuelle et s articule autour de trois contributions : la prise en compte des requêtes à priorités différentes, l accès à une ressource avant une date d échéance et la gestion de requêtes nécessitant plusieurs ressources. Manuscrit : https ://tel.archives-ouvertes.fr/tel-01077962 2.1) Exclusion mutuelle à priorités Problématique : Les algorithmes d exclusion mutuelle classiques assurent que les requêtes soient satisfaites selon un ordre FIFO. Cependant, un tel ordre peut être incompatible avec les différents niveaux de requêtes exprimées par les clients d une application répartie. L exclusion mutuelle à priorité permet de prendre en compte cette différence. Son but est de satisfaire les requêtes en respectant l ordre des priorités. Cependant, un respect strict de cet ordre peut amener à des famines pour les requêtes de faibles priorités. Des mécanismes de priorités dynamiques tels que proposés par Chang 1994 et Kanrar-Chaki 2010 permettent de préserver la vivacité. Cependant ces stratégies génèrent beaucoup d inversions de priorités. Contribution : Nous avons proposé un premier algorithme (publié à la conférence internationale [CCGrid-2012] et la conférence francophone [ComPAS-2013]) afin de ralentir l incrémentation de priorité. Bien que ce ralentissement assure toujours la propriété de vivacité, les petites priorités peuvent avoir des temps d attente énormes dans certaines configurations. Un second algorithme a donc été proposé à la conférence internationale [ICPP-2013]. Cet algorithme permet de réduire considérablement le temps d attente de l accès à la section critique pour un taux d inversions donné. Une version étendue unifiant les deux contributions internationales est parue dans la revue [JPDC].
2.2) Exclusion mutuelle à contraintes temporelles Problématique : Les algorithmes d exclusion mutuelle n intègrent pas les notions de qualité de service en termes de temps de réponse. Ils sont donc inadaptés aux applications que l on rencontre dans le modèle du Cloud Computing. En effet ces applications peuvent avoir des contraintes de temps dues aux différents contrats signés avec leurs utilisateurs (Service Level Agreement). Contribution : Nous avons donc proposé une extension de l exclusion mutuelle en prenant en compte les contraintes temporelles exprimées par les applications. Notre algorithme permet aux requêtes clientes de spécifier au moment de leur émission une date d échéance de satisfaction. Un mécanisme de contrôle d admission accepte ou refuse les requêtes en fonction de l état actuel du système. Si une requête passe avec succès le contrôle, le système s engage alors à satisfaire la requête avant la date d échéance (exigence client). Afin de maximiser l utilisation de la ressource partagée (exigence fournisseur), l algorithme ordonnance les requêtes en fonction de leur localité tout en respectant les dates d échéance des requêtes acceptées. Nous avons montré que pour un contrôle d admission strict (sans sur-réservation), notre algorithme avait un taux de violation nul pour un taux d utilisation équivalent aux algorithmes de l état de l art. Ces travaux ont été publiés à [CCGrid-2012] et [CCGrid-2013] dans le cadre du projet ANR MyCloud. Une version étendue de cet article est parue dans la revue [FGCS]. 2.3) Exclusion mutuelle à plusieurs ressources Problématique : Il est possible dans un système à grande échelle qu une section critique concerne plusieurs ressources. Il s agit du paradigme du Cocktail des philosophes introduit par Chandy- Misra en 1984. Le fait d introduire plusieurs ressources dans une requête peut amener à des interblocages dans les requêtes conflictuelles (qui demandent des ressources communes) violant ainsi la vivacité. La plupart des algorithmes existants peuvent résoudre ce problème d interblocage soit au prix d une connaissance préalable sur les conflits entre les requêtes amenant une hypothèse très forte sur le système soit au prix d un coût important de synchronisation impliquant une perte d efficacité dans l utilisation des ressources. Contribution : Nous avons conçu un algorithme qui ne nécessite pas de connaître a priori les requêtes conflictuelles et qui réduit de manière significative les coûts de synchronisation. Cet algorithme limite entre autres les échanges entre les sites qui n accèdent pas aux mêmes ressources. Cette réduction des coûts réduit le temps d attente global des requêtes et améliore significativement le taux d utilisation des ressources (jusqu à un facteur 20). Cette contribution a donné lieu à une publication dans la conférence francophone [ComPAS-2014]. Elle a été élue meilleur article de la session parallélisme et a donné suite à une version étendue dans un numéro spécial de la revue francophone [TSI]. Une version internationale a été publiée à la conférence [ICPP-2015]. Une version longue de cet article peut être trouvée en rapport de recherche Inria à l URL https ://hal.inria.fr/hal- 01120808.
3) PostDoc (École des Mines de Nantes) 3.1) Élasticité multi-couche dans le Cloud Problématique : L élasticité est une des principales caractéristiques du Cloud Computing. Elle permet de reconfigurer un système pendant son exécution afin d optimiser l utilisation de ses ressources. Dans le modèle du Cloud Computing, la plupart de ces mécanismes se basent sur l élasticité d infrastructure où l on alloue/désalloue des machines virtuelles en fonction de la charge de l application cliente. Cependant, ces mécanismes sont généralement inadaptés en cas de pics de charge inattendus de l application car ils sont : peu réactifs à cause d un temps de démarrage relativement long, ce qui peut mener à des violations de SLA et/ou une indisponibilité du service applicatif coûteux en termes de consommation d énergie, car la création de VM nécessite plus de puissance de calcul physique coûteux en termes financiers car beaucoup de fournisseurs d infrastructure ont un grain de facturation des VMs trop gros (souvent à l heure) pouvant mener à un gaspillage de ressources louées Contribution : Les applications actuelles sont de plus en plus modulables et peuvent se reconfigurer dynamiquement pendant leur exécution. De ce fait, la couche applicative peut prendre part au mécanisme d élasticité. Le temps de reconfiguration logicielle étant négligeable par rapport au temps de reconfiguration de l infrastructure, il est ainsi possible de modifier plus finement et plus rapidement la configuration du système dans des cas où l élasticité d infrastructure serait trop coûteuse et inutile. Dans [ICCAC 2015], nous avons proposé des mécanismes permettant de définir et de choisir des stratégies de reconfiguration du système mêlant les deux types d élasticité. Nous avons montré à travers des expérimentations sur plate-forme Grid 5000, les avantages et les inconvénients de ces stratégies en fonction du patron de charge d entrée de l application. 3.2) Gestion générique de services de Cloud Problématique : L approche de l informatique autonome (autonomic computing) est très largement utilisée pour gérer des environnements très dynamiques comme les Clouds qui permettent de fournir des services informatiques à la demande. Cette approche propose des lignes directrices pour concevoir des gestionnaires autonomiques afin que les services de Cloud puissent se configurer automatiquement sans l intervention manuelle d un administrateur. Cependant, pour concevoir des gestionnaires autonomiques efficaces et intelligents, les administrateurs doivent prendre en compte les spécificités du système à administrer et du service à fournir. Cette tâche suppose que l administrateur possède un certain niveau d expertise dans des domaines dans lesquels il n est pas forcément familier (ex : modélisation, optimisation, etc.). Ainsi, la conception de tels gestionnaires sans les outils appropriés peut devenir difficile, fastidieuse et erronée. Contribution : Afin de faciliter la production de gestionnaire autonomique, nous avons défini une abstraction des systèmes de service de Cloud. Nous pouvons remarquer que quel que soit le service fourni, tous les systèmes partagent beaucoup de caractéristiques communes. Ces systèmes respectent une architecture orientée services (SOA) en étant organisés en couche où chaque interaction entre deux systèmes est gouverné par un SLA. En effet, chaque système d une couche donnée est client des services fournis par la couche inférieure, et est fournisseur de services pour des systèmes (ou utilisateur final) de la couche supérieure. Par exemple, un fournisseur d infrastructure (IaaS) comme Amazon EC2 fournit des machines virtuelles à des services applicatifs (SaaS) mais est client de fournisseurs d énergie (EaaS). De même, un SaaS fournit des applications à des utilisateurs mais est client d un voire plusieurs IaaS en consommant des machines virtuelles. Tous ces systèmes ont donc un même objectif : satisfaire des contraintes internes et des contraintes liées aux
SLA signés avec leurs clients tout en minimisant les coûts de fonctionnement (ex : services achetés, pénalités dues aux violations de SLA). Ainsi notre abstraction permet à l administrateur de : 1. formaliser à travers un langage descriptif les spécificités et contraintes de chaque composant de son système ainsi que les relations de dépendance qu ils ont entre eux ; 2. produire automatiquement un gestionnaire autonome à partir d un unique gestionnaire générique qui raisonne sur des concepts abstraits (composants, attributs, dépendances, contraintes) et qui, grâce à un solveur de contraintes (Choco), permet de trouver à tout instant une configuration optimale du système pour atteindre l objectif commun. Un article présentant ce modèle abstrait et l évaluant en termes de généricité et d applicabilité est actuellement soumis à la conférence ICAC 2016. 4) ATER Laboratoire d Informatique de Paris Nord (Paris 13) Plusieurs séminaires et groupes de travail interdisciplinaires auxquels j ai participé depuis mon arrivée au LIPN ont montré les besoins des chercheurs en termes de ressources informatiques notamment pour la gestion de leurs données (stockage, traitement, pérennisation, sécurité, accès, etc.) qu ils produisent à partir de leurs expérimentations. Suite à ce besoin, la COMUE Université Sorbonne Paris Cité, dont fait partie l Université Paris 13, met à disposition de ses laboratoires la plate-forme Cirrus qui est une fédération de clusters et de Cloud. Afin de sensibiliser certains utilisateurs qui, pour la majorité, ne sont pas familiers avec ces outils, le LIPN a commencé à mettre en place un Wiki (https ://lipn.univ-paris13.fr/bigdata) sur la présentation et l utilisation des différents outils de la science des données dans le cadre académique. Mes travaux de recherche se situant dans ce contexte, je travaille actuellement à l élaboration et à l évaluation de politiques d ordonnancement de tâches dans un système distribué large échelle. Le système d attribution de tâches se base sur un protocole de type publish/subscribe qui a été prouvé et vérifié. Cependant il introduit un problème d équité au niveau de la répartition de charge sur les différents workers qui devient un critère de plus en plus essentiel dans un environnement régi par des SLAs. Je travaille à l extension de ce mécanisme pour le rendre plus équitable. Prix et récompenses Un algorithme distribué efficace d exclusion mutuelle généralisée sans connaissance préalable des conflits, meilleur article de la session parallélisme de ComPAS 2014. Participation à des projets nationaux 2011-2014 Projet ANR MyCloud Participants : Inria Grenoble, LIP6, École des Mines de Nantes, l entreprise We are Cloud Objectifs : Définir un langage pour exprimer un SLA (CSLA). Permettre au fournisseur de Cloud de configurer automatiquement son système en fonction des exigences des SLAs. Permettre au client de vérifier que les SLA signés ont bien été respectés. Contribution : participation aux réunions et présentation des travaux, élaboration d un poster pour présentation des projets ANR. Site : http ://mycloud.inrialpes.fr/
depuis Oct. 2015 depuis Dec. 2015 depuis Jan 2015 Projet FUI Wendelin Exanalytics Entreprise (porteur) : Nexedi, fournisseur de logiciels libres pour la gestion d entreprise (ERP5), de stockage distribué (NEO) et de plate-forme type Cloud (SlapOS). contact : Jean-Paul Smet, PDG Objectifs : développer un moteur d analyse de grands volumes de données à partir de technologies françaises reconnues (Scikit learn et NEO). Contribution : association au démarrage du projet coté LIPN notamment sur la parallélisation du moteur de requêtes. qui se base sur CMFActivity. Site : http ://www.wendelin.io/ Projet FUI WOLPHIN Entreprise (porteur) : Alter Way, hébergeur d applications Web en utilisant des solutions Cloud, expertise web et infogérence. contact : Jonathan Rivalan, chef de projet Objectifs : fournir une solution d hébergement Open Source, conçue pour permettre la facturation des micro-services. Contribution : association au montage du projet avec le LIPN pour l étude de politique d orchestrations de conteneurs dans un Cloud. Projet Interdisciplinaire Imagerie du Vivant (Interne à l Université Sorbonne Paris Cité) Objectifs : Réunir plusieurs experts de différentes disciplines pour le développement de la recherche sur l imagerie médicale. Contribution : participation à des groupes de travail, mise en place d un wiki, sensibilisation à l utilisation d infrastructure informatiques (Cloud) et à la gestion des données par des scientifiques non informaticiens. Site : http ://idv.parisdescartes.fr/ Participation à des projets internationaux 2010 FTH-Grid Project Participants : LIP6 et LASIGE (Université de Lisbonne) Objectifs : Le but est la conception d ordonnancements hiérarchiques, fiables et adaptatifs de collections de tâches sur des grilles de calcul. Contribution : présentation des travaux effectués en stage de master 1, contribution dans les publications associées à ce projet. fév 2014 - mai 2014 Encadrement Création et encadrement de projet étudiant du Master 1 systèmes et applications répartis (UPMC) en collaboration avec Julien Sopena. sujet : Vers une plate-forme efficace de développement d applications répartis Description : Réalisation d une interface générique de programmation par messages permettant aux programmes d être déployés soit sur un simulateur à événements discrets (Omnet++) soit sur une architecture réelle (type grille). La proposition de ce sujet faisait suite aux problèmes d indéterminisme lié au réseau rencontrés dans les phases de débogage de mes expérimentations de thèse sur plate-forme réelle. Il était ainsi possible d exécuter directement sur un simulateur le code déjà produit, et de rejouer la même séquence d événements afin de repérer les mêmes bugs. Note attribuée par le jury à l étudiant : 18/20
Sept. 2015 Nov. 2014 Juin 2014 Séminaires Séminaire à Computer Network Information Center, Chinese Academy of Sciences, Beijing Locking efficiently distributed resources Séminaire au Lycée Romain Roland, Goussainville Présentation et panorama de l informatique devant des lycéens de terminale S et STI Séminaire Inria ASCOLA, École des Mines de Nantes Gérer efficacement des ressources dans un Cloud Fév. 2014 Séminaire pour le Master 2 Systèmes et Applications Réparties, UPMC, Paris 6. Verrouiller efficacement plusieurs ressources dans un système distribué Fév. 2013 Séminaire pour le Master 2 Systèmes et Applications Réparties, UPMC, Paris 6. Un algorithme équitable d exclusion mutuelle distribuée avec priorité Mars 2012 Séminaire REGAL : Reading group, LIP6. Reddy, Mittal, Gupta, Fair K Mutual Exclusion Algorithm for Peer to Peer Systems, ICDCS, 2008 Fév. 2012 Séminaire pour le Master 2 Systèmes et Applications Réparties, UPMC, Paris 6. Exclusion mutuelle répartie pour les Clouds Administration de la recherche 2012-2014 Conseil de laboratoire. Représentant des doctorants du Laboratoire d Informatique de Paris 6 au conseil de laboratoire. 2013-2014 Commission électorale Membre de la commission électorale du LIP6 qui a pour rôle d organiser les élections internes au laboratoire et d en assurer le bon déroulement.
Partie 2 : Liste des publications Journaux internationaux avec comité de lecture : FGCS 2016 D.Serrano, S.Bouchenak, Y.Kouki, F. Alvares de Oliveira Jr., T.Ledoux, J.Lejeune, J.Sopena, L.Arantes, P.Sens : SLA Guarantees for Cloud Services, Future Generation Computer Systems (FGCS), Volume 54, January 2016, Pages 233-246, ISSN 0167-739X, (CORE RANK A) JPDC 2015 J. Lejeune, L. Arantes, J. Sopena, P. Sens : A Fair Starvation-free Prioritized Mutual Exclusion Algorithm for Distributed Systems, Journal of Parallel and Distributed Computing (JPDC), Volume 83, September 2015, Pages 13-29, ISSN 0743-7315, (CORE RANK A*) TSI 2015 TSI 2012 Journaux francophones avec comité de lecture : J. Lejeune, L. Arantes, J. Sopena, P. Sens : Allouer efficacement des ressources distribuées, Techniques et Science Informatiques (TSI), septembre 2015, vol. 34, no 1-2, Pages 79-100 L. Arantes, J. Lejeune, M.Piffaretti, O.Marin, P.Sens, J.Sopena, A.N.Bessani, V.V.Cogo, M.Correia, P.Costa, M.Pasin : Vers une plate-forme MapReduce tolérant les fautes byzantines, Techniques et Science Informatiques (TSI), 2012, vol. 31, no 8-10, Pages 1079-1099. ICPP 2015 ICCAC 2015 ICPP 2013 CCGrid 2013 CCGrid 2012 ICAC 2016 Conférences internationales avec comité de lecture : J. Lejeune, L. Arantes, J. Sopena, P. Sens : Reducing synchronization cost in distributed multi-resources allocation problem, 44th International Conference on Parallel Processing (ICPP), 2015 Beijing, China, p. 540-549 (CORE RANK A) S. Dupont,J. Lejeune, F. Alvares and T. Ledoux : Experimental Analysis on Autonomic Strategies for Cloud Elasticity, International Conference on Cloud and Autonomic Computing (ICCAC), 2015 Cambridge, MA, USA, p 81-92 J. Lejeune, L. Arantes, J. Sopena, P. Sens : A prioritized distributed mutual exclusion algorithm balancing priority inversions and response time, In 42nd International Conference on Parallel Processing (ICPP), 2013 Lyon, France, p. 290-299. (CORE RANK A) D. Serrano, S. Bouchenak, Y. Kouki, T. Ledoux, J. Lejeune, J. Sopena, L. Arantes, P. Sens Towards QoS-Oriented SLA Guarantees for Online Cloud Services. In 13th International Symposium on Cluster, Cloud and Grid Computing (CCGrid), 2013 Delft, Netherlands p. 50-57. (CORE RANK A) J. Lejeune, L. Arantes, J. Sopena, P. Sens : Service Level Agreement for Distributed Mutual Exclusion in Cloud Computing. In 12th International Symposium on Cluster, Cloud and Grid Computing (CCGrid), 2012 Ottawa, Canada, p. 180-187, (CORE RANK A) J. Lejeune, F. Alvares and T. Ledoux : Towards a generic autonomic model to manage Cloud Services, International Conference on Autonomic Computing (ICAC) (en soumission)
ComPAS 2014 ComPAS 2013 ComPAS 2013 RENPAR 2011 Conférences francophones avec comité de lecture : J. Lejeune, L. Arantes, J. Sopena, P. Sens : Un algorithme distribué efficace d exclusion mutuelle généralisée sans connaissance préalable des conflits. Conférence en Parallélisme, Architecture et Système (ComPAS), 2014 Neuchâtel, Suisse, Meilleur article de la session parallélisme J. Lejeune, L. Arantes, J. Sopena, P. Sens : Un algorithme équitable d exclusion mutuelle distribuée avec priorité. Conférence en Parallélisme, Architecture et Système (ComPAS), 2013 Grenoble, France Y. Kouki, T. Ledoux, D. Serrano, S. Bouchenak, J. Lejeune, L. Arantes, J. Sopena, P. Sens : SLA et qualité de service pour le Cloud Computing.,Conférence en Parallélisme, Architecture et Système (ComPAS), 2013 Grenoble, France L.Arantes, J.Lejeune, M.Piffaretti, O.Marin, P.Sens, J.Sopena, A.N.Bessani, V.V.Cogo, M.Correia, P.Costa, M.Pasin, F.A.B.Silva : Étude d une architecture MapReduce tolérant les fautes byzantines., Actes des 20ème Rencontres francophones du parallélisme (RENPAR), 2011 Saint-Malo, France
Partie 3 : Activités d enseignement Résumé des activités d enseignement Actuellement ATER à l IUT de l Université de Paris Descartes, j effectue un service de 192h d enseignement en 1ère année de DUT. J ai effectué un monitorat durant ma thèse (octobre 2011 - septembre 2014) en étant affecté à l UFR d ingénierie de l UPMC ainsi qu à l école d ingénieurs Polytech UPMC. Durant mon stage post-doctoral à l École des Mines de Nantes (2014-2015), j ai également pu donner quelques heures de vacations. J ai pu enseigner en tant que responsable de groupe de TD/TP du niveau Licence 2 au niveau Master 2 dans les domaines de la programmation objet, les systèmes d exploitation, la programmation répartie et le paradigme du MapReduce. J ai également donné des cours magistraux en Licence 2 ( 150 étudiants) et en master 2 ( 25 étudiants). Élaborations de cours et de supports pédagogiques : J ai eu l opportunité d élaborer un cours magistral de 2 heures sur le MapReduce en Master 2 ainsi que les sujets de TD/TP, devoirs et examens associés. Durant mon postdoc j ai été sollicité par l UPMC en janvier 2015 pour dispenser à nouveau ce cours. J ai également élaboré un TD de 4 heures en Master 1 pour la programmation MPI dans le cadre d un module sur l algorithmique répartie. Ce TD se découpait en 1 heure de présentation type cours et de 3 heures de travaux pratiques. Lien vers les supports pédagogiques produits : https ://lipn.univ-paris13.fr/ jonathan.lejeune/enseignement.php Tableau récapitulatif des enseignements effectués Auditoire Module Année scolaire Cours TD TP Examen total 2011/2012 20 32 4 56 Licence 2 UPMC Introduction à la multiprogrammation système 2012/2013 20 20 8 48 (110 h TD) 2013/2014 6 6 Licence 3 UPMC Programmation par objets en JAVA 2013/2014 20 20 8 48 (48 h TD) Master 1 UPMC 2012/2013 1 3 4 Algorithmique répartie (8 h TD) 2013/2014 1 3 4 Master 2 UPMC (32 h TD) Polytech UPMC 2ème année ingé. (16 h TD) Mines-Nantes 1ère année ingé. (15 h TD) IUT Paris-Descartes DUT 1 (96 h TD) IUT Paris-Descartes DUT 1 (96 h TD) Plates-formes pour les systèmes informatiques avancés Conception et Développement d applications d entreprise à large échelle Principes des systèmes d exploitation 2011/2012 4 4 2012/2013 6 6 2013/2014 3 6 9 2014/2015 3 10 13 2011/2012 8 8 2012/2013 8 8 Programmation modulaire 2014/2015 5 10 15 Introduction à l algorithmique et à la programmation Structures de données et algorithmique fondamentaux 2015/2016 32 62 2 96 2015/2016 32 62 2 96 Total horaire 421
Détails des enseignements effectués Introduction à la multiprogrammation système Niveau : Licence 2 UPMC Présentation du module : Introduire les concepts de base des systèmes d exploitation en mettant l accent sur les accès concurrents de processus aux ressources critiques (mémoire, fichiers). Les étudiants découvrent les mécanismes de multiprogrammation et les problèmes que cela pose. Les différentes notions sont pratiquées sur machine en TP avec des scripts Shell. Contribution dans cet enseignement : 2011/2012 : responsable d un groupe de TD, doublure de TP (6h par semaine) et correcteur d examen 2012/2013 : responsable d un groupe de TD (4h par semaine) et correcteur d examen 2013/2014 : 2 cours magistraux portant sur la hiérarchie de processus dans un OS et la notion de section critique. Programmation par objets Niveau : Licence 3 UPMC Présentation du module : Présenter des principes et des concepts avancés de la programmation par objets (généricité, polymorphisme, design pattern) avec le langage JAVA. La programmation événementielle pour les environnements graphiques comme SWING est également abordée. Contribution dans cet enseignement : responsable d un groupe de TD (4h par semaine), modification de certains sujets de TD, participation à l élaboration du sujet d examen final, correcteur d examen. Algorithmique répartie Niveau : Master 1 UPMC Objectif du module : Présenter les notions de bases de l algorithmique répartie dans un système où les processus communiquent uniquement par passage de messages. Différents problèmes ainsi que leurs solutions, sont abordés (horloge logique, exclusion mutuelle, élection de leader, diffusion, sauvegarde d état global, ). En TP les étudiants utilisent le langage C avec la bibliothèque Message Passing Interface (MPI) pour implémenter leurs algorithmes. Contribution dans cet enseignement : 2012-2014 : responsable de la de première séance de TD/TP (4 heures) portant sur la programmation MPI (1h de présentation type cours et 3h d exercice sur machine), apport de modifications majeures des supports pédagogiques 2013/2014 : participation à l élaboration du sujet de partiel Plates-formes pour les systèmes informatiques avancés Niveau : Master 2 UPMC Objectif du module : Présenter le fonctionnement et l utilisation de différentes plate-formes ou technologies pour la conception et/ou l exécution de systèmes et d applications répartis : JXTA, PeerSim, OSGI, Git et Hadoop MapReduce. Contribution dans cet enseignement : 2011/2012 : conception et responsable du TP sur Hadoop MapReduce (séance de 4h), rédaction et correction des examens de 1ère et 2ème session sur Hadoop 2012/2013 : responsable du TP sur Hadoop MapReduce, rédaction/correction des examens de 1ère et 2ème session sur Hadoop 2013/2014 : responsable de l ensemble des enseignements concernant Hadoop (refonte des transparents de cours), rédaction/correction d un devoir maison et des examens de 1ère et 2ème session sur Hadoop
Conception et Développement d applications d entreprise à large échelle Niveau : Master 2 UPMC Objectif du module : Dans une première partie, le module aborde les frameworks côté serveur les plus utilisés dans l industrie de nos jours. Dans une seconde partie le module présente les problèmes de gestion liés aux grandes masse de données ainsi que le framework Hadoop MapReduce. Contribution dans cet enseignement : responsable de l ensemble des enseignements concernant Hadoop, réadaptation du cours de l U.E. Plates-formes pour les systèmes informatiques avancés pour Hadoop 2 (YARN). Principes des systèmes d exploitation Niveau : 2ème année cycle ingénieur Polytech UPMC Objectif du module : Étudier les principes, algorithmes et organisations des systèmes d exploitation (temps partagé, ordonnancement, gestion de la mémoire et des disques, ). Contribution dans cet enseignement : responsable d un groupe de TP sur les sémaphores dans un modèle producteur/consommateur. (2h par semaine) sur 4 semaines Programmation modulaire Niveau : 1ere année cycle ingénieur École des Mines de Nantes Objectif du module : Étudier différentes méthodes de factorisation de code avec des notions de polymorphisme et de généricité dans un langage objet. Contribution dans cet enseignement : responsable d un groupe de TD/TP Introduction à l algorithmique et à la programmation Niveau : 1ere année DUT, IUT Paris Descartes Objectif du module : Initier les étudiants aux bases de la programmation et à l algorithmique avec le langage C. Contribution dans cet enseignement : responsable de 3 groupes de TD/TP, participation à l élaboration des examens Structures de données et algorithmique fondamentaux Niveau : 1ere année DUT, IUT Paris Descartes Objectif du module : Introduire les notions de conteneur (Liste, Pile, File) implémentés avec des tableaux dynamiques ou des chaînes. Contribution dans cet enseignement : responsable de 3 groupes de TD/TP
Partie 4 : Activités non académiques depuis 2008 Nageur-sauveteur de la Société Nationale de Sauvetage en Mer (SNSM) :. Équipier secouriste de niveau 2 (PSE2). Surveillance des plages (BNSSA) en période estivale en tant que : - Chef de poste : Cayeux sur mer (Somme) ; - Adjoint au chef de poste : Quend-Plage (Somme), Fort-Mahon-Plage (Somme) ; - Sauveteur qualifié : Cayeux sur mer (Somme), Quend-Plage (Somme), Olonne sur mer (Vendée).. Formateur SSA, stage mer : Formation et encadrement des nouveaux nageurs-sauveteurs en piscine et en mer (sauvetage, pilotage zodiac/jet/irb, réglementation, communication VHF, etc.). Responsable des formations bateaux pneumatiques au sein du centre de formation et d intervention de Paris Ile de France (depuis sept. 2015)