Mes Compétences

Logo GLPI
GLPI (Gestionnaire Libre de Parc Informatique) est une solution logicielle open-source incontournable pour la gestion des services informatiques (ITSM). Lancé en 2003, il est devenu l'un des outils préférés des DSI pour centraliser la gestion de leur infrastructure.

Technologies Utilisées

  • Linux Debian (sur architecture ARM/Apple Silicon) pour le serveur central
  • Linux Fedora pour la machine cliente
  • Serveur web Apache
  • Système de gestion de base de données MariaDB
  • PHP version 8.2
  • GLPI version 10 et GLPI-Agent

Compétences Acquises

  • Déploiement méthodique d'une pile logicielle LAMP avec installation des dépendances nécessaires
  • Configuration initiale de MariaDB, suppression des accès non sécurisés, et création d'une base de données dédiée avec un utilisateur aux privilèges restreints
  • Création et activation d'un hôte virtuel (VirtualHost) sous Apache ciblant le dossier public de GLPI pour répondre aux exigences de sécurité
  • Installation et configuration du service GLPI-Agent sur une machine distante pour automatiser la remontée d'informations
Logo Banque Java
Ce projet regroupe des travaux pratiques réalisés en première année de BTS SIO option SLAM. L'objectif est de découvrir et maîtriser les fondamentaux du langage Java, un langage orienté objet très répandu dans le monde professionnel, à travers des programmes concrets : calcul de périmètre, devis de moquette, jeu du nombre mystère, facturation multi-articles.

Technologies Utilisées

  • Java (JDK 8+)
  • Eclipse IDE (Java EE)
  • Scanner (saisie clavier)
  • Classe Random (génération aléatoire)

Compétences Acquises

  • Déclaration et manipulation de variables typées (int, float, String) et utilisation du casting
  • Mise en œuvre des trois types de boucles Java : for, while et do...while dans des cas concrets
  • Écriture de conditions if / else if / else pour la prise de décision (calcul de remise, comptage positifs/négatifs)
  • Utilisation de constantes (final) et de l'affichage formaté (printf / %.2f) pour un code plus robuste et lisible
  • Identification et correction de bugs logiques typiques : boucle exécutée une fois de trop, condition inversée, variable non initialisée, point-virgule parasite
Logo CheckMyStars
CheckMyStars est un logiciel métier développé en équipe pour M. Berthomieux (entreprise CETIRE, cabinet accrédité COFRAC), à destination des évaluateurs d'hébergements touristiques. L'application permet la gestion centralisée des dossiers d'inspection, la notation par critères nationaux avec calcul automatique du nombre d'étoiles, et la génération automatique de devis et factures PDF. Elle remplace une gestion manuelle sur papier ou tableur.

Technologies Utilisées

  • PHP 7.4+ (procédural et POO)
  • MariaDB 11.5.2 avec procédures stockées et transactions
  • PDO avec requêtes préparées (protection injections SQL)
  • Bootstrap 5.3 (responsive, mode sombre)
  • JavaScript (Fetch API, XMLHttpRequest)
  • TCPDF ^6.10 via Composer (génération PDF)
  • Apache (XAMPP/WAMP)
  • Git + GitHub

Compétences Acquises

  • Conception et implémentation d'une architecture MVC artisanale avec séparation des couches Create/Read/Update/Delete
  • Sécurisation complète de l'authentification : hachage bcrypt, anti-réutilisation des 5 derniers mots de passe, regex de robustesse, forçage du changement à la première connexion
  • Mise en place d'un contrôle d'accès par rôles (RBAC) avec vérification de session sur l'ensemble des pages protégées
  • Utilisation de procédures stockées MariaDB avec gestion des transactions (BEGIN/COMMIT/ROLLBACK) pour garantir l'intégrité des données
  • Développement d'une API interne REST-like pour la gestion des devis et factures, avec verrou transactionnel pour l'unicité des numéros de documents
  • Génération de documents PDF professionnels côté serveur via TCPDF avec calcul automatique des montants HT/TVA/TTC
Logo Gestion des Employés PHP
Ce projet regroupe l'ensemble des travaux pratiques PHP réalisés en première année de BTS SIO option SLAM, couvrant deux cours distincts (Mme Jouin et M. Palmier). Il s'articule autour du développement progressif d'une application de gestion d'employés avec accès base de données, authentification sécurisée par sessions, et évolution vers une architecture MVC. Des améliorations personnelles significatives ont été apportées : hub de navigation central, zone d'administration CRUD complète et menus Bootstrap.

Technologies Utilisées

  • PHP 8.x
  • MySQL / MariaDB
  • PDO (PHP Data Objects) avec requêtes préparées
  • Bootstrap 4.3.1
  • HTML5 / CSS3
  • Apache via XAMPP / WAMP
  • Doxygen (génération de documentation)
  • Git (gestion de versions)

Compétences Acquises

  • Accès à une base de données relationnelle depuis PHP via PDO : connexion, requêtes SELECT/INSERT/UPDATE/DELETE avec paramètres nommés
  • Mise en place d'un système d'authentification complet avec sessions PHP, hachage bcrypt (password_hash / password_verify) et protection de pages par vérification de session
  • Conception et implémentation d'un CRUD multi-entités (employés, services, administrateurs) avec formulaires pré-remplis et pages de confirmation
  • Application du patron de conception MVC avec routage par paramètre URL (?uc= / ?action=) et séparation stricte des couches Modèle, Vue et Contrôleur
  • Documentation technique du code avec la syntaxe Doxygen et génération automatique de la documentation en HTML et PDF
  • Sécurisation des données : requêtes préparées systématiques, htmlspecialchars() contre les failles XSS, validation côté serveur avec isset() / is_numeric() / strlen()
Logo OCS Inventory
OCS Inventory NG (Open Computers and Software Inventory) est une solution open source de gestion d'inventaire automatisé du parc informatique. Ce projet, réalisé en binôme, consiste à déployer un serveur OCS sur Debian 13, à y connecter des clients Windows et Android via des agents, à étendre ses fonctionnalités par des plugins (services Windows, processus actifs, imprimantes réseau), à mettre en œuvre le télédéploiement de logiciels (Firefox MSI) et à intégrer CVE Search pour la surveillance des vulnérabilités connues.

Technologies Utilisées

  • Linux Debian 13 (serveur OCS)
  • Apache2 (serveur web)
  • MariaDB 12.1 (base de données ocsweb)
  • PHP 8 avec extensions (mbstring, soap, mysql, curl, zip, gd)
  • Perl et modules CPAN (libapache2-mod-perl2, SOAP::Lite, Archive::Zip, Net::IP...)
  • OCS Inventory NG Server 2.12.1
  • Agent OCS Windows 2.11.0.1
  • PowerShell (scripting de déploiement automatique)
  • MongoDB 8.0 + CVE Search (surveillance des vulnérabilités)
  • Git (clonage des plugins et de CVE Search)
  • Python 3 avec environnement virtuel (venv) pour CVE Search

Compétences Acquises

  • Déploiement complet d'une pile LAMP (Linux, Apache, MariaDB, PHP) sur Debian 13 avec installation et compilation des dépendances Perl via APT et CPAN
  • Configuration de la base de données MariaDB dédiée (ocsweb) avec création d'un utilisateur aux privilèges restreints et sécurisation via mysql_secure_installation
  • Installation et configuration du serveur OCS Inventory NG 2.12.1 depuis les sources GitHub, paramétrage des fichiers de configuration Apache et PHP pour lier OCS à sa base de données
  • Connexion et remontée d'inventaire d'un client Windows 11 et d'un client Android via l'agent OCS, avec vérification dans le tableau de bord
  • Analyse critique d'une procédure d'installation au regard des bonnes pratiques de sécurité (gestion des permissions, HTTPS, mots de passe en dur, traçabilité des versions)
  • Déploiement automatique de l'agent OCS sur un poste Windows via un script PowerShell (install-service.ps1) sans recours à l'Active Directory
  • Installation et activation de trois plugins OCS via GitHub (services Windows, processus en cours, imprimantes réseau) et télédéploiement d'un logiciel MSI (Firefox) sur les postes clients
  • Mise en place de CVE Search avec MongoDB pour la surveillance des vulnérabilités connues du parc, dans un environnement Python virtuel isolé
Logo Serveur LEMP & WordPress
Mise en place d'un serveur virtualisé Debian 13 accueillant une infrastructure LEMP complète et sécurisée pour héberger une instance du CMS WordPress. Le projet intègre une démarche de sécurisation renforcée (WAF, lutte contre le brute-force, détection de scans de ports) et une politique de sauvegarde automatisée.

Technologies Utilisées

  • Linux Debian 13
  • Nginx 1.26.1 (Source)
  • MariaDB 12.1
  • PHP 8.4 & PHP-FPM
  • Fail2Ban
  • IPTables
  • Portsentry
  • WPScan & WP-CLI
  • Sucuri WAF
  • Nikto
  • Gobuster
  • Nmap
  • Rsync & Crontab

Compétences Acquises

  • Compilation, configuration et optimisation d'un serveur web non-bloquant Nginx avec support PHP-FPM
  • Configuration et sécurisation d'un SGBDR MariaDB avec gestion stricte des privilèges et création de bases de données dédiées
  • Mise en œuvre d'une sécurité réseau et applicative multicouche : filtrage de paquets (IPTables), bannissement sur analyse de logs (Fail2Ban) et détection active de reconnaissance (Portsentry)
  • Réalisation d'audits de vulnérabilités et scans de sécurité automatisés via WPScan, Nikto, Nmap et Gobuster
  • Planification et automatisation de sauvegardes système et de bases de données à l'aide de Rsync, mysqldump et Crontab
Logo Serveur CMS Hugo
Déploiement et configuration d'un serveur Debian 13 hébergeant le générateur de sites statiques Hugo. Ce projet consistait à analyser de manière comparative les bénéfices des architectures statiques (Jekyll, Eleventy, Gatsby) par rapport aux besoins de performance et de volume d'une entreprise, puis à initialiser et personnaliser un site de démonstration web.

Technologies Utilisées

  • Linux Debian 13
  • Hugo Extended Edition v0.131.0
  • Git & Git Submodules
  • Thème Ananke
  • Markdown

Compétences Acquises

  • Analyse comparative critique et justification technique de l'adoption d'un CMS statique (vitesse de chargement, maintenance réduite, sécurité) face à des solutions concurrentes
  • Initialisation, configuration globale (hugo.toml) et gestion de l'arborescence de fichiers d'un site statique
  • Gestion des dépendances d'affichage et isolation des composants graphiques via l'intégration de sous-modules Git externes
  • Création et gestion de contenu web dynamique via le langage de balisage léger Markdown
Logo Adopt'Speciality - Gestion d'Interventions
Une application web métier centralisée de gestion de parc matériel et de suivi des interventions techniques sur le terrain, développée pour une entreprise spécialisée dans le café professionnel. Elle remplace une gestion obsolète sur carnets papier et fichiers Excel en apportant une traçabilité complète par client, des alertes automatiques et une gestion numérique des stocks.

Technologies Utilisées

  • PHP 8.4
  • Symfony 8.0
  • Doctrine ORM 3.6
  • MySQL 8.0
  • Symfony Security (8 rôles)
  • Symfony Translation
  • UX Turbo & Stimulus
  • DomPDF
  • Canvas HTML5 API
  • PHPDoctum
  • Git & GitHub

Compétences Acquises

  • Conception d'un modèle relationnel complexe sous Doctrine (16 entités) gérant des cycles de vie (Lifecycle Callbacks) et des relations d'héritage d'équipements métiers
  • Implémentation d'une sécurité applicative granulaire avec cloisonnement strict selon une hiérarchie de 8 rôles et invalidation du cache du navigateur (NoCacheSubscriber)
  • Développement de logiques métiers calculées : détection automatique de filtres arrivant à expiration sous une semaine et déduction automatisée des stocks
  • Intégration d'une interface fluide via JavaScript natif pour le filtrage dynamique et l'API Canvas pour la capture de signatures tactiles persistées en Base64
  • Création d'une commande console Symfony personnalisée (app:backup-db) pour l'automatisation des sauvegardes logicielles de la base de données
Logo Bucket-List - Notes & Checklists
Application web open-source de gestion personnelle de notes et de listes de tâches (checklists) dont l'interface utilisateur s'inspire directement de l'ergonomie et du minimalisme de l'outil Notion, incluant une barre de navigation latérale permanente affichant les contenus en temps réel.

Technologies Utilisées

  • PHP 8.4
  • Symfony 8 (Flex)
  • Doctrine ORM 3.x
  • MySQL 8.x
  • Twig
  • Symfony Asset Mapper
  • UX Turbo
  • JavaScript (Vanilla)
  • Symfony Form (CollectionType)
  • Symfony Translation

Compétences Acquises

  • Maîtrise de l'architecture MVC et du patron de conception Repository à travers des requêtes DQL complexes pour concevoir un moteur de recherche globale multi-entités
  • Gestion de formulaires imbriqués de haute complexité en associant un CollectionType Symfony avec des mécanismes de prototypes HTML5 et du JavaScript natif
  • Implémentation de patrons de suppression logicielle sécurisée (Soft Delete / Archivage) pour masquer des contenus de la vue principale vers un espace d'archive
  • Gestion de l'internationalisation (FR/EN) via un EventSubscriber (LocaleSubscriber) interceptant les requêtes HTTP, couplée à une gestion de thèmes persistée en base
  • Résolution de conflits de bas niveau liés à l'ORM : contraintes par expressions régulières sur les routes (requirements) et contournement de mots-clés réservés SQL