Ayant intégré ce projet en plein développement, le principal défi était de monter en compétence rapidement sur le volet technique et fonctionnel afin qu’on puisse respecter le délai de livraison du premier module. Le développement et le déploiement des modules restant se fait aujourd’hui sans encombre.
Ci-dessous les points les plus importants de ma mission :
- Amélioration de l’existant afin d’avoir une meilleure qualité de code.
- Mise en place d’une couche de communication qui permet de communiquer avec ANDRA
- Modélisation du domaine métier en DDD.
Compétences : .Net Core 3.1, C#, ASP/NET Core 3.1, SQL Server, EF Core 3, Swagger, Azure devops/ Hangfire / CQRS avec Mediator / Hybrid Microservice / Domain Driven Design / Azure Devops / DDD
Ma mission consiste à développer une nouvelle application « from scratch » de type ETL sur mesure qui permettra d’automatiser la production de plusieurs documents a des fréquences différentes et de manière récurrente à partir de plusieurs sources différentes et variées. L’application devra aussi servir de socle pour élargir le périmètre a d’autres sources et a d’autres documents.
Ci-dessous les points les plus importants de ma mission :
- Mise en place du socle applicatif en se basant sur le pattern de ‘clean architecture’
- Collaboration directe avec le métier afin de récupérer les spécifications fonctionnelles et proposer une implémentation adéquate.
- Extraction, Traitement et Chargement d’une quantité trés importante de données selon un périmètre paramétrable à partir de bases Sql Server, Sybase IQ , Hadoop, WCF
- Partitionnement/Optimisation et parallélisation des extractions.
- Paramétrage de l’outil d’orchestration Control-M afin d’ordonnancer le workflow des traitements.
- Mise en place d’un CI/CD sur TFS pour les déploiements sur les différents environnements.
Compétences : .Net Core 5, C#, ASP/NET Core, SQL Server, ElasticSearch/Kibana, , EF Core, , Swagger, TFS / XL DEPLOY / Control-M / Hangfire / CQRS avec Mediator , Blazor
ArcelorMittal BELGIUM est un cluster d’usines distribuées entre le nord de la Belgique (2 sites à Ghent et Genk) et le sud de la Belgique (3 sites dans la province de Liège). La principale responsabilité était de soutenir techniquement l’équipe logistique à Liège pour assurer une continuité de service 24h/24h et de répondre aux besoins du métier à implémenter sur l’écosystème applicatif existant.
Les interventions les plus importantes durant cette période ont porté sur :
- Mise en place d’outils de centralisation de logs et de données opérationnelles sur ElasticSearch.
- Analyse et développement d’un outil de fiabilisation logistique qui permet de retrouver facilement les anomalies métiers qui existent dans le système.
- Suivi technique de l’équipe responsable de l’informatisation d’un nouveau hall.
- Analyse et développement des nouveaux besoins métiers.
- Analyse de la situation existante globale pour mettre à jour l’écosystème d’applications existantes dans un cadre d’unification de protocoles au niveau européen.
- Optimisation du cyclique central en permettant de paralléliser des traitements exécuté séquentiellement.
- Développement d’un socle pour la future version des applicatifs qui seront utilisés à Liège ainsi que la mise en place de pipelines CI/CD.
- Conseiller le management ainsi que le top management des nouvelles directions à prendre en fournissant des simulations qui prouvent des réductions de coûts importantes dans le circuit logistique.
Compétences : .Net, C#, ASP/NET Core WEB API, IdentityServer, Angular, SQL Server, ElasticSearch/Kibana, OWIN, EF Core, Redis Cache, Swagger, Winform, WPF, WCF, Azure Devops Pipelines
REFERENTIEL
EPEGA est un courtier en assurance qui utilise déjà une solution standard dans le domaine de l’assurance maladie répandu sur le marché mais qui ne répond que partiellement à son besoin métier. Ma responsabilité principale était donc de développer une solution sur mesure qui automatise une grande partie de ses processus métier très riches dans le domaine de la santé à travers des workflow complexes. Ensuite il fallait développer une deuxième application qui devait stocker, structurer, analyser tout le référentiel officiel des actes et prestations de l’assurance maladie obligatoire (AMO) au Maroc et le publier en tant que API afin qu’il soit consommé par l’application métier.
Responsabilités :
Rédaction du cahier des charges
Mise en place de l’architecture globale du système
Rédaction des spécifications fonctionnelles & techniques détaillées, analyse, conception et développement
Développement d’un ETL pour récupérer les données à partir de bases SQL / Fichiers/ Web (Web Scrapping), ensuite consolider et agréger les données, et enfin les indexer puis les centraliser sur une base dédiée.
Mise en place d’un mécanisme de communication entre le système existant et le nouveau système.
Réalisation des plans de tests unitaires et d’intégration
Formation et déploiement de l’application chez le client
Développement d’une multitude de jeux vidéo 2D en Python / Pygame.
Entrainement en algorithmiques et structures de données sur le site : ********
Formateur à SupInfo (Python)
Introduction à la programmation procédurale en Python
Développement orienté objet en Python
Développement de jeux vidéo 2D en Python/Pygame
En tant qu’architecte technique j’ai pu collaborer étroitement avec le chef de projet ainsi que les différentes équipes d’ArcelorMittal à travers l’Europe dans le but de moderniser une grande partie des applicatifs d’ArcelorMittal Fos Sur Mer.
Ci-dessous les interventions les plus importantes durant cette période :
Etude et développement de plusieurs nouveaux applicatifs qui vont permettre l’exécution du code métier sur une nouvelle plateforme centralisée.
Conception et architecture logicielle des applicatifs en utilisant un Framework interne.
Encadrement et formation des développeurs.
Conception et développement des différents outils qui seront utilisé par l’équipe pour améliorer la productivité et réduire les erreurs dus aux opérations manuelles.
Développement des différents adaptateurs pour faire communiquer les anciens applicatifs avec les nouveaux.
Mise en place d’un système de traitement multithread des messages.
Optimisation du traitement et de la génération de messages à la volée à partir de messages dépendants en mettant en place un système de cache.
Mise en place d’une instance ElasticSearch pour faire le suivi et le monitoring des applicatifs.
Développement de scripts pour la maintenance des indexes ElasticSearch / SQL Server.
Développement de notebooks Jupyter en Python pour le suivi et l’analyse des différents messages qui transitent entre les applicatifs.
Compétences : .Net, C#, Python, ASP/NET WEB API, SQL Server, ElasticSearch/Kibana, OWIN, Jupyter, EF 6, Redis Cache, Swagger, TFS
BREAK est une startup apportant un nouveau concept des déjeuners entreprise. La mission a porté sur le développement du backend (API WEB) qu’allait consommer l’application mobile.
Responsabilités :
Rédaction du cahier des charges
Mise en place de l’architecture globale du système
Rédaction des spécifications fonctionnelles & techniques détaillées, analyse, conception et développement
Mise en place d’un système de gestion d’amis.
Mise en place d’un mécanisme de communication en temps réel afin de faire communiquer instantanément les utilisateurs mobiles entre eux.
Réalisation des plans de tests unitaires et d’intégration
Formation et déploiement de l’application chez le client
Développement d’un comparateur de banques marocaines à l’instar du site français PANORABANQUE. La plateforme connait actuellement 2000+ visiteurs / jour
Responsabilités :
Rédaction du cahier des charges
Mise en place de l’architecture globale du système
Rédaction des spécifications fonctionnelles & techniques détaillées, analyse, conception et développement
Conception d’un modèle de donnée pour prendre en charge les différentes grilles tarifaires (très hétérogènes) des différentes banques.
Conception et développement d’un module d’import/export Excel qui facilite la mise à jour des tarifs par les différents opérateurs.
Tests de montée en charge.
Déploiement sur Microsoft Azure.
Afin de réduire le temps de préparation des colis, j’avais comme mission de faire communiquer le site web e-Commerce de décathlon avec AMANA (principal service de la Poste au M...