Adam SOUALHI

Lead / Principal developer

Salaire / Taux journalier

Paris, France

Freelance

À distance uniquement

Expertises

PythonNodeTypescriptDéveloppement FullstackC#JavaKotlinC

Langues

Français (Maternelle)Anglais

À propos

Introduction

Tech Lead & développeur fullstack avec 10+ ans d'expertise dans la création d'architectures cloud évolutives. Expert Node.js/TypeScript/Java, ayant dirigé des projets complexes chez LSEG, Visiodent, Akeneo avec focus sur les performances et sécurité. Spécialisé en solutions complètes cloud-native pour transformer vos défis techniques en succès business.

Liens

Expérience de travail

Enseignant en ingénierie logicielle et base de données

Université Gustave EiffelFreelance

sept. 2024 - janv. 2026

1 an 5 mois

77420 Champs-sur-Marne, France

- Formation polyvalente couvrant le développement web back-end (Node.js, Typescript, Express.js, Socket.IO, Nest.js), la modélisation et gestion avancée des bases de données relationnelles (SGBDR, SQL Server) et NoSQL (MongoDB), ainsi que le développement full stack avec Python (Flask, Bottle) et Typescript. - Encadrement des étudiants dans la conception d’architectures performantes, maintenables et sécurisées, avec un focus sur les bonnes pratiques de programmation, la conception d’API REST et WebSocket, et l’optimisation des performances. - Enseignement approfondi des méthodologies de modélisation des bases de données (Merise), incluant la conception des modèles conceptuels et logiques, ainsi que leur implémentation en SQL, avec maîtrise des jointures complexes, fonctions, procédures stockées et triggers. - Mise en pratique à travers des exercices concrets et études de cas réels pour développer des compétences techniques appliquées aux enjeux spécifiques des sciences sociales, du multimédia, et des métiers du web. Technologies : Node.js, Typescript, Express.js, Socket.IO, Nest.js, Python 3 (Flask, Bottle), SGBDR (SQL Server), NoSQL (MongoDB).

Consultant Full Stack Lead Developer

LSEG (London Stock Exchange Group)Freelance

juil. 2023 - oct. 2024

1 an 4 mois

Paris, France

Le London Stock Exchange Group est une société spécialisée dans la gestion de places boursières ainsi que dans la production et la diffusion d’informations financières. Le groupe possède et est gestionnaire entre autres de la bourse de Londres ainsi que, par le passé, de celle de Milan. En 2021, LSEG acquiert Refinitiv, un fournisseur mondial américano‐britannique de données et d’infrastructures sur les marchés financiers. Initialement fondée par Blackstone et Thomson Reuters, Refinitiv est entièrement intégrée au sein de LSEG suite à son rachat. S’appuyant sur l’expertise de Refinitiv et les outils financiers acquis lors de son intégration, LSEG entreprend en collaboration avec Microsoft, la modernisation de sa stratégie digitale avec le lancement du projet cloud nommé Capricorn. Ce projet vise à fournir des outils financiers intégrés au sein de divers environnements de travail, tels que la suite Office (avec un focus tout particulier sur Excel dans un premier temps) et l’éditeur de code VSCode, permettant ainsi la manipulation de données financières en temps réel par les traders et développeurs. Pour ce faire, j’ai été mandaté en tant que Lead Developer (et scrum master) pour lancer et diriger le projet ”Application Platform” inclus dans le projet Capricorn. Ce projet a pour objectif de concevoir et déployer sur une infrastructure cloud Microsoft Azure, un réseau de diffusion de contenu (CDN) personnalisée et sécurisée afin de délivrer aux clients les différentes applications et bibliothèques financières correspondant à leur version de souscription ainsi qu’à leur environnement de travail.

Consultant en développement Node.JS (TS/JS) – Google Cloud

Akeneo: The Product Experience CompanyFreelance

janv. 2023 - juil. 2023

7 mois

Nantes, France

• Entreprise proposant une solution logicielle cloud (SaaS) complète et composable dédiée au commerce omnicanal permettant d'offrir une expérience produit engageante et de qualité sur l'intégralité des canaux de vente de ses clients à l'aide d'un référentiel centralisé d'une part et d'autre part d'une multitude de connecteurs permettant une interconnexion optimale aux différentes plateformes de ventes. • Projet de conception et maintenance d'un ensemble de web-service Node.JS tournant sur des Google Cloud Functions appelé Timmy (pour Tenant Information Manager) et dédié à la gestion du cycle de vie des tenants (référentiels produits) le tout dans un monorepo. • Conception d'un workspace Node.JS (géré nativement par NPM) en Typescript avec des tests (unitaires avec Jest et end-to-end avec SuperTest) pour chaque module et la génération d'une documentation pour l'intégralité du workspace. • Création d'une couverture de test en découplant le code source existant dans le but de pouvoir implémenter les tests unitaires correspondants. Mise à jour des méthodes pour tendre vers des fonctions pures autant que possible afin d'éviter les effets de bord. • Mise à jour de la structure des données à partir d'une Cloud Function en segmentant des variables d'environnement présentes en base de données (sur le Cloud Firestore) pour un tenant en deux objets. Le premier non sensible est consultable dans le cas d'une demande d'assistance au support. L'autre sensible, nécessitant un chiffrement AES-256 et donc visualisable uniquement par le client. • Création d'un web-service (Cloud Function) permettant au support de pouvoir restaurer sur une instance Cloud SQL dédiée un référentiel produit anonymisé à partir de la sauvegarde la plus récente. Création d'un nouvel administrateur à partir d'une commande Symfony appelé dans un run Google Workflow.

Développeur Node.JS (Typescript)

Skay TechnologiesFreelance

mai 2022 - juil. 2022

3 mois

77420 Champs-sur-Marne, France

• Projet de conception d'une application de planification, agencement et publications des campagnes marketing sur Instagram. • Implémentation d'une architecture logicielle suivant le design pattern Worker‑Crew Model ("Thread/Worker Pool") pour une optimisation des temps de traitement résultant de leur parallélisation et de la segmentation des différentes briques applicatives (appelées workers). • Communication des différents workers à travers un bus de communication dédié par passation de message structuré. • Le premier worker appelé "Watcher" est chargé de la surveillance de la création et de la mise à jour des campagnes de communication et de leurs intégrités à l'aide de différentes fonctions de hashage. La surveillance est effectuée à l'aide du module 'walk', portage du module os.walk du langage python. • Le second worker appelé "Designer" est chargé de la conception et la mise à jour du visuel de communication de la campagne. La génération du visuel est basée sur différents paramétres propres à la campagne elle même et aussi du format du visuel. Un chargement des polices de caractères ainsi que des icônes est réalisé pour les différentes compositions. Pour la génération des différents visuels, les fonctions du module 'canvas' et celui du module 'image-size' ont été utilisé. • Le troisième et dernier worker appelé "Publisher" est chargé de la planification et de la publication des différentes campagnes déjà préparées. Une historisation automatique à chaque publication de campagne est réalisée avec une génération automatique d'un "commit" à l'aide du logiciel de versionning GIT. L'authentification et les publications (comportant un visuel, une description et éventuellement différents 'tag' des comptes partenaires) sont gérées à travers le module 'instagram-private-api'.

Developer

Sharecare EuropeFreelance

déc. 2020 - mai 2022

1 an 6 mois

Remote, Oregon 97458, États-Unis

[Projet T3 Vaccine/Covid-19] • Projet de conception d'un ensemble d'outils applicatifs permettant l'accompagnement et le suivi de la vaccination du Covid-19 aux Etats-Unis. Ce dernier est composé, en premier lieu d'un chatbot ("Azure Health Bot") ainsi que d'un frontal (Node.js / Express.js) pour les interractions avec les utilisateurs. Toute la logique métier et l'exploitation de la base de données transitent par une application développée en Typescript exposant un ensemble d'API serverless sécurisé ("Azure Functions") appelé M.T. (pour "Middle Tier"). • La base de données utilisée est ("Azure Cosmos DB"), un service de base de données NoSQL bénéficiant d’une haute scalabilité permettant l'écriture et la lecture rapides partout dans le monde grâce à la réplication de données et à l’écriture de données multirégions. • Le service ("Azure Storage Account") a été utilisé pour le stockage des fichiers (certificats de vaccination, justificatifs d'identité, etc.). • Deux parcours ont été implémenté dans le chatbot, le premier à destination du personnel soignant (section P.A. pour "Provider Assistant") afin de vérifier et d'organiser la vaccination dans son ensemble. Le second pour les futurs ou actuels vaccinés (section V.A. pour "Vaccine Assistante") permettant la préparation à la vaccination à travers la récolte de données de santé lors de l'étape de pré-enregistrement ou encore la plannification des rendez-vous. • Le projet Vaccine, en bref, c'est trois clients (deux États américain et un groupe privé) pour un total de plus de 4 millions de pré-enregistrements et environ 2 millions de vaccins administrés. • Lead developer en charge des décisions techniques relatives au projet. Relecture et validation des Pull Request. Responsable du cycle de vie du M.T. ainsi que du Frontal. Supervision et coordination de quatre développeurs ainsi que participation aux efforts de développement. Etc. (nombre de caractère limité)

Consultant en développement PHP (Laravel)

Bureau S.T.S. CHANGEFreelance

nov. 2021 - déc. 2021

2 mois

Paris, France

• Nettoyage des diverses sections graphiques du site internet. • Investigation et débogage de la fonctionnalité dédiée au taux de change des devises.

Consultant en développement Node.JS / C#.net

Orange CyberdefenseFreelance

sept. 2021 - oct. 2021

2 mois

Greater Paris Metropolitan Region · Remote

• Développement d'une application multi-système (Windows & OS X) exposant une interface de supervision contenant les métriques et alertes de l'anti-virus "CROWDSTRIKE FALCON" (ce dernier étant démuni d'interface de visualisation). Applicatif à destination d'un peu plus d'un million et demi de poste informatique. • Interface de supervision réalisée en Javascript (Node.JS) en utilisant le framework Electron.JS. • Pour la version Windows, création d'un service Windows sécurisé en C#.net. Solution composée de 6 projets : Datas Manager (gestion des données : recherche et transmission), Logger (soumission des messages dans l'event log de Windows), Settings (paramètres définis et récupération à partir des clefs de registre de Windows), Web Server Status (exposition de quelques end-points pour l'interface de supervision).

Consultant en développement Java EE (Restlet & Spring boot) sur une base NoSQL (MongoDB)

BOURSORAMAFreelance

déc. 2019 - déc. 2020

1 an 1 mois

92100 Boulogne-Billancourt, France

• Maintenance de la gestion des demandes de bénéficiaire DSP2 et Web Scraping. Mise en place d'un mécanisme d'import / export de données. • Optimisation des performances des différents exports BI (Business Intelligence). • Recherche et correction de différentes fuites mémoires et d'arrêts inopinés liés à la gestion de la mémoire vive de l'interface d'administration et de son noyau applicatif. Utilisation de Visual VM ainsi que d'Eclipse Memory Analyzer pour la génération de profil mémoire et leur analyse. • Implémentation d'un module d'agrégation et d'export des données bancaires des clients. • Conception de l'API IRPP pour l'extraction des informations des avis d'imposition lors des parcours client. • Anonymisation et extraction de données (en masse sur des fichiers PDF) utilisé lors d'une phase de concordance des informations.

Consultant en développement JAVA SE

SFRFreelance

sept. 2020 - oct. 2020

2 mois

78140 Vélizy-Villacoublay, France

• Mise à jour de la solution Miranda par l'inclusion de l'OpenJFX suite à la dissociation du Framework JavaFX et du JDK par Oracle. • Ajout d'un traitement ainsi que d'une génération à Miranda pour l'exploitation et l'importation du "Fichier DI".

Consultant en développement PHP et responsable technique de la migration applicative

SFRFreelance

déc. 2019 - mars 2020

4 mois

78140 Vélizy-Villacoublay, France

• Migration applicative et montée de version des composants logiciels du serveur (PHP, Apache et Mysql) de l'application All2One. • Recette des bugs engendrés par la migration et établissement d'un planning avec un ensemble de sprint associés (méthode Agile SCRUM). • Corrective applicative (en PHP) de l'ensemble des bugs remontés et optimisation des traitements (réduction des temps d'exécution).

Consultant en développement (Full Stack)

DocavenueFreelance

janv. 2019 - oct. 2019

10 mois

92100 Boulogne-Billancourt, France

• Gestion des pharmacies et conception d’un algorithme de génération de code pour ces dernières dans le cadre d’un partenariat national. • Algorithmes liés aux « semaines types » et aux « plages d’ouvertures » des praticiens avec gestion des cycles et fuseaux horaires. • Algorithmes de génération et d’exploitation des disponibilités pour une prise de rendez-vous en ligne à destination des patients avec une prise en compte des indisponibilités du praticien (rendez-vous, absences, plages d’ouvertures, etc.). • Interconnexion de la stack (SPRING BOOT) avec Rabbit MQ pour effectuer des calculs algorithmiques distribués. • Développement de « watcher » avec Qwartz pour la regénération des disponibilités. • Réflexion, Refactoring et mise en marche de la couche AOP de sécurité pour les requêtes aux web-services. • Conception d’un back-office avec le Framework front-end « React-Admin ». Gestion des appels RESTFUL aux API JEE avec l’utilisation des JWT. • Exploitation des données à partir du Framework de persistance IBATIS sur une base Oracle. • Utilisation de Liquibase pour les gestions des évolutions de la base de données lors des déploiements sur tous les environnements. • Développement des tests unitaires (des web-services et de la couche DAO) avec le framework ”TestNG”.

Consultant en développement de logiciels

Ostéopathe GennevilliersFreelance

déc. 2018 - déc. 2018

1 mois

92230 Gennevilliers, France

• Conception ”from-scratch” d’une API HTTP en Node.JS avec une architecture M.V.C. et couplée à une base de données MongoDB. • Développement d’un module de prise de rendez-vous en ligne à destination des patients. • Prise en compte des éléments du calendrier praticien (rendez-vous et plages d’ouvertures). • Centralisation et coordination des actions partenaires pour les conceptions graphiques relatives à l’identité visuelle. • Mise en place d’un calendrier de consultation des rendez-vous.

Consultant en développement de logiciels

SFRFreelance

mai 2018 - oct. 2018

6 mois

Saint-Denis, France

• Ajout de la prise en charge du format CSV sur la solution de traitement antérieurement conçue (voir expérience précédente). • Mécanisme de suppression des doublons, mise à jour de la logique des traitements, modification de l’ergonomie logicielle, etc.

Responsable technique du service Cloud sur le projet “VEASY”

Groupe Visiodent

juin 2017 - oct. 2018

1 an 5 mois

Saint-Denis, France

• Réflexion, schématisation (Merise), conception et administration de la base de données au quotidien. • Développement d’un back-office en Node.JS. • Conception de deux solutions logicielles d’import des données à partir de deux applications externes (Jade & ODS) à destination de la nouvelle solution Cloud de l’entreprise (”Veasy”). • Développement et maintenance d’une passerelle de transmission des données patients, à partir d’une application Web à l’application bureau d’un autre acteur de la santé dentaire pour la création des dossiers patients. • Conception et maintenance d’un panel de web service pour une interconnexion logicielle dans le cadre d’un partenariat. • Conception et maintenance d’une application de formalisation des données à partir d’une application WEB à destination d’un ensemble d’application de radiologie sur Windows et OSX. • Développement d’une application de surveillance d’un processus applicatif afin de pouvoir l’arrêter et le (re)démarrer en fonction des évènements Windows survenus (verrouillage et déverrouillage de la session). • Réalisation d’une architecture logicielle WEB avec un ensemble de middleware dans le cadre du projet des sites clients (prises de rendez-vous, etc.). • Rédaction d’un cahier des charges techniques pour la synchronisation entre 3 applications WEB (Fresh Sales, Fresh Desk et Veasy). • Maintenance de la logique d’extraction d’une solution logicielle (T-SQL) pour une analyse B.I. • Optimisation des traitements pour liés aux statistiques. • Conception d’une ossature logicielle comportant un web service pour les appels des web hooks dans le cadre d’une interopérabilité logicielle avec un partenaire du secteur bancaire. • Développement d’un agenda WEB sur la landing page de Veasy munie d’indicateurs financiés et temporels. • Conception d’une application de mise à jour automatisée du contenu d’un calendrier de l’avent chaque soir sur un serveur FTP pour une communication sur un évènement marketing.

FRUITEOFreelance

janv. 2018 - mai 2018

5 mois

Saint-Maur-des-Fossés, France

Consultant en développement

avr. 2018 - mai 2018

2 mois

Saint-Maur-des-Fossés, France

• Conception d’une application mobile Node.JS (React Native) pour la présentation de l’agence digitale au salon Paris WEB 2018. • Développement d’un gestionnaire de navigation, intégration de vidéos promotionnelles et présentation du catalogue des réalisations.

Consultant en développement

janv. 2018 - mars 2018

3 mois

Saint-Maur-des-Fossés, France

• Conception d’une application bureau Node.JS (Electron) pour la présentation de l’agence digitale au salon Paris WEB 2018. • Développement d’un gestionnaire de navigation et de gestion des IHM, pré-chargement des ressources statiques, intégration de vidéos promotionnelles, mini jeu d’association des problématiques technologiques et de leurs solutions pour le stand, gestion de la webcam avec superposition d’images pour un second jeu, animations CSS de l’application.

Consultant en développement PHP / Javascript

RoamX ConsultFreelance

déc. 2017 - janv. 2018

2 mois

Saint-Denis, France

• RoamX Consult est une entreprise fournissant des services de conseil en télécommunications, des formations et animations de séminaire sur des divers sujets liés aux télécommunications, notamment en matière de roaming international. • Conception du site internet vitrine de l’entreprise présentant les services, activités ainsi que les nouvelles de cette dernière. • Mise en place d’un formulaire de contact.

Consultant en développement

FRUITEOFreelance

juil. 2017 - oct. 2017

4 mois

Saint-Maur-des-Fossés, France

• Développement d’une application bureau pour la génération et la configuration à la volée d’un framework PHP (interne à l’entreprise) suivant les composants sélectionnés. Réalisé en C# avec le gestionnaire d’interface utilisateur WPF (Windows Presentation Foundation). • Référencement du projet sur une base de données PostgreSQL centralisé avec l’intégralité de ces informations (composants et paramètres).

Davidson consulting

oct. 2016 - mai 2017

8 mois

Saint-Denis, France

Consultant en développement

févr. 2017 - mai 2017

4 mois

Saint-Denis, France

Mission au sein de l'entreprise Visiodent : • Développement de la synchronisation bidirectionnelle avec l’organisme de prise de rendez-vous en ligne Doctolib pour rajout à la solution de synchronisation des agendas précédemment développée. • Développement d’un mécanisme de notification par email avec rapport d’erreurs détaillé dans le cas d’échec de synchronisation. • Conception d’un proxy / relai smtp en Node.JS pour la retransmission des notifications et rapports d’échec. • Développement d’un système de redondance des logs sur plusieurs serveurs à travers un canal sécurisé (SSH) avec gestion automatique de l’espace disque pour une rotation des journaux d’activité sur les différents serveurs. • Sécurisation des machines de stockage des logs à travers l’implémentation des règles de filtrage des requêtes sur le pare-feu (NETFILTER). • Rédaction d’un document de définition d’une politique de sécurité des systèmes d’informations pour un appel d’offres.

Consultant en Développement & Architecture des logiciels

oct. 2016 - janv. 2017

4 mois

Saint-Denis, France

Mission au sein de l'entreprise Visiodent : • Développement d’une solution logicielle de synchronisation bidirectionnelle d’agenda entre Veasy (Visiodent Cloud) et l’agenda en ligne Mon Docteur : rendez-vous, motifs de rendez-vous, plateaux techniques et dossiers patients. • Stack / Architecture technique du connecteur : Java SE, Ini4j, JSON, XML, Worker-Crew Model (Thread Pool), DB Pool (SQL Server), requêtage d’API RESTFUL (JSON) muni de JWT (JSON Web Token), Priority Queue, conception d’un Event Watcher, Introspection Java. • Catch du signal système USR2 pour un arrêt propre d’une entité du cluster, ajout d’un watcher pour shutdown / génération d’un fichier avec PID du processus courant. • Méthodologie de test adopté T.D.D. (”Test Driven Development”) pour un total de 174 tests unitaires pour le connecteur (application & procédures t-sql en base de données). • Conception d’un ensemble de web-service CRUD sur une stack ASP.NET (C#) MVC 5 avec 43 tests unitaires réalisés. Requêtes cross-domain supportés en prenant en charge le protocole OPTIONS. Utilisation de LinQ pour les requêtes en base de données (SQL Server). • Documentation du code et génération sous la forme d’une documentation technique au format CHM (HTML Compilé) ainsi qu’au format d’un site internet à mettre en place en interne (css style doc. MSND). • Mock-up des web-services en Node.JS (avec 10 tests unitaires utilisant Mocha & Chai pour la validation du comportement). • Traitements en base de données avec l’utilisation de sémaphore pour les appels concurrents dus au Worker-Crew Model : un ensemble de procédures stockées, triggers, fonctions a été développé, accompagné de 49 tests unitaires. • Développement d’une interface pour l’ajout de nouvelles liaisons au connecteur. En Javascript natif, jQuery, CSS et C# ASP.NET MVC 5. • En bash, conception d’un installateur et solution de déploiement de l’application serveur. Utilisation des Crontab pour la surveillance du niveau de RAM du serveur.

Développeur & Support système et sécurité

HDI Global SE

sept. 2014 - août 2016

2 ans

• Conception et maintenance d’applications métiers en Java EE. Développement et déploiement de micro-services. • Mise en place d’infrastructures réseaux et systèmes. • Sécurisation des serveurs hébergent les solutions applicatives métiers (scans, configurations des services, pare-feu, ...). • Proposition et mise en place d’architectures logicielles. • Développement d’une solution de suppression sécurisée et automatisée des données de l’ensemble des disques dur de l’entreprise. • Développement d’une solution en C# (WPF) d’émission sécurisées des exports assurances sur la plateforme de notre partenaire. • Développement d’une application bureau en Node.JS (”Stitch Notifier”) de surveillance et d’alerte d’un quelconque arrêt des serveurs. • R&D : Optimisation de l’architecture dans le but d’améliorer les capacités d’analyse des processus applicatifs métiers en ”clusterisant” les traitements sur plusieurs unités de calcul distinct (raspberry).


Formation

ESGI

Master 2 (M2)

2014 - 2016

2 ans 1 mois

ESGI

Bachelor's degree

2013 - 2014

1 an 1 mois

IRIS - Ecole supérieure d'informatique

BTS (BAC +2)

2011 - 2013

2 ans 1 mois

Section de techniciens supérieurs, Lycée Voillaume

Baccalauréat

2008 - 2010

2 ans 1 mois

Lycée professionnel Denis-Papin

BEP (brevet d'études professionnelles) Electronique

2006 - 2008

2 ans 1 mois

Le meilleur endroit pour trouver votre prochaine opportunité

© 2026. Tous droits réservés.