
Iskander Soltani
Développeur Full Stack Senior | Java & Angular
Salaire / Taux journalier
92320 Châtillon, France
Freelance
Peut venir sur site
Expertises
À propos
Introduction
Développeur Fullstack Senior spécialisé en Java / Spring Boot et Angular, j’interviens sur des projets complexes où la qualité, l’architecture et la performance sont essentielles. Avec plus de 7 ans d’expérience, j’ai travaillé sur des applications web critiques à forte volumétrie, en mettant en place des architectures propres (DDD, hexagonal), des pipelines CI/CD robustes, et des pratiques de développement modernes (tests, TDD, clean code). Curieux, rigoureux et orienté produit, j’aime autant
Expérience de travail
Développeur Full stack Java/Angular
CANAL+ Group
sept. 2022 - déc. 2025
3 ans 4 mois
92130 Issy-les-Moulineaux, France
Développement from scratch d’une plateforme de création de publicités, gestion des utilisateurs (admin), suivi des spots diffusés et reporting financier. Équipe : 4 développeurs, 1 UI/UX, 1 QA et PO Tâches réalisées : Conception et développement backend (Java 21, Spring Boot) : • Mise en place d’une architecture hexagonale et d’un DDD (Domain Driven Design) pour améliorer la structuration du domaine et la maintenabilité. • Mettre en place le model et les tables de base des données sur oracle • Développement de nouvelles APIs REST, optimisation du code existant, mise en place de validations, mapping complexes et gestion des flux métier. Développement frontend (Angular 18) : • Création de composants avancés basés sur RxJS/Signals, NgRx et les nouveaux patterns Angular. • Refonte de pages métier complexes, optimisation des performances, amélioration de l’UX. • Mise en place de design patterns Angular pour gérer des formulaires complexes et améliorer la maintenabilité (Rules Engines, Builder, Reactive Forms avancés). Sécurité applicative / Authentification : • Intégration complète d’Okta, OAuth2 pour l’authentification et l’autorisation: Front-end : intégration du widget Okta (OIDC) pour gérer le login, la récupération et le stockage sécurisé des tokens. • Back-end : création d’un filtre Spring (OncePerRequestFilter) pour décoder, vérifier la signature et valider les JWT fournis par le front. • Gestion des rôles, des permissions et sécurisation des API Rest via des annotations java custom. AWS Cloud & Terraform • Gestion des mises en production et supervision applicative. AWS Lambda / JavaScript : développement d’une fonction Lambda pour la validation des JWT via le SDK Okta; • Développement d'une Lambda Java dédiée à la validation des JWT via le SDK Okta. • Mise en place de l’Infrastructure as a Code (IaC) via Terraform pour le déploiement de la lambda • CloudWatch : Création d’alertes, analyse des logs, dashboards, (ECS, Lambda, S3). Tests End-to-End (Cypress) : • Participation au développement des tests automatisés End-to-End avec Cypress. • Création d’un pipeline GitLab CI dédié aux tests Cypress. • Mise en place d’un environnement complet Docker / Docker Compose pour exécuter frontend + backend + Cypress. Collaboration produit : • Participation aux ateliers de conception, définition des spécifications fonctionnelles et techniques. • Réalisation de code reviews pour garantir la qualité, la cohérence et le respect des bonnes pratiques. • Travail quotidien avec le Product Owner et les équipes UX. Environnement Technique: • Backend: Java 21, Spring Boot (Web, Security, Validation), Architecture Hexagonale, DDD, Gradle (multi-modules), MyBatis, Oracle Database, JWT, OAuth2, OIDC, Okta. • Frontend : Angular (14–18), RxJS, Reactive Forms, Design patterns Angular (smart/dumb components, facades, services métiers), Cypress (tests E2E). • Cloud & DevOps : AWS (EC2, S3, Lambda, CloudWatch logs), Terraform, GitLab CI/CD, Docker, Docker Compose.
Software Development Engineer
Mirakl
sept. 2018 - mai 2022
3 ans 9 mois
Paris, France
Développement en utilisant les principes de craftsmanship : TDD, architecture Hexagonale, code maintenable et testable, CICD. Faire du code review en java et javascript. Développement des pages en Angular. Développer un Batch avec Spring Batch pour auto-close des commandes reçus Développement des webhooks : - Conceptionner la format des json adequate au besoins des cliens. - Produce et consume les événements kafka et les mapper aux formats des webhooks. - Mettre en place swagger pour générer une documentation des webhooks. Réduire la charge sur kafka : - Amélioration du schéma des topics et des événements. - Migration d'une configuration de plusieurs topic et plusieurs consumers en un seul topic et un seul consumer. - Choisir le bon key pour avoir la meilleure répartition de charge sur les partitions. - Mettre en place une bonne pratique pour la suppression des topic existant pour éviter un problème avec la période de rétention des messages. - Enrichir les événements depuis la base en utilisant Jooq. Optimisation des requêtes SQL sur postgreSql : - Analyser un problème de listing des commandes sur une API rest. - Améliorer la performance de la requête en utilisant un index de type GIN [Back-end] : Java – Spring Boot – Web service REST - Jackson - JUnit – PostgreSQL – Spring Kafka - Hibernate - Jooq - Spring Batch - TDD - BDD - SQL. [Front-end] : Javascript - Angular - RxJS - NgRx - React - React Router - Redux - ReduxForm - Figma - StroyBook. [CI/CD] : Git - Github - Jenkins
Web Developer
Tyva Energie
févr. 2017 - juil. 2018
1 an 6 mois
69340 Francheville, France
Développement d’une solution web de gestion des batteries des véhicules électriques. • Modélisation UML de l’architecture de la solution. • Développement des webs services REST avec Spring Security et JWT. • Développement des interfaces Front-end Angular. • Développement des formulaires et des directives de validation des différents champs. • Elaboration de la maintenance évolutive d’une application Android. • Formation sur l’architecture et les fondamentaux de Git. Java 8 – Spring Boot – Maven – Spring Security – Web service RESTEclipse IDE – MongoDB (NOSQL) – Angular 7 - TypeScript – Android – Git- SCRUM (Sprint 3 semaines).
Formation
SUP'COM
Ingénierie des télécommunications
2016 - 2019
4 ans
Institue preparatoire aux Etudes des ingénieur de Nabeul (IPEIN )
Clase préparatoire, Math-physique
2014 - 2016
3 ans