🚀 Preuves "SAE 3.01 – HEM" + "Stage Unissia – ARCAL" + Ressources R3.05, R3.06, R4.01, R4.08

Titre SAE : SAE 3.01 – Application web HEM (CRA Bretagne)

Stage : Unissia – Projet ARCAL

Ressources associées : R3.05 (Programmation Système), R3.06 (Architecture des réseaux), R4.01 (Architecture logicielle), R4.08 (Virtualisation)


▶︎ Les apprentissages critiques

  1. AC23.01 | Déployer des services dans une architecture réseau
  2. AC23.02 | Concevoir et développer des applications communicantes
  3. AC23.03 | Utiliser des serveurs et des services réseaux virtualisés

▶︎ Analyse et réflexivité sur vos actions

<aside> 💡 Quelles ont été vos démarches, prises de décisions, degré d'implication et d'autonomie ?

</aside>

Démarches, décisions, implication et autonomie

Cette année, ma progression sur la compétence Administrer s'est construite sur quatre axes complémentaires : le déploiement de services réels (SAE HEM, stage ARCAL), la programmation système (R3.05), la configuration réseau et sécurité (R3.06), et la virtualisation par conteneurs Docker (R4.08).

SAE HEM & Stage ARCAL — Déploiement de services

Dans HEM, j'ai participé au déploiement complet de l'application : base de données MySQL lancée via Docker Compose, variables d'environnement pour la configuration sensible, guide d'installation reproductible avec migration Prisma et service mail Sendgrid. Chez Unissia, le stage m'a immergé dans une architecture de déploiement professionnelle sur Azure Container Apps avec pipelines CI/CD GitHub Actions, chaque service NestJS est conteneurisé, versionné et déployé automatiquement à la validation du code. J'ai également configuré l'accès aux packages privés GitHub (@unissia/arcal-ui-lib) via tokens dans .npmrc.

R3.05 — Programmation Système

En R3.05, j'ai travaillé sur deux axes. D'abord l'exploration du système Linux : navigation dans /proc pour analyser les ressources (CPU, RAM, périphériques, version du noyau), gestion des processus (PID, état, commandes ps/top/htop/pstree), et création de processus Bash avec fork/wait (script findFiles parcourant récursivement un système de fichiers en créant un processus fils par répertoire). Ensuite, la programmation concurrente en Java : simulation d'un restaurant multithreadé avec Thread, synchronized, wait()/notifyAll() et LinkedList comme file d'attente producteur/consommateur, avec ShutdownHook pour une fermeture propre. J'ai aussi développé RenduTD, un client réseau TCP en Java utilisant Socket pour implémenter un protocole de transfert de fichier.

R3.06 — Architecture réseau

En R3.06, j'ai configuré un réseau complet (routage en anneau, serveurs DNS, messagerie SMTP/POP3, pare-feux multi-règles) et déployé un proxy SMTP pour sécuriser les accès aux serveurs mail. Ce travail m'a appris à raisonner en termes de services réseau déployés et de règles de sécurité granulaires par port/protocole/IP source.