Hamza Djebiri
Ingénieur logiciel & Développeur Full-Stack Web/Mobile
Summary
Ingénieur logiciel et développeur Full-Stack avec plus de 5 ans d’expérience professionnelle dans la création d’applications évolutives et à fort impact. Développeur depuis 2018 à travers des projets personnels, universitaires, des stages et des environnements professionnels, démontrant de fortes capacités de résolution de problèmes, un apprentissage rapide et une grande adaptabilité aux différentes technologies et contextes projets. Capable de mener des initiatives techniques, de livrer des solutions fiables et de contribuer efficacement au sein d’équipes pluridisciplinaires.
Experience
- Conception & Architecture : Dirigé la conception fonctionnelle et technique d’applications évolutives. - Gestion de Projet : Coordonné les tâches de développement et assuré la livraison dans les délais. - Recrutement & Entretiens : Participé aux processus de recrutement et conduit des évaluations de candidats. - Développement de bout en bout : Contribué au développement majeur de deux applications d’envergure (Gwanzo & StockGeste) : 1. Gwanzo : Application de réseau social à grande échelle (similaire à TikTok & Snapchat). 2. StockGeste : Système avancé de gestion d’inventaire avec de nombreuses fonctionnalités. - Assurance Qualité : Garanti la fiabilité des applications grâce à des tests rigoureux et des validations approfondies
- Piloté le développement et l’architecture d’applications web et mobiles fullstack utilisant ASP.NET Core, Angular et Ionic, en garantissant l'évolutivité et la maintenabilité. - Conçu et implémenté des composants UI des modules Angular réutilisables pour améliorer l’expérience utilisateur et la réutilisabilité. - Mis en place le support hors ligne et la synchronisation pour l'application mobile Ionic afin d’assurer une expérience utilisateur fluide. - Collaboré avec des équipes pluridisciplinaires pour analyser les besoins, définir les spécifications techniques et livrer des logiciels de haute qualité dans les délais. - Encadré des développeurs juniors, effectué des revues de code et facilité les pratiques de développement agile pour améliorer la productivité et la qualité du code. - Développé des fonctionnalités d’import et d’analyse de données à partir de plusieurs formats de fichiers (Excel, fichiers texte), permettant la population dynamique des données et des calculs en temps réel dans l’application.
- Mise en place d’une fonctionnalité backend pour l’envoi des SMS de test vers Slack, dans le but de réduire les coûts. - Amélioration de la flexibilité du système en remplaçant les hooks Loopback par de nouvelles APIs, traitant des tâches critiques et complexes liées à la gestion d’événements automatiques tels que « before save » et « after save ». - Développement de nouvelles interfaces utilisateur avec React.js et MUI. - Analyse, modification et refactorisation du code existant (difficile à comprendre ou à modifier) sur le frontend et le backend, selon les besoins du projet. - Investigation et résolution de deux problématiques liées a l’inscription: 1. La longueur des URL des messages SMS dépassant la limite de caractères, entraînant des coûts supplémentaires. 2. La sécurité de l’encodage des informations patient dans les URL. Création ou modification de tests automatisés à l’aide de Mocha.
- Amélioration d’une plateforme Ruby on Rails (Wscripted). - Identification et résolution de bugs et de vulnérabilités de sécurité. - Utilisation avancée d’Algolia pour créer des recherches sophistiquées, des filtres personnalisés et afficher les résultats dans une application monopage (SPA). - Développement de nouvelles fonctionnalités en intégrant mes solutions avec Algolia Search. - Résolution de problèmes et amélioration des fonctionnalités d'un projet Shopify préexistant (lalchimiste). - Amélioration des performances des appels API Laravel. - Amélioration d’un site WordPress existant. - Travail sur des modèles 3D avec Three.js pour simuler des publicités en ajoutant logos et couleurs, créant des effets visuels attractifs (Adriver). - Développement de composants réutilisables avec React - Optimisation SEO du site web. - Utilisation de Docker pour le déploiement et la mise en production d’applications - Administration de la base de données et gestion des tâches existantes. - Facilitation du processus de déploiement en créant des scripts automatisés. - Développement de la documentation et des diagrammes nécessaires pour les futurs développeurs.