À propos

Qui je suis.

Je suis Tibo Tessier, étudiant en 2ème année de BUT Informatique à l'IUT de Laval. Passionné par la création de solutions numériques efficaces, je combine rigueur académique et autonomie pour transformer de simples idées en applications fonctionnelles.

Actuellement à la recherche d'un stage en développement Full Stack pour Avril 2026, j'apporte une expérience solide en gestion de projets AGILE, une maîtrise du cycle développement complet (BD, Back, Front), et une vraie volonté d'apprentissage.

Quelques chiffres : 120+ heures sur projets professionnels pendant l'année scolaire en cours, 4 technologies full stack maîtrisées, 100% des projets livrés en délai.

tibo@portfolio:~/about
Projets

Mes Réalisations.

Application Tri Web

PHP • SQL • HTML • CSS

Suivi complet du recyclage matériel universitaire.

Morpion JavaFX

Java • JavaFX

Architecture POO avec interface graphique réactive.

Application web Météo

Python • Jinja • API • HTML • CSS

Intégration d'API tierces et design adaptatif.

Bot Discord mise à jour Apple

Python • SQL

Avertit un serveur d'une nouvelle mise à jour des appareils Apple.

Compétences

Technologies & Outils.

Langages de Programmation

Java
PHP
Python
JavaScript
HTML
CSS
Bash
C

Bases de Données

MySQL
SQL Server
MongoDB
phpMyAdmin

Frameworks & Bibliothèques

JavaFX
Symfony

Environnements de Développement

IntelliJ IDEA
VS Code
Eclipse
Terminal

Outils & Collaboration

Git
GitHub
GitHub Desktop
Docker
Figma
Trello
API
Bot Discord

Méthodologies

AGILE / SCRUM
UML
Gestion de projet
BUT Informatique - Niveau 2

Compétences Professionnelles.

Auto-évaluation selon le référentiel BUT Informatique - Parcours Réalisation d'Applications

📍 Mon niveau actuel Les cases surlignées en bleu indiquent mon positionnement actuel
Cliquez sur une case bleue pour voir les preuves justifiant mon placement

Compétence 1 : Réaliser un développement d'application

Partir des exigences et aller jusqu'à une application complète

Apprentissage Critique 🔴 Non Acquis 🟠 En cours d'acquisition 🟢 Acquis
AC21.01 – Élaborer et implémenter les spécifications fonctionnelles et non fonctionnelles Ne sait pas traduire une demande client en documents techniques. Code directement sans conception préalable. Ignore les contraintes non-fonctionnelles. Produit des diagrammes (UML/Merise) mais avec des erreurs. Identifie les fonctionnalités principales mais oublie les cas limites. Traduit fidèlement un besoin client en spécifications claires (User Stories, Diagrammes). Prend en compte les contraintes techniques dès la conception.
AC21.02 – Appliquer des principes d'accessibilité et d'ergonomie Interface utilisateur confuse ou inutilisable. Aucun respect des standards Web ou mobiles. Ne connaît pas les critères d'accessibilité de base. Interface fonctionnelle mais peu intuitive. Applique quelques règles d'accessibilité de façon irrégulière. Le site n'est pas totalement Responsive. Produit une interface ergonomique, intuitive et Responsive. Respecte les normes d'accessibilité (RGAA/WCAG) vérifiées par audit.
AC21.03 – Adopter de bonnes pratiques de conception et de programmation Code "spaghetti", difficile à lire et non commenté. N'utilise pas de gestionnaire de version (Git). Ne respecte pas les conventions de nommage. Utilise Git mais avec un historique désordonné. Le code est structuré mais manque parfois de modularité. Utilise un Framework mais ne maîtrise pas toutes ses conventions. Code propre, modulaire et documenté (Clean Code). Utilise efficacement un Framework (Symfony/Spring/Vue) et des Design Patterns (MVC). Gestion de version professionnelle.
AC21.04 – Vérifier et valider la qualité de l'application par les tests Aucun test réalisé, ou uniquement des tests manuels "au feeling". Ne sait pas ce qu'est un test unitaire. Écrit quelques tests unitaires mais la couverture est faible. Réalise un plan de recette sommaire. Corrige les bugs au fur et à mesure sans méthode systématique. Met en place une stratégie de tests complète (Unitaires, Fonctionnels). Utilise des outils d'automatisation (PHPUnit, Jest). Garantit la non-régression.

Compétence 2 : Optimiser des applications informatiques

Sélectionner les algorithmes adéquats pour répondre à un problème donné

Apprentissage Critique 🔴 Non Acquis 🟠 En cours d'acquisition 🟢 Acquis
AC22.01 – Choisir des structures de données complexes adaptées Utilise toujours les mêmes structures (tableaux simples) peu importe le problème. Ne se pose pas la question de l'efficacité mémoire. Connaît les différentes structures (Arbres, Graphes, Piles) mais hésite sur laquelle choisir. Implémente une solution fonctionnelle mais parfois lourde. Justifie le choix d'une structure (Map, List, Tree) en fonction des besoins (vitesse de lecture vs écriture). Manipule efficacement les collections d'objets complexes.
AC22.02 – Utiliser des techniques algorithmiques pour des problèmes complexes Bloque devant un problème nécessitant un algorithme non trivial (tri, parcours). Écrit des algorithmes très lents (complexité exponentielle). Sait implémenter des algorithmes classiques (tris, recherche) en s'aidant de la documentation. Commence à analyser la complexité de son code (Big O). Implémente des algorithmes avancés (récursivité, graphes, IA basique). Optimise ses algorithmes pour réduire le temps d'exécution. Sait expliquer la complexité.
AC22.03 – Comprendre les enjeux et moyens de sécurisation Code vulnérable aux failles basiques (Injections SQL, XSS). Stocke des mots de passe en clair. Utilise les fonctions de sécurité du Framework mais sans tout comprendre. A conscience des risques mais oublie parfois de valider certaines entrées utilisateur. Protège l'application contre les failles courantes (OWASP Top 10). Gère correctement l'authentification et les droits (Rôles/Voters). Chiffre les données sensibles.
AC22.04 – Évaluer l'impact environnemental et sociétal Ne connaît pas la notion d'éco-conception. Ne se soucie pas de la consommation de ressources de son application. Commence à optimiser le poids des pages (images, minification). A conscience de l'impact RGPD sur la collecte de données. Réalise des audits d'éco-conception (EcoIndex). Optimise le code pour réduire la consommation serveur. Applique strictement le "Privacy by Design" (RGPD).

Compétence 3 : Administrer des systèmes informatiques communicants

Déployer des services dans une architecture réseau

Apprentissage Critique 🔴 Non Acquis 🟠 En cours d'acquisition 🟢 Acquis
AC23.01 – Concevoir et développer des applications communicantes Ne comprend pas comment un client et un serveur communiquent. Ne sait pas utiliser une API. Sait faire des appels API simples mais gère mal les erreurs ou l'asynchronisme. Comprend l'architecture Client/Serveur de base. Développe une architecture API REST complète. Maîtrise les protocoles d'échange (HTTP, JSON). Gère les communications asynchrones complexes.
AC23.02 – Utiliser des serveurs et des services réseaux virtualisés Ne sait pas installer un environnement de développement local. Ne connaît pas la virtualisation (VM, Conteneurs). Utilise des environnements pré-configurés (WAMP/XAMPP) ou lance des conteneurs simples. A besoin d'aide pour configurer un serveur Web. Utilise Docker et Docker-Compose pour créer son environnement. Sait déployer son application sur un serveur distant (VPS, Cloud). Maîtrise la configuration des services.
AC23.03 – Sécuriser les services et données d'un système Laisse les configurations par défaut (mots de passe "root"). Utilise le protocole HTTP sans chiffrement pour des données sensibles. Met en place HTTPS mais avec des certificats auto-signés ou mal configurés. Configure les droits d'accès aux fichiers de manière basique. Configure correctement HTTPS (Certificats SSL/TLS). Gère finement les permissions utilisateurs (Linux). Sécurise l'accès à la base de données et au serveur.

Compétence 4 : Gérer des données de l'information

Optimiser une base de données, interagir avec une application et mettre en œuvre la sécurité

Apprentissage Critique 🔴 Non Acquis 🟠 En cours d'acquisition 🟢 Acquis
AC24.01 – Optimiser les modèles de données de l'entreprise Crée des tables sans liens logiques ou avec beaucoup de redondance. Ne sait pas faire un Modèle Conceptuel de Données (MCD). Réalise un MCD correct pour des cas simples. La base fonctionne mais manque d'optimisation (types de données mal choisis). Conçoit des modèles de données normalisés (3NF) et complexes. Utilise des index pour optimiser les performances des requêtes. Justifie ses choix de modélisation.
AC24.02 – Assurer la sécurité des données (intégrité et confidentialité) Pas de clés étrangères, données incohérentes possibles. Supprime des données sans vérifier les dépendances. Définit les clés primaires et étrangères correctement. Commence à utiliser les Transactions pour des opérations multiples. Garantit l'intégrité référentielle et transactionnelle (ACID). Gère les droits d'accès aux données au niveau SGBD. Met en place des stratégies de sauvegarde.
AC24.03 – Organiser la restitution de données (Prog & Visualisation) Affiche les données brutes sans mise en forme. Requêtes SQL basiques uniquement (SELECT *). Sait faire des jointures et des agrégations (GROUP BY). Utilise un ORM (Doctrine) pour récupérer les données dans l'application. Maîtrise le langage SQL avancé (Sous-requêtes, Vues). Utilise efficacement l'ORM (QueryBuilder) pour des requêtes complexes. Crée des tableaux de bord ou des exports de données.
AC24.04 – Manipuler des données hétérogènes Ne sait manipuler que sa propre base SQL. Ne sait pas lire un fichier JSON ou XML. Sait importer/exporter des données au format CSV ou JSON. Comprend la différence entre SQL et NoSQL. Interagit avec des données externes variées (API, Fichiers). Sait utiliser une base NoSQL (ex: MongoDB) si nécessaire. Gère la transformation de données.

Compétence 5 : Conduire un projet

Appliquer une démarche de suivi de projet en fonction des besoins métiers

Apprentissage Critique 🔴 Non Acquis 🟠 En cours d'acquisition 🟢 Acquis
AC25.01 – Identifier les processus présents dans une organisation Ne s'intéresse qu'au code, ignore le contexte métier. Ne comprend pas à quoi sert l'application pour le client. Comprend le besoin global mais a du mal à modéliser les flux d'information. Identifie les acteurs principaux du projet. Analyse finement les processus métier du client. Propose des améliorations au système d'information existant. Cartographie les flux de données.
AC25.02 – Formaliser les besoins du client et de l'utilisateur Attend qu'on lui dise quoi coder. Ne rédige aucun document de cadrage. Note les besoins lors des réunions mais manque de précision. Rédige des User Stories basiques. Rédige un Cahier des Charges Fonctionnel complet. Transforme le besoin client en Backlog détaillé et priorisé. Valide les besoins avec le client.
AC25.03 – Identifier les critères de faisabilité d'un projet S'engage sur des fonctionnalités impossibles à réaliser dans les temps. Sous-estime la difficulté technique. Estime la charge de travail (Planning Poker) avec une marge d'erreur. Identifie les principaux risques techniques. Réalise une étude de faisabilité technique (POC). Planifie le projet de manière réaliste (coûts/délais). Propose des alternatives si une fonctionnalité est trop coûteuse.
AC25.04 – Définir et mettre en œuvre une démarche de suivi de projet Travaille au jour le jour sans planification. Ne communique pas sur son avancement. Utilise un outil (Trello/Jira) mais le met à jour irrégulièrement. Participe aux rituels (Daily) mais reste passif. Pilote le projet avec une méthode Agile (Scrum/Kanban). Tient à jour le tableau de bord et les indicateurs (Burndown Chart). Anime les réunions de suivi.

Compétence 6 : Collaborer au sein d'une équipe informatique

Situer son rôle et ses missions au sein d'une équipe informatique

Apprentissage Critique 🔴 Non Acquis 🟠 En cours d'acquisition 🟢 Acquis
AC26.01 – Comprendre la diversité et la structure de l'informatique Ne sait pas ce qu'est une DSI ou une ESN. Confond les rôles (Maîtrise d'ouvrage vs Maîtrise d'œuvre). Comprend les différents métiers (Dev, Réseau, Chef de projet). Identifie son positionnement dans l'organigramme du projet. Comprend les enjeux stratégiques de l'informatique pour l'entreprise. Sait interagir avec les différents pôles (Support, Infra, Dev).
AC26.02 – Appliquer une démarche pour intégrer une équipe Reste isolé, ne sollicite pas l'équipe. Ne respecte pas les règles de vie du groupe. S'intègre au groupe mais attend les directives. Participe aux tâches communes si on lui demande. Est proactif dans l'intégration (Onboarding). Adopte les outils et méthodes de l'équipe rapidement. Contribue à la cohésion du groupe.
AC26.03 – Mobiliser les compétences interpersonnelles Communique de façon agressive ou ne communique pas. N'accepte pas la critique sur son code. Communique sur ses tâches. Accepte les retours lors des revues de code (Code Review) mais ne les sollicite pas toujours. Pratique l'écoute active et la communication non-violente. Aide ses collègues (Pair Programming). Gère les conflits de manière constructive.
AC26.04 – Rendre compte de son activité professionnelle Ne fait aucun reporting. Ses présentations orales sont improvisées et brouillonnes. Rédige des comptes-rendus factuels. Prépare ses présentations mais manque d'esprit de synthèse. Communique clairement sur son avancement et ses blocages. Produit des supports de présentation professionnels. Adapte son discours à son interlocuteur.
Mon Parcours

Formation & Expériences.

Formation

2025 - 2026

BUT Informatique - 2ème année

IUT de Laval

  • Spécialisation en développement Full Stack
  • Gestion de projets AGILE et méthodologies SCRUM
  • Conception de bases de données et développement web
2024 - 2025

BUT Informatique - 1ère année

IUT de Laval

  • Fondamentaux de la programmation
  • Bases de données relationnelles
  • Développement web front-end et back-end
  • Gestion de projet, Gantt, Pert
2021 - 2024

Baccalauréat Général

Lycée Jean Moulin, Angers

  • Spécialités : Mathématiques et Numériques et Sciences de l'Informatique
  • Baccalauréat Général mention assez bien
  • Certification PIX : 530 points PIX, code de verefication : P-JHC47WC8

Expériences

À la recherche de mon premier stage

Je recherche activement un stage en développement Full Stack pour mettre en pratique mes compétences techniques.

Période : Avril 2026
Durée : 8 à 12 semaines minimum
Domaine : Full Stack

Ce que j'apporte :

  • Maîtrise du cycle complet de développement
  • Expérience en méthodologie AGILE
  • Autonomie et rigueur
  • Passion pour l'apprentissage

Vous avez une place pour moi ? N'hésitez pas à me contacter !

Me contacter