Éxperience
- Enseignant responsable de l'unité d'enseignement Algorithmique et Programmation Orienté Objet.
- Développement web avce Vue.js.
- Enseignant assistant pour l'unité d'enseignement Ingénieurie de Système d'Informatique.
La SNCF est une entreprise publique française. Elle exploite les services ferroviaires nationaux du pays, y compris le TGV.
Les responsabilités professionnelles comprenaient :
- Rédaction de supports de formation et d'exercices sur les écosystèmes Java, Spring et Angular.
- Réalisation de séances de formation.
- Encadrer les stagiaires et les accompagner à travers différents exercices.
- Conception et développement de projets logiciels, y compris une architecture sans serveur et des API REST.
Shared Services Squad
Shared Services est l'équipe technique transverse chez Malt qui gère le tronc logiciel commun à toute la plateforme, ainsi que quelques fonctionnalités centrales telle que la messagerie.
Projets choisis, réalisés au sein de Shared Services :
- Migration Nuxt 3. Le stack technologique chez Malt étant riche, la décision a été prise de simplifier et moderniser ce stack. Cela devait être réalisé sans aucune perte de performance en termes de temps de réponse, expérience utilisation ou encore en termes de référencement SEO. Le choix a été fait pour une migration vers le framework Nuxt 3. J'ai activement participé dans la task force Singapore pour migrer la partie visible de Malt ; son site Web.
- Activation de la recherche dans la messagerie. Les données de la messagerie sont indexées par Elasticsearch. J'ai réalisé la fonctionnalité de la recherche par mots clefs dans la messagerie pour tirer bénéfice de cette indexation.
- Exploitation du stack Data pour exécuter les tâches en lot à titre analytique. Le but de cette réalisation est de délester la plateforme Malt de certaines lourdes tâches, telle que les calculs des statistiques freelances, en les rapatriant dans le stack Data plus adapté pour ce genre de logique.
Growth Squad
Cette équipe est responsable d'une expérience utilisateur optimale lors de l'inscription sur la plateforme.
- Tâches réalisées au sein de Growth Squad :
- Participation aux réunions tech team lead. Je communiquais régulièrement l'avancement des tâches en cours aux autres équipes. Ces réunions étaient aussi l'occasion d'aborder les points de blocage ou encore les interdépendances.
- Estimation et chiffrage des tâches à réaliser.
- Réalisation et développement des tâches planifiées.
Développement back-end
- Amélioration et personnalisation de l'API REST de la plate-forme.
- Support d'authentification Active Directory.
- Java 11, Spring Boot, Spring Data, Spring MVC.
Développement front-end
- Internationalisation de l'application Web.
- Amélioration et personnalisation des différents composants selon le client.
- Angular 11, Typescript.
API REST Cleva
- Architecture et choix techniques (Swagger, Mapstruct, etc).
- Conception des API (définition des endpoints, contenu des requêtes et des réponses).
- Développement et réalisation (ressource REST, amélioration SOA, logique métier).
- Test et vérification non-régression (tests unitaires, tests d’intégration).
Solution Extranet
- Piloter la gestion solution Angular multi-projets (4 espaces utilisateurs et un socle commun).
- Mener le projet d'internationalisation (applications disponibles en français et en anglais).
- Développement et réalisation des composants et services (Typescript, Angular 10).
- Branchement aux services REST de Cleva.
- Branchement aux services tiers (paiement et signature électronique).
- Encadrement et évaluation des travaux pratiques en Algorithmique et Structure des Données.
- Préparation des exercices, encadrement et évaluation des travaux pratiques, corrections des examens en HTML et Programmation Web.
- Interface fournisseur pour la création et modification des offres.
- Interface investisseur pour la navigation et le commerce des offres.
À la fin des formations, les participants ont acquit les compétences suivantes :
- Une maîtrise des notions de base du Java.
- Conceptualiser des objets avancés.
- Conception d'une IHM à l'aide de JavaFX.
- Architecture client-serveur.
- Développement Web avec Servlet et JSP.
- Architecture MVC.
Au long de ma mission chez April, j'ai réalisé les projets suivants avec succès.
Architecture et Refontes Techniques
- Migration GED: ce projet a pour objectif de dé-commissionner Alfresco en faveur d'une GED développée en interne. J'ai réalisé avec succès le premier lot (sur 3) de ce projet.
- Migration LDAP: le système d'authentification a été centralisé en conformité avec les réglementations en vigueur. J'ai participé activement à la conception, réalisation et suivi de la migration de tous les comptes utilisateur vers le nouveau système d’authentification.
Développement
- Refonte de mode de paiement: il s'agit de gérer l'accès aux différents modes d'encaissement et décaissement d'une manière centralisée. Les modes de paiement autorisés varient selon l'utilisateur connecté, l'opération en cours et le type de quittance traitée.
- Correction en masse d'information client: un mécanisme de mise à jour des information client d'après un fichier des correctifs est mis en place pour aider les agents à corriger les fautes d'entrée de données.
- Refonte de l'arborescence GED: l'accès aux documents à envoyer au client en cas de sinistre est réorganisé et simplifié.
- Ré-intermédiation des contrats: automatiser la tâche de migration des contrats et des clients d'un point de vente à un autre.
Intégration de données
- Ouverture des points de ventes en DROM: reprise des portefeuilles client et des contrats depuis des fichiers extraits des systèmes informatiques tiers.
- Dé-commissionnement ancien logiciel Moovenet: recroisement des données pour importer des contrats depuis le système informatique d'une société partenaire.
Vie d'Équipe
- Accueil et formation des nouveaux arrivants: ayant un stack technologique conséquent, Aprit Technologies offre une présentation technique à tous ses collaborateur lors de leurs arrivée. J'ai pris en charge cette présentation pour deux développeurs au cours de ma mission. J'ai aussi participé aux entretiens des candidats pour des postes de développement.
Durant cette mission, j'ai pris en charge la totalité du développement logiciel de l’extension, tout en assurant la continuité du bon fonctionnement du produit déjà déployé en production dans plusieurs villes en France et à l’étranger. L’extension porte sur les fonctionnalités suivantes.
- Amélioration de l'expérience utilisateur (tableau de bord, diagrammes et statistiques).
- Prise en compte des nouvelles capacités des matériels (paramétrage, suivi, etc).
Les exigences techniques suivantes ont été respectées.
- Interface Web développée en Java en utilisant les composants Material Design.
- Communication bidirectionnelle avec les terminaux (installations d’éclairage public) via l’API AirVantage de Sierra Wireless (protocoles de communication REST et MQTT).
- Gestion des traitements périodiques par lot (batch processing).
Environnement technique
- Java 8, MySQL, git,
- GWT (Google Web Toolkit), GWT Material,
- Spring Core, Spring Batch, Hibernate,
- JUnit, DbUnit, Mockito.
orte Technologies se spécialise dans l'interopérabilité et le développement orienté service.
J’ai collaboré avec Cohorte Technologies en tant d’employé, et en tant que consultant. Durant cette collaboration j’ai assuré les projets suivants.
- Projet Cohorte IoT Pack : une solution IoT générique
- J’ai développé la couche de communication pour les terminaux (côté client), en utilisant deux protocoles : LoRaWAN et HTTPS (via une API REST).
- J’ai réalisé l’intégration de l'agrégateur (côté serveur) avec l'API REST Live Object d'Orange.
- J’ai développé une interface d’utilisateur Web pour la gestion des terminaux en Angular Material et Python.
- Projet Agilium GED
- J’ai étudié les choix techniques et défini l’architecture d'un système de gestion électronique des documents.
- J’ai conçu et développé une API REST basée sur le standard JAX-RS.
- J’ai conçu et développé une interface WebDAV ainsi qu’une librairie JavaScript permettant d’ouvrir des documents avec Microsoft Office avec un seul clique pour un utilisateur authentifié.
- J’ai développé un module d'authentification et gestion d’utilisateur interne, ainsi qu’une SPI et un module d’authentification externe.
- J’ai développé un installateur Windows, sans aucune dépendance.
- Projet Agilium License
- J’ai étudié les choix techniques et défini l’architecture d’un gestionnaire de licence de progiciel.
- J’ai développé un générateur des certificats clients signé par Agilium suivant le standard X.509.
- J’ai développé un générateur des licences progiciel, offerant une API REST.
- J’ai développé un module de vérification et interprétation des licences, avec un gestionnaire d’une licence d’essai temporaire.
- Projet Cohorte Studios
- J’ai participé à la conception d’une trousse à outils Eclipse pour faciliter le développement avec Cohorte framework.
Environnement technique
- Java, JAAS, Eclipse 4, Eclipse PDE
- Git, Maven, Jenkins
- Python, Raspbian, PySerial
- HTML5, JavaScript, AngularJS, Material Design
L’Institut National Polytechnique de Grenoble rassemble plusieurs écoles d'ingénieurs, y compris GI et ENSIMAG.
- J’ai encadré des projets de programmation en langages Java et C.
- J’ai donné des cours magistraux en introduction aux systèmes de gestion des bases de données.
- J’ai assuré des TPs et des TDs en algorithmique et structures de données (suivi, corrections, soutenances).
- Dans le carde de mon doctorat, j’ai développé un algorithme d'extraction des informations fonctionnelles à partir d'un modèle 3D.
- J’ai participé aux conférences en France et à l’étranger, et fait des publications scientifiques en premier et deuxième auteur, dans des revues nationales et internationales.
Les travaux ont été menés dans le cadre du projet ROMMA : effort national de collaboration.
Le projet visait à automatiser le processus de préparation de la maquette numérique afin de répondre aux exigences du processus de simulation. Dans le cadre de ma recherche, une méthode permettant d'identifier automatiquement les propriétés fonctionnelles des composants, et de restructurer leur géométrie en fonction de ces connaissances fonctionnelles, a été proposée et mise en œuvre. Cette implémentation a fourni les annotations sémantiques nécessaires à la phase de préparation de l'analyse par éléments finis. La méthode a été validé avec des données réelles fournies par le partenaire industriel.
Travaillant depuis les locaux du client, j'ai pris en charge l'un des produits majeurs d'ITS ; Phoenix, le système bancaire central, où sont traitées toutes les transactions bancaires quotidiennes. Travailler avec ITS a renforcé de nombreuses valeurs, parmi lesquelles l'engagement, la créativité, la coopération et la productivité.
Après le lancement réussi du projet en avril 2007, l'accent a été mis sur la personnalisation de POSS. Une fois le nouveau système stabilisé et adapté aux besoins de l'entreprise, un nouveau projet a été lancé et baptisé Vanman. Il visait à résoudre des problèmes négligés dans POSS, en particulier la gestion des ventes en gros. La version initiale du système a été mise en service en moins de trois mois, de nombreuses modifications ont ensuite été apportées à ce module, en fonction des retours des utilisateurs et des exigences émergentes. Vanman, qui implique de nombreuses technologies, telles que le développement de systèmes mobiles, le stockage XML, le modèle de communication client-serveur, était alors l'un des principaux logiciels métiers qui s'intègrent au système d'information de Mabco. Au cours de notre parcours, de nombreux autres projets mineurs ont été lancés et réalisés avec succès.
Le travail exigeait de se tenir au courant des technologies Web de pointe de l'époque, afin de trouver des solutions efficaces pour les besoins toujours croissants des internautes.