Docker est un logiciel libre sous licence Apache 2.0. Il permet d’automatiser le déploiement d’applications dans des conteneurs logiciels.
Mise en place de gitlab CI/CD avec configuration from scratch du gitlab-runner
Développement sous symfony4 du systeme de gestion des gouttes avec deploiement dans kubernetes
Traitement des données en mode asynchrone avec rabbitmq et utilisation de elasticsearch
Scaling de l’application avec replication des pods du kube
Evolution applicative dans un contexte d’API sf 2.8 multi-tenante avec des millions de connexions et un Memcache devenu quasi contre-productif :
Migration du code de l’API de Symfony2.8 à Symfony3.4 avec réécriture de toute la logique MemcacheBundle en utilisant MemcachedAdapter de Symfony
Upgrade des versions des composants et bundles
Écriture de tests unitaires et réadaptation des tests existants ainsi que l’éradication des dépréciations
Présentation sur docker et mise en place d’un stack docker pour développer en Symfony et php7 sous Windows 10
Mise en place d’un docker registry pour un hébergement privé des images docker de l’entreprise
php/symfony
Evolution applicative dans un contexte de base de données unique communiquant avec un CRM et partagée par plusieurs applications Symfony :
Analyse des bogues (pertes des données des clients, arrêt de la communication entre le CRM et la base de données des applications)
Inspection du code des applications ayant permis de déceler le problème de mauvaise gestion des clés étrangères générées par les différentes instances de doctrine sur la même base de données
Développement d’un programme qui a permis de restaurer l’intégrité de la base de données
Rétablissement de la communication avec le CRM et conciliation des instances doctrine partageant la même base
Documentation de la solution en pointant les éventuelles futures sources de problèmes ainsi que la proposition d’une architecture API communiquant avec des applications consommatrices.
Refonte intégrale de l’application web de la CGT :
Développement du module d’enregistrement d'un adhérent sur le site de la CGT
Développement des formulaires à plusieurs étapes en utilisant CraueFormFlowBundle en ayant souvent recours aux événements
Développement d’un service permettant de créer un compte utilisateur pour un adhérent avec génération automatique d'un nom d'utilisateur et mot de passe, envoyé par mail à l'adhérent
Développement d'un moteur de filtres des adhérents (une vingtaine de critères de recherche)
Développement du module de cotisation en adoptant une logique de programmation orientée service.
Alcyon : Refonte applicative
Dans le cadre d’une refonte intégrale sous Docker :
Mise en place d’un stack Docker, en utilisant Docker et Docker-compose pour développer
Développement des modules utilisateur et back office
Proposition de solutions pour le workflow du projet
Maintenance corrective et évolutive d’une application web de gestion des équipements réseaux de Numéricâble :
Assurer la compatibilité du site avec les navigateurs IE11, Firefox, Chrome
Correction des anomalies via Mantis
Remise en marche de fonctionnalités devenues obsolètes sur des fichiers PERL renvoyant des données via SNMP
Utilisation de Smarty pour séparer HTML et la logique pour les fichiers PHP et factorisation du code
Assainissement du code (faire disparaitre toutes notices et warnings par la mise en place de bonnes pratiques) et optimisation
Validation W3C pour tous les templates
Développement des évolutions
Baromètre quotidien de Scholanova
Développement de formulaires pour les questionnaires de sondages
Intégration de plugins JavaScript pour une meilleure expérience utilisateur
Mise à jour fréquente du Repository sur GitHub, GANTT et TRELLO
Mission à Maisons du monde : Site Ecommerce avec une architecture complexe et plusieurs feature Teams qui interagissent
Maintenance du code existant avec des bugs fixe ainsi que le développement de nouvelles fonctionalités
Développement de taches asynchrone pour du PubSub
Projet Mobilise Your City sur Drupal8 : Plateforme collaborative avec une logique complexe :
Création de nouveau type de contenu et taxonomies depuis le backoffice
Développement de custom module pour rajouter des logiques spécifiques aux formulaires et vues en passant par des hook
Développement de moteur de recherche complexe
Création et développement de vues complexes