Ingénieur Fullstack
Intervention au sein de l'équipe technique de la société SIRAT en tant qu'ingénieur Fullstack Java et Spring Boot pour participer au développement et à l'évolution de plusieurs solutions logicielles. Projet: Développement d’une application BillOwn (logiciel de facturation en ligne et gestion de stock) - Produit interne de la société Réalisations
- Développement de plusieurs modules métier et conception de la base de données ainsi que de la logique backend avec Java
- et Spring Boot.
- Création et optimisation des interfaces utilisateur avec Thymeleaf et JavaScript.
- Refactorisation des modules obsolètes en Java 8 avec Spring MVC et Hibernate pour améliorer les performances
- et la maintenabilité du code.
- Rédaction et exécution de tests unitaires JUnit 5 en collaboration active avec l’équipe QA pour assurer la validation des
- fonctionnalités sensibles, notamment la génération de factures et la validation des abonnements.
- Containerisation des services backend avec Docker et participation à la mise en place de pipelines CI/CD simples, afin
- d’automatiser les processus de build, de test et de déploiement.
- Gestion du code source via SVN, contribution aux phases de livraison, et rédaction de documentation technique.
- Participation active aux sprints Agile (Planification de sprint, réunion quotidienne, rétrospective).
- Projet: Digitalisation du Processus de Certification des Agréments OEA – Douanes de Guinée - Conception et développement d’une solution de digitalisation du processus de certification des agréments OEA.
- Réalisations
- Analyse des besoins et rédaction des spécifications fonctionnelles et techniques.
- Conception et implémentation d’une architecture modulaire en Java 17 avec Spring Boot, en appliquant les principes SOLID
- et les bonnes pratiques du Clean Code.
- Documentation de l’ensemble d’APIs REST avec Swagger/OpenAPI.
- Participation aux campagnes de validation fonctionnelle en accompagnant les utilisateurs métiers jusqu’à la mise en production.
- Collaboration active avec les équipes métier dans un environnement Agile (Scrum), facilitant une livraison incrémentale et une
- adaptation continue aux exigences fonctionnelles.
- Projet: ZForm - Just Results (USDA)
- Développement d’une solution de numérisation de la procédure d’attribution du numéro d’enregistrement agricole pour la Farm Service Agency (FSA) du ministère de l’Agriculture des États-Unis.
- Réalisations
- Implémentation d’APIs REST et modélisation de la base de données pour répondre aux besoins métier.
- Conception et optimisation des modèles de données relationnelles avec Hibernate/JPA sur PostgreSQL, incluant la gestion
- avancée des transactions et des relations complexes.
- Intégration complète du système de paiement Stripe avec gestion sécurisée des sessions, traitement des paiements, gestion
- des erreurs et notifications asynchrones via Webhooks.
- Tests unitaires et d’intégration avec JUnit et automatisation des tests d’APIs avec Postman.
- Documentation de l’ensemble d’APIs avec Swagger pour faciliter la communication entre les équipes et accélérer l’intégration
- front-end.
- Gestion agile du projet via Asana et participation active aux cérémonies Agile (daily meetings, revues de sprint).
- Projet: Evolution de la solution de gestion des autorisations de dépenses – Bank BH
- Participation au développement d’une application interne de gestion des demandes de dépense avec workflow hiérarchique, intégrant la gestion fine des utilisateurs, des droits d’accès et des règles métier avancées.
- Réalisations
- Implémentation d’un workflow dynamique de validation hiérarchique incluant la gestion des profils suppléants afin de garantir la
- continuité des approbations en cas d’absence.
- Développement d’un module complet de tableaux de bord statistiques permettant le suivi des dépenses.
- Implémentation d’une fonctionnalité de téléversement multiple de devis fournisseurs améliorant la traçabilité des demandes.
- Adaptation de l’architecture backend en Java 8, Spring MVC, Hibernate, et PostgreSQL.
- Rédaction et exécution de tests unitaires avec JUnit 5, couvrant des cas métier complexes tels que la délégation,
- la validation conditionnelle et les uploads multiples.
- Collaboration étroite avec l’équipe QA pour garantir la qualité des correctifs et valider les fonctionnalités livrées.
Environnement technique