Aller au contenu

SCORE

00000

VIES

Astuce : clique sur les aliens 👾

Photo de Hénoc ODIA

PLAYER 1

HENOC ODIA

DEVELOPPEUR WEB FULL-STACK

Je transforme des besoins métier en applications web claires, utiles et bien construites.

STAGE 01

PROFIL JOUEUR

Étudiant en 2e année à la Web@cadémie d'Epitech Lyon et développeur front-end en alternance chez Sylvencia (Genève), je construis des applications web de bout en bout : de l'analyse du besoin jusqu'à la mise en production.

Ce que j'aime : partir d'un vrai problème utilisateur — une auto-école qui gère ses plannings, une commune qui suit ses arbres — et livrer une interface simple qui le résout. J'ai touché à de nombreuses stacks (React, Next.js, Node, Django, Rails, Spring Boot, FastAPI) ce qui me permet de choisir l'outil adapté plutôt que l'outil habituel.

Prochaine étape : une année en freelance pour accompagner différents clients, puis une reprise d'études pour viser plus de responsabilités techniques.

★ Disponible en freelance à partir de novembre 2026

STAGE 02

BOSS LEVEL : ALTERNANCE

Quatorze mois sur une application en production, au sein d'un pôle technique de deux développeurs.

SYLVENCIA — GESTION DU PATRIMOINE ARBORE

Sept. 2025 → Nov. 2026

Alternance · Développeur front-end · Sylvencia, Genève (télétravail)

Application web utilisée par les collectivités du canton de Genève pour suivre l'entretien de leurs arbres. Pôle technique de 2 personnes, en télétravail.

Ce que j'en retiens — Travailler sur un code existant, en autonomie, avec des utilisateurs réels. Découverte complète de Firebase et des données géographiques.

  • React
  • Firebase
  • PDFKit
  • Tolgee
  • API SITG
  • GitLab
  • Jira

MISSIONS ACCOMPLIES

  • ✔Fiches arbres PDF générées en un clic (tableaux multi-pages calculés à la main)
  • ✔Internationalisation complète FR / DE / IT / EN avec Tolgee
  • ✔Import de 200 000+ arbres depuis l'API cantonale + conversion LV95 → WGS 84
  • ✔Contours des collectivités dessinés en polygones sur la carte

Compétences RNCP démontrées

STAGE 03

TABLEAU DE CHASSE

Une sélection de projets d'école et personnels, du plus récent au plus ancien. Chaque carte indique ce que j'y ai appris et les compétences RNCP qu'elle démontre.

PAGE 1/4
Projet libre · binôme2026

AUTOTRACK

Application full-stack conteneurisée et déployée en ligne : front Next.js, API FastAPI avec authentification, orchestrée par docker-compose.

  • +API REST FastAPI (auth, utilisateurs) typée avec Pydantic
  • +Healthcheck : le front attend que l'API soit disponible
  • +Mise en production sur un nom de domaine

Appris : Organiser un projet à deux de A à Z et penser au déploiement dès le départ.

  • Next.js
  • TypeScript
  • FastAPI
  • Python
  • Docker

Compétences RNCP démontrées

Module IA · MyBot2026

GENERATIVE PETS

Assistant conversationnel « Pawly » qui aide à adopter un animal. L'IA multimodale tourne entièrement en local (LM Studio, Gemma 3).

  • +Multi-conversations sauvegardées en LocalStorage
  • +Envoi d'images pour identifier une race
  • +API en couches : routes → contrôleurs → services, prompt système dédié

Appris : Intégrer un LLM proprement (prompt, validation des entrées, délais) sans dépendre d'un service payant.

  • React
  • Vite
  • Node.js
  • Express
  • LLM local

Compétences RNCP démontrées

Module Ruby2026

AVENTURE RPG

Jeu de rôle web : quêtes, combats contre des PNJ, énigmes, inventaire, équipement et hôtel des ventes entre joueurs.

  • +Modèle de données riche (12 entités reliées)
  • +Données de démo chargées par bin/setup

Appris : Découvrir les conventions Rails et la puissance d'un ORM bien utilisé.

  • Ruby on Rails
  • PostgreSQL
  • ActiveRecord

Compétences RNCP démontrées

STAGE 04

MISSIONS RNCP

Titre visé : Concepteur Développeur d'Applications. Pour chaque compétence : mon auto-évaluation, les projets qui la prouvent, mon analyse et ce qu'il me reste à faire pour passer au niveau supérieur.

ECHELLE

  • Découverte
  • Application guidée
  • Autonome
  • Maîtrise

MOYENNE GENERALE

2.8/4

11 compétences · 3 blocs · toutes illustrées par au moins deux réalisations.

VAGUE 1 · DEVELOPPER UNE APPLICATION SECURISEE

C1

Installer et configurer son environnement de travail en fonction du projet

Autonome
▶ Analyse & prochain niveau

Je sais monter un environnement reproductible pour chaque stack : conteneurs Docker (MySQL, PHP, Nginx) sur Kiloupabocou, docker-compose avec healthchecks sur AutoTrack, environnement virtuel Python sur Driving School, et un modèle d'IA servi en local via LM Studio pour Generative Pets. Les variables sensibles sont isolées dans des fichiers .env non versionnés.

Pour progresser : Automatiser l'installation complète (scripts make / devcontainer) pour qu'un nouveau développeur démarre en une commande.

C2

Développer des interfaces utilisateur

Maîtrise
▶ Analyse & prochain niveau

C'est ma compétence la plus solide. En alternance, je développe au quotidien des composants React réutilisables dans une application utilisée par des collectivités : génération de fiches PDF, internationalisation en 4 langues avec Tolgee, cartographie de 200 000 arbres. Côté école, interfaces de chat multimodal (React/Vite) et ce portfolio en Next.js + Tailwind, responsive et accessible.

Pour progresser : Mesurer systématiquement l'accessibilité (audit RGAA / Lighthouse) et ajouter des tests de composants.

C3

Développer des composants métier

Autonome
▶ Analyse & prochain niveau

J'ai implémenté des règles métier réelles : blocage d'une prise de rendez-vous quand l'élève n'a plus assez d'heures (Driving School), gestion de 4 rôles, inventaire / équipement / hôtel des ventes dans un RPG Rails, configuration initiale obligatoire et CRUD complets pour un site de restaurant en Spring Boot. Chez Sylvencia, la fiche arbre agrège observations, conduite et programmes de travail avec calcul des totaux.

Pour progresser : Isoler davantage la logique métier dans des services testés unitairement, indépendants du framework.

C4

Contribuer à la gestion d'un projet informatique

Autonome
▶ Analyse & prochain niveau

En entreprise, je travaille par tickets Jira, branches Git et merge requests relues sur GitLab, en télétravail avec un rythme 3 semaines / 1 semaine. Sur le projet libre AutoTrack, organisation en binôme avec répartition front / back et conventions de commit (ADD, UPDATE, REFINE…).

Pour progresser : Mieux estimer la durée des tâches avant de les démarrer — indispensable pour le freelance.

VAGUE 2 · CONCEVOIR ET DEVELOPPER UNE APPLICATION SECURISEE ORGANISEE EN COUCHES

C5

Analyser les besoins et maquetter une application

Application guidée
▶ Analyse & prochain niveau

Je sais traduire un sujet client en parcours utilisateurs : restaurateur vs client final sur My Restaurant, 4 profils (élève, moniteur, secrétaire, admin) sur Driving School. Pour ce portfolio, j'ai défini moi-même la cible (équipe pédagogique + recruteurs) et l'organisation des contenus. En alternance, les besoins m'arrivaient déjà formalisés par mon tuteur.

Pour progresser : Conduire moi-même des entretiens client et produire des maquettes Figma avant de coder.

C6

Définir l'architecture logicielle d'une application

Autonome
▶ Analyse & prochain niveau

J'organise mes projets en couches : routes → contrôleurs → services sur l'API Express de Generative Pets, MVC Spring (contrôleurs, services, repositories JPA), micro-service PHP Slim avec Service Factory, et séparation front Next.js / API FastAPI sur AutoTrack. Je choisis la stack selon le besoin plutôt que par habitude.

Pour progresser : Documenter mes choix d'architecture (schémas C4, ADR) et aborder les architectures événementielles.

C7

Concevoir et mettre en place une base de données relationnelle

Autonome
▶ Analyse & prochain niveau

Modélisation de schémas avec relations multiples : joueurs, inventaires, équipements, quêtes, récompenses et enchères en PostgreSQL (Rails), élèves / forfaits / rendez-vous / moniteurs en SQLite avec fixtures (Django). Mise en place d'un serveur MySQL conteneurisé avec utilisateur dédié et volume persistant.

Pour progresser : Travailler l'optimisation : index, plans d'exécution et migrations sans interruption de service.

C8

Développer des composants d'accès aux données SQL et NoSQL

Autonome
▶ Analyse & prochain niveau

J'ai utilisé plusieurs ORM (Eloquent, ActiveRecord, Spring Data JPA, ORM Django) et, côté NoSQL, Firebase Firestore en alternance, que j'ai appris de zéro. J'ai aussi consommé l'API publique du SITG (géodonnées) en ne chargeant que la zone affichée pour garder une carte fluide.

Pour progresser : Approfondir la sécurité de l'accès aux données (règles Firestore fines, requêtes paramétrées auditées).

VAGUE 3 · PREPARER LE DEPLOIEMENT D'UNE APPLICATION SECURISEE

C9

Préparer et exécuter les plans de tests d'une application

Application guidée
▶ Analyse & prochain niveau

Sur My CRUD Tester, j'ai écrit des tests unitaires Jasmine en démarche BDD et des tests fonctionnels Postman (authentification Bearer, codes d'erreur, unicité de l'email). C'est mon principal axe de progression : en alternance, je testais surtout manuellement, par itérations sur des jeux de données variés.

Pour progresser : Écrire des tests automatisés sur chaque nouvelle fonctionnalité (Vitest / Testing Library, Playwright) et les brancher en CI.

C10

Préparer et documenter le déploiement d'une application

Autonome
▶ Analyse & prochain niveau

Chaque projet est livré avec un README d'installation pas à pas (prérequis, variables d'environnement, commandes, données de démo). Les Dockerfile et docker-compose rendent le déploiement reproductible.

Pour progresser : Ajouter une procédure de rollback et une documentation d'exploitation (logs, sauvegardes).

C11

Contribuer à la mise en production dans une démarche DevOps

Application guidée
▶ Analyse & prochain niveau

AutoTrack est déployé en production derrière un domaine, avec des conteneurs qui redémarrent automatiquement et un front qui attend que l'API soit saine (healthcheck). En entreprise, mes merge requests passent par relecture avant intégration sur la branche principale.

Pour progresser : Mettre en place une chaîne CI/CD complète (GitHub Actions : lint → tests → build → déploiement) pour ce portfolio.

STAGE 05

PROGRESSION

Mes choix de projets suivent une logique : d'abord maîtriser l'interface (ma force), puis descendre couche par couche — données, API, infrastructure — pour être capable de livrer une application complète seul. L'alternance a servi d'accélérateur : un code réel, des utilisateurs réels, des relectures exigeantes.

  1. 2024 – 2025

    NIVEAU 1 · LES BASES

    Entrée à la Web@cadémie. HTML, CSS, PHP, SQL, JavaScript puis React. Projets Twitter et Spotify en équipe.

  2. Sept. 2025

    NIVEAU 2 · ALTERNANCE CHEZ SYLVENCIA

    Développeur front-end en télétravail sur une application en production. Rythme 3 semaines entreprise / 1 semaine école.

  3. Oct. 2025 – Jan. 2026

    NIVEAU 3 · QUALITE, API ET INFRA

    Tests (Jasmine, Postman), micro-services sécurisés par JWT, dockerisation complète d'une infrastructure.

  4. 2026

    NIVEAU 4 · MULTI-STACK

    Django, Rails, Spring Boot, FastAPI, IA locale : je change de langage sans changer de méthode.

  5. Nov. 2026 →

    NIVEAU SUIVANT · FREELANCE

    Une année en freelance pour accompagner différents clients, puis reprise d'études.

POWER-UPS

Mes forces

  • ■Interfaces React solides et réutilisables
  • ■Autonomie et communication écrite (télétravail)
  • ■Adaptabilité : 6 frameworks back-end pratiqués
  • ■Sens du besoin métier

POINTS FAIBLES

Ce que je travaille

  • ■Tests automatisés encore trop rares
  • ■Estimation du temps des tâches
  • ■Peu de contact direct avec le client final

PROCHAINE QUETE

Mes objectifs

  • ■CI/CD complète sur mes projets
  • ■Tests systématiques sur chaque fonctionnalité
  • ■Recueillir et reformuler moi-même les besoins clients
  • ■Premiers clients en freelance

ARSENAL TECHNIQUE

FRONT-END

  • React
  • Next.js
  • TypeScript
  • JavaScript
  • Tailwind CSS
  • HTML / CSS

BACK-END

  • Node.js / Express
  • FastAPI
  • Django
  • Ruby on Rails
  • Spring Boot
  • PHP / Slim

DONNEES

  • PostgreSQL
  • MySQL
  • SQLite
  • Firebase
  • ORM (JPA, Eloquent, ActiveRecord)

OUTILS & DEVOPS

  • Git / GitLab
  • Docker
  • docker-compose
  • Nginx
  • Jira
  • Postman / Jasmine

STAGE 06

INSERT COIN

Un projet, une mission freelance, une question ? Envoyez-moi un message.

odiahenocpro@gmail.com

Lyon, France

Disponible en freelance à partir de novembre 2026.