# 💼 Expériences ## Freelance - 🗓️ Juillet 2023 -> ... ```{dropdown} Loft Orbital - MMS - Developpeur Python - 🗓️ Décembre 2023 -> ... - 🛠️: {bdg-primary}`Python`{bdg-success}`Django`{bdg-success}`Graphene`{bdg-info}`Docker` {bdg-success}`GCP` - 👥: 5 Membres, 1 Manager - 💻: Développeur Python :::{dropdown} Contexte Loft Orbital est une entreprise qui propose une solution d'infrastucture spatial en tant que service. L'Equipe MMS travail sur le service d'elaboration du plan d'execution (orchestration) qui sera réaliser prochainement par un satellite ainsi que le systeme de requete. ::: :::{dropdown} Réalisation Développement de composant Ground Software: - API GraphQL - Architecture Applicative - Correction de bug - Amélioration des pratiques de développement ::: ``` ```{dropdown} Equipe Infrastructure - Platform Engineer - 🗓️ Juillet 2023 -> Juillet 2023 - 🛠️: {bdg-primary}`Python`{bdg-info}`GithubAction`{bdg-info}`Pulumi` {bdg-success}`AWS`{bdg-light}`Pydantic` - 👥: 5 Membres, 1 Manager - 💻: Platform Engineer :::{dropdown} Contexte Afin d'accompagner les équipes de développements, l'équipe infrastructure met en place les éléments d'infrastructure et d'automatisation des déploiements nécessaire a l'éxecution des applicatifs. ::: :::{dropdown} Réalisation Réalisation des briques devops pour le déroulement du projet - Règle de protection des branches - CI (Test unitaire + coverage, linter, sécurité ...) - CD: déploiement selon environement et branche - github action, reusable workflow, ... Mise en place de l'infrastructure as code (Pulumi) - mise en place d'un framework d'organisation pour l'IaC - Ecriture et test de stack pour différent projet ::: ``` ## Extia - 🗓️ Fev. 2020 -> Juin 2023 ```{dropdown} Equipe Infrastructure - Platform Engineer - 🗓️ Avril 2023 -> Juillet 2023 - 🛠️: {bdg-primary}`Python`{bdg-info}`GithubAction`{bdg-info}`Pulumi` {bdg-success}`AWS`{bdg-light}`Pydantic` - 👥: 5 Membres, 1 Manager - 💻: Platform Engineer :::{dropdown} Contexte Afin d'accompagner les équipes de développements, l'équipe infrastructure met en place les éléments d'infrastructure et d'automatisation des déploiements nécessaire a l'éxecution des applicatifs. ::: :::{dropdown} Réalisation Réalisation des briques devops pour le déroulement du projet - Règle de protection des branches - CI (Test unitaire + coverage, linter, sécurité ...) - CD: déploiement selon environement et branche - github action, reusable workflow, ... Mise en place de l'infrastructure as code (Pulumi) - mise en place d'un framework d'organisation pour l'IaC - Ecriture et test de stack pour différent projet ::: ``` ```{dropdown} Réfentiel de donnée - Lead. Tech. - 🗓️ Septembre 2022 -> Avril 2023 - 🛠️: {bdg-primary}`Python`{bdg-info}`GithubAction`{bdg-info}`Pulumi` {bdg-success}`AWS`{bdg-light}`Pydantic`{bdg}`PostGres` - 👥: 2 Développeurs, 1 Lead. Tech., 1 PO - 💻: Lead. Tech. :::{dropdown} Contexte L'entreprise Bimpli est un aggrégateur de service pour les salariés. Dans un but de centralisation, qualification et uniformisation de la donnée, celle-ci a souhaité mettre en place un système de management de la donnée (MdM) dans un ecosystème AWS. Les équipes sont organisé selon un train SAFe. ::: :::{dropdown} Réalisation Garantir la qualité du code - Mise en place de bonne pratique de code - Architecture logiciel - Mise en place Test unitaire, linter, analyse statique de sécurité ... - Utilisation de localstack pour les tests Réalisation des briques devops pour le déroulement du projet - Règle de protection des branches - CI (Test unitaire + coverage, linter, sécurité ...) - CD: déploiement selon environement et branche - github action, reusable workflow, ... Mise en place de l'infrastructure as code (Pulumi) sous la supervision de l'équipe infra - mise en place d'un framework d'organisation pour l'IaC - Ecriture et test de l'ensemble des stacks ::: ``` ```{dropdown} Framework data - Expert/Lead. Python - 🗓️ Décembre 2021 -> Août 2022 - 🛠️: {bdg-primary}`Python`{bdg}`GitlabCI`{bdg-success}`GithubAction`{bdg-primary}`Dask` - 👥: 7 Développeurs, 1 Lead. Tech., 1 Lead. Python - 💻: Lead. Python :::{dropdown} Contexte Dans un soucie d'harmonisation de l'existant, l'ESA (European Spatial Agency) souhaite la réalisation d'un framework double usage en python: - pour la création d'algorithme de traitement de donnée satellitaire pour l'usage de l'ESA - pour la manipulation de donnée satellitaire par une personne quelconque. L'outil doit fournir: - une interface standardisé pour accéder a différent type de donnée (zarr, netcdf, cog, ...), sur différent système de fichier (s3, local, ...) de manière lazy. - un système de calcule distribué par graphe. - différentes méthodes de déclenchement des algorithmes (CLI, REST, ...) - un mecanisme de trace et de log. ::: :::{dropdown} Réalisation Développeur python: - Mise en oeuvre du module d'accès aux données - Mise en oeuvre du module de traitement de la donnée - Python 3.9 - Dask pour l'accès lazy des données. Lead Python: - Encadrement partiel et support des autres développeurs - Test unitaire et test d'intégration => utilisation de Pytest et de Hypothesis. - Respect du "Python array API standard" pour l'interface des données. DevOps: - Intégration CI/CD dans différent environment (github/gitlab) - mise en place de l'environement de développement : pre-commit, outil d'analyse de securité, linter, formatter... - mise en place du système d'auto génération de la documentation - Intégration gitlab / sonarqube ::: ``` ```{dropdown} Visualisation de donnée - Développeur Web - 🗓️ Janvier 2021 -> Décembre 2021 - 🛠️: {bdg-primary}`Python`{bdg-success}`Django`{bdg-success}`FastAPI` {bdg}`PostGres`{bdg-secondary}`Terraform`{bdg-info}`Azure` - 👥: 3 Développeurs, 1 Lead. Tech., 1 Scrum master, 1 PO - 💻: Développeur :::{dropdown} Contexte Dans le but d'apporter a ses client la meilleur expérience possible, BVA propose, en plus de ces outils de collecte, un outils d'analyse de la satisfaction client continue afin de proposer des axes d'améliorations. ::: :::{dropdown} Réalisation Amélioration de l'existant et ajout de feature - Factorisation du code par création de package python - Amélioration du code existant par polymorphisme d'héritage et paramétré. - Apport d'une expertise de développement python - Amélioration des performances pour Azure function et base de donnée (pool de connection) - Stratégie de mise a disposition de l'information (API) Amelioration de la CI/CD - Ajout de vérification d'impact de securité : bandit - Accélération de la pipeline - Test Behave - Maintien des dépendances Maintien de l'infrastructure - Infrastructure sur Azure - Maintien de l'infrastructure Kubernetes - Azure function - Azure web app - Amélioration de l'infrastructure - factorisation Integration SSO - Management OKTA - Aide a l'intégration client ::: ``` ```{dropdown} Recensement Agricole - Développeur Web - 🗓️ Mars 2020 -> Janvier 2021 - 🛠️: {bdg-primary}`Python`{bdg-success}`Django` {bdg}`PostGres`{bdg-info}`Azure` - 👥: 3 Développeurs, 1 Scrum master, 1 PO, 1 UX-UI - 💻: Développeur :::{dropdown} Contexte Dans le cadre du recensement des exploitations agricoles par le ministère, la réalisation d'un portails pour les exploitants et le support était a réaliser afin de faciliter la mise à jours des données des agriculteurs, ainsi que pour la gestion et l'orchestration des différents cycles utilisateurs. ::: :::{dropdown} Réalisation Architecure Infrastructure et réseau - Cloud Azure Développement d'un portail web - Python/Django - Azure functions - Threading - Modélisation CI/CD - Azure devops - Analyse de vulnérabilité - python bandit - Compléxité/Maintenabilité - python xenon/Flake8 - Test Unitaire / code coverage - Formatage du code - python Black - validation avant commit : pre-commit ::: ``` ## YesWeHack - 🗓️ Avril 2019 -> Déc. 2019 ```{dropdown} Ingénieur R&D - 🗓️ Avril 2019 -> Déc. 2019 - 🛠️: {bdg-primary}`Python`{bdg-info}`GitlabCI`{bdg-success}`Django` - 👥: 1 Développeur, 1 Chef de projet - 💻: Développeur :::{dropdown} Contexte YesWeHack est une société proposant un service de mise en place de programme de bug bounty pour des sociétés. Celle ci dispose de près de dix milles hunters inscrits sur sa plateforme pour l'aide à la découverte de bug. Dans ce contexte, YesWeHack propose également des outils tierce pour aider aussi bien les managers de programmes que les hunters dans leur travaux respectifs. ::: :::{dropdown} Réalisation Développement d'outils d'intégrations de bug - Programme réalisé en python 3.7 Outils de détection de program de bug bounty en navigation web - Réalisé en javascript Maintenance et ajout de feature sur Firebounty.com - Utilisation de Django - Ajout d'une api REST avec Django - Utilisation de Scrapy Maintenance du Dashboard sur l'evenement le HACK 2019 - Dashboard réalisé en Flask Gestion et maintien de la CI/CD - Gitlab CI - Analyse de vulnérabilité - python bandit - Compléxité/Maintenabilité - python xenon/Flake8 - Test Unitaire / code coverage - Formatage du code - python Black ::: ``` ## SopraStéria - 🗓️ Fev. 2018 -> Avril 2019 ```{dropdown} Aide à la décision - Data Engineer - 🗓️ Décembre 2018 -> Avril 2019 - 🛠️: {bdg-primary}`Python`{bdg-secondary}`ElasticStack`{bdg-info}`GitlabCI` - 👥: 1 Développeur / Data-Engineer, 1 Chef de projet, 1 Architecte, 1 Data-Scientist - 💻: Développeur / Data-Engineer :::{dropdown} Contexte Afin de facilité la validation de norme STANAG par des experts métiers, la création d'un outils à partir d'une architecture modulaire, et facilement réutilisable en utilisant des concepts de méthodes de deeplearning et d'étiquettage automatique fut proposé. ::: :::{dropdown} Réalisation Ce Projet ma permis d'être au coeur d'un projet majeur et d'être force de proposition sur mes domaines d'expertises. - Modélisation et création de l'architecture logiciel et d'analyse de données. - Prototype d'un système simple - Keras / Scikit-learn - Etat de l'art sur le décodage de donnée binaire par machine learning. Outil de décodage de donnée binaire et d'analyse d'anomalie - Outil de décodage de l'information - Keras/Scikit-Learn - API REST d'intéraction (marche / arret / configuration du système) - Flask. - Ingestion des données - Logstash - Stockage des données - ElasticSearch Resitution des données - Plugin Kibana - ReactJS. - Graphique d'analyse de donnée préconfiguré - Kibana. Gestion et maintien de la CI/CD - Mise en place d'un pipeline Gitlab CI - Test Unitaire - Analyse de code/vulnérabilité - SonarQube - Remonté d'indicateur minimaux : maintenabilité/complexité du code ::: ``` ```{dropdown} Détection d'intrusion réseau - Data Engineer - 🗓️ Juin 2018 -> Décembre 2018 - 🛠️: {bdg-primary}`Scala`{bdg-secondary}`ElasticStack`{bdg-success}`Spark` - 👥: 1 Développeur / Data-Engineer, 1 stagiaire, 1 Architecte, 1 chef de projet et 2 Data-scientist. - 💻: Développeur / Data-Engineer :::{dropdown} Contexte Dans le contexte d'un projet national majeur de la protection des données et des systèmes informatiques, la nécessité de développer un outils dans l'air du big data à amener à la création de ce projet compétitif. ::: :::{dropdown} Réalisation Réalisation d'un système d'aide à la détection d'anomalie réseau par machine learning - Test Unitaire - Récupération des données : Scala/Spark - Extraction des features : Scala/Spark - Système de machine learning : DL4S-Scala - Stockage des données - ElasticSearch - Prototypage - Jupyter. - Lead Tech / Data Engineer Réstitution des données - Scripts de configuration réseau et d'installation - Bash. - API de récupération des informations collecté - Ruby On Rails. - Développement d'une application Web de restitution par graphique - VueJS. ::: ``` ```{dropdown} Outils de supervision - Développeur Logiciel - 🗓️ Février 2018 -> Juin 2018 - 🛠️: {bdg-primary}`Python`{bdg-secondary}`Java`{bdg}`Jenkins` - 👥: 5 développeurs, 1 Intégrateur, 1 Analyste de Sécurité et 1 chef de projets. - 💻: Développeur :::{dropdown} Contexte Dans le cadre du développement des systèmes informatiques embarqués lors de mission maritimes, le besoin de développer un système capable d'assurer l'analyse de l'intégrité et le maintien du réseau hors réseaux présentait un enjeu majeur au sein de ce projet. ::: :::{dropdown} Réalisation Développement d'un logiciel de configuration centralisé. Java 7 - Test Unitaire - Ecriture des fichiers de configuration des systèmes de supervision managées. - Architecture logiciel - Lead Tech Management des Logiciels de supervisions - Scripts de configuration réseau et d'installation - Bash. - Scripts python d'intégrations Shinken/Nagios. Maintien de la CI - Jenkins ::: ``` ## ISAGRI - 🗓️ Oct. 2017 -> Nov. 2017 ```{dropdown} Développeur Logiciel - ISAGRI - 🗓️ Octobre 2017 -> Novembre 2017 - 🛠️: {bdg-primary}`C#`{bdg}`WPF` - 💻: Développeur :::{dropdown} Contexte Développement de progiciel à destination des comptables et des aggriculteurs. ::: :::{dropdown} Réalisation Développement de feuille de saisie à l'aide de C# et WPF ::: ``` ## HEUDIASYC - 🗓️ Oct. 2016 -> Août 2017 ```{dropdown} Doctorant - 🗓️ 🗓️ Octobre 2016 -> Août 2017 - 🛠️: {bdg-primary}`Python` - 💻: Doctorant :::{dropdown} Contexte Recherche théorique et applicative dans le domaine de l'intelligence artificielle. Le Laboratoire HEUDIASYC est un laboratoire de recherche rattaché à l'Université Technonologique de Compiègne (UTC) et proposant des sujets de recherches liées à l'automatisation de tâches (véhicule autonome, essain de drône, etc ...). L'objectif de cette thèse était d'étudier l'apprentissage de signaux sur graphes par réseau de neuronnes artificiels ::: :::{dropdown} Réalisation - Etude de l'existant - Transformation de données numérique en représentation par graphe : Pandas/Scipy - Réalisation de systèmes de réseau de neurones convolutif : Keras/Tensorflow - Exploration et travaux de recherches - Démonstration et présentation ::: ```