Billel Ezzamari / Développeur web juniorEn alternance · Epitech Lyon

DÉVELOPPEURFULL-STACK.

Un problème, plusieurs chemins.
J’aime explorer les solutions et donner forme aux idées, une ligne de code à la fois.

React / Sass / Node.js / MongoDBDéfiler pour découvrir ↓

Du code aux projets.

01 — Sélection
Kasa — accueil et catalogue des logements.
Kasa — accueil et catalogue des logements.
Front-end / React · Sass

Kasa

Une interface de location, composant par composant.

Explorer le projet

Le contexte

Projet de formation : réaliser l’interface d’un site de location de logements avec React.

Les objectifs

Créer une interface responsive de location de logements et permettre de naviguer du catalogue aux fiches détaillées.

Mon travail

Organisation de l’interface en composants React et répartition des styles dans plusieurs fichiers Sass.

Les compétences développées

Découper une interface en composants React réutilisables, transmettre des données entre composants, organiser les imports et structurer les styles avec Sass.

Le résultat

Une interface organisée en composants réutilisables : catalogue de logements, fiches détaillées et navigation entre les pages.

La difficulté

Passer d’un fichier CSS unique à des styles répartis, comprendre les liens entre les composants et gérer leurs imports.

Ce que j’ai appris

Les cours, les explications de mon mentor et les essais successifs m’ont aidé à comprendre cette organisation et à corriger mes erreurs.

Pour aller plus loin

Poursuivre la documentation des composants et enrichir les tests des parcours utilisateurs.

Voir le code sur GitHub ↗
Écran de connexion du front-end fourni. Mon travail porte sur l’API.
Écran de connexion du front-end fourni. Mon travail porte sur l’API.
Back-end / Node.js · MongoDB

Mon Vieux Grimoire

Des livres, des notes et des accès maîtrisés.

Explorer le projet

Le contexte

Projet de formation : développer le back-end d’un site de notation de livres, à connecter à un front-end React fourni.

Les objectifs

Connecter le front-end fourni à une API permettant de gérer des livres et leurs notes, avec des accès protégés.

Mon travail

API de gestion des livres et des notes, authentification, contrôle des autorisations et traitement des images. Le dépôt documente JWT, bcrypt et Sharp.

Les compétences développées

Construire des routes API REST, contrôler les données et les autorisations, gérer les erreurs et hacher les mots de passe avec bcrypt.

Le résultat

Une API REST avec gestion des livres et des notes, contrôle du propriétaire avant modification ou suppression, mots de passe hachés et images converties en WebP.

La difficulté

Gérer les autorisations, contrôler les données reçues, traiter les différents cas d’erreur et comprendre le hachage des mots de passe.

Ce que j’ai appris

Je me suis appuyé sur les cours OpenClassrooms pour comprendre ces mécanismes et les mettre en pratique.

Pour aller plus loin

Renforcer les tests des cas d’erreur et documenter les réponses de l’API.

Voir le code sur GitHub ↗
Extrait du Kanban réalisé pour préparer le développement.
Extrait du Kanban réalisé pour préparer le développement.
Conception / Spécifications · Kanban · Veille

Menu Maker

Transformer un besoin en plan de développement.

Explorer le projet

Le contexte

Qwenta souhaite permettre aux restaurateurs de créer, personnaliser et exporter leurs menus. Ce projet de formation porte sur la préparation du développement.

Les objectifs

Préparer un développement réalisable à partir du besoin de Qwenta, en proposant des choix techniques et un ordre de réalisation des tâches.

Mon travail

Rédaction des spécifications, proposition d’architecture, Kanban de 28 tâches techniques et veille Feedly. Next.js, TypeScript, PostgreSQL et Prisma sont des choix proposés pour le futur développement.

Les compétences développées

Traduire des spécifications en tâches, identifier les dépendances, estimer la complexité et organiser une veille technique.

Le résultat

Un dossier de préparation avec spécifications techniques, 28 tâches estimées et une veille. L’application n’a pas été codée dans ce projet.

La difficulté

Traduire les spécifications en tâches concrètes, identifier leurs dépendances et estimer leur complexité pour construire une planification cohérente.

Ce que j’ai appris

Mon mentor m’a expliqué le travail en méthode agile. L’IA m’a aidé à comprendre les échelles d’estimation de la complexité des tâches.

Pour aller plus loin

Confirmer les accès aux API partenaires, puis confronter les choix techniques à un prototype.

Consulter le Kanban (PDF, 103 Ko) ↗

Changer de voie.
Construire la suite.

02 — Mon parcours

Avant le développement web, j’ai suivi un BTS Commerce international. La formation m’a plu et j’y ai obtenu de bons résultats, mais ses débouchés ne correspondaient pas à mes aspirations.

Une occasion de reconversion et les conseils d’un ami m’ont aidé à me lancer. Aujourd’hui, ce qui me plaît, c’est de chercher différentes solutions à un même problème et de voir le résultat évoluer au fil des modifications.

Je poursuis aujourd’hui mon Bachelor CDA à Epitech Lyon en alternance. Cette nouvelle étape me permet de consolider mes acquis et de développer mes pratiques professionnelles en entreprise.

  1. Le point de départ

    Commerce international

    Un BTS, puis l’envie de trouver une voie qui me correspond davantage.

  2. Le changement

    Développement web

    Une reconversion avec OpenClassrooms, des projets et l’accompagnement de mon mentor.

  3. Aujourd’hui

    Epitech et alternance

    Un Bachelor CDA à Epitech Lyon et une alternance pour continuer à apprendre, côté interface comme côté serveur.

Mes outils de travail.

03 — Compétences

Interface

HTML · CSS · Sass
JavaScript · React

Serveur

Node.js · MongoDB
API REST · Authentification

Méthode

Git · GitHub · Kanban
Spécifications · Veille

04 — Échangeons

Parlons de code
et de projets.

Je suis désormais en alternance et poursuis mon Bachelor CDA à Epitech Lyon. Une question sur mes projets, un retour technique ou une envie d’échanger sur le développement web ? Écrivez-moi.

billel.ezzamari@gmail.com

Écrire depuis Gmail (nouvel onglet) ↗

Retrouvez-moi sur GitHub