Candidat alternance DevSecOps · Disponible septembre 2026 · Paris
Je construis des applications et j'intègre la sécurité à chaque étape, du premier commit jusqu'au déploiement en production. Pas en post-mortem.
Je cherche une équipe DevSecOps, Cloud Security ou Sécurité Applicative en Île-de-France pour une alternance de 12 à 24 mois, à partir de septembre 2026. Rythme Oteria : 3 semaines entreprise / 1 semaine école.
Développeur Full-Stack depuis 2022.
Spécialisé en DevSecOps depuis 2025.
Je construis des applications depuis 4 ans pour des startups et PME en conditions réelles. Pas en sandbox, en production.
En livrant des applications pour de vrais clients, j'ai vécu ce que ça coûte d'ignorer la sécurité au moment où ça compte le moins, et de la payer quand ça coûte le plus. Cette expérience m'a convaincu de me spécialiser à l'intersection des deux.
Ce qui me différencie :
- Je comprends le code que je sécurise
- Je pense attaquant avant de penser développeur
- Je livre : 15+ projets, 5★ Malt, Supermalter (top 5% freelances)
- J'ai travaillé avec des clients réels en prod. Je sais ce que coûte une erreur.
Mini Secrets Manager
API de gestion de secrets chiffrés, inspirée de HashiCorp Vault.
Pourquoi réimplémenter plutôt que déployer Vault ? Parce que comprendre les primitives (AES-256-GCM, rotation de clés, audit logs) avant d'utiliser l'abstraction, c'est la différence entre utiliser un outil et le comprendre.
Voir le repo GitHub →⚠ CVE stoppée avant la prod
Lors du premier run, Snyk a détecté une Race Condition critique dans effect@3.18.4 — dépendance transitive de Prisma. Le pipeline a bloqué automatiquement. Zéro ligne vulnérable en production.
- →Identification dans le rapport Snyk
- →Mise à jour Prisma vers effect@3.20.0
- →Vérification npm ls effect
- →Pipeline repassé au vert
Pourquoi Snyk plutôt que Dependabot ? Snyk remonte les CVE sur les dépendances transitives avec un scoring CVSS contextualisé. Dependabot notifie. Snyk bloque. Pour la sécurité en CI, la différence est là.
AES-256-GCM
Chiffrement natif Node.js. Auth tag intégré, détecte toute altération du ciphertext. Tamper-evident. Pourquoi GCM et pas CBC : CBC chiffre mais n'authentifie pas.
Shift-Left
6 outils de sécurité. Chacun bloque le pipeline sur finding critique. Pas de || true. Pas de faux sentiment de sécurité.
AWS EC2 + ECR
Registry privé avec scan natif intégré. Déploiement staging + prod automatisé. Secrets injectés via GitHub Secrets. Jamais dans le code.
$ cat security-mindset.md
Comment je pense sécurité
5 principes concrets qui guident chaque ligne de code et chaque configuration d'infrastructure.
Ne jamais révéler l'existence
Ownership violation → 404, pas 403. Un attaquant ne doit pas pouvoir confirmer ce qui existe sur le système.
Shift-Left
La sécurité dès le premier commit, pas en post-prod. Bloquer tôt coûte moins que corriger tard.
Moindre privilège
IAM, RBAC, JWT : chaque acteur a uniquement ce dont il a besoin. Pas un droit de plus.
Defense in depth
Chiffrement + audit logs + monitoring = 3 couches. Une seule ne suffit pas. Si une couche tombe, les autres tiennent.
Fail loudly
Un pipeline qui ignore les erreurs est pire que pas de pipeline du tout. || true est une décision de sécurité.
$ cat skills.yml
Ce que je maîtrise
et où je l'ai appliqué
Sécurité Applicative
- SAST · DAST · SCA : utilisés en production (Mini Secrets Manager)
- Semgrep · Snyk · Trivy · OWASP ZAP : pipeline documenté sur GitHub
- TryHackMe : top 9%
DevSecOps & CI/CD
- GitHub Actions · Docker · Pipelines Shift-Left
- Secrets scanning · Container scanning · AWS ECR
Cloud & Infrastructure
- AWS (EC2, ECR, IAM, VPC, NACLs)
- Linux · Nginx · Docker Compose
- Prometheus · Grafana · Sentry
$ ls ./projets
Autres projets
PhishGuard
Extension Chrome de détection phishing Zero-Trust pour Gmail. 7 signaux analysés en parallèle avant le clic.
- Architecture async BullMQ : zéro blocage utilisateur
- Zero-Trust : aucun contenu de mail stocké
- OAuth Google + API Keys hashées + quota Redis atomique
- Pipeline Shift-Left complet
T2C — Ticket d'Caisse
Coffre-fort numérique de tickets de caisse.
- 138 tests automatisés (Vitest) : couverture complète
- TypeScript strict mode : zéro any
- CI/CD GitHub Actions + Husky pre-commit
- Validation runtime Zod sur toutes les entrées API
SoHoft
Solution SaaS de gestion d'inventaire mobilier.
- Architecture RBAC multi-tenant : 5 profils, droits granulaires
- SSO Microsoft Entra ID (Azure AD) : authentification centralisée
- CI/CD Docker multi-stages
MH Dev Solutions
15+ projets web sécurisés pour startups et PME.
- Pipelines CI/CD GitHub Actions : build, tests, déploiement
- Infrastructure AWS : IAM, VPC, NACLs, scanning Trivy
- 5★ Malt · Supermalter (top 5% freelances) · 85% rétention client
$ cat ./avis-clients.log
Ce que mes clients disent
“Autonome, il anticipe les galères avant qu'elles arrivent. Sa vision nous a fait gagner du temps ET de l'argent.”
Deuxième mission avec Hadi. Il comprend vite le contexte, challenge les approches et propose des architectures solides. Plus un partenaire qu'un presta.
Samy
ALD 15
“Je referais appel à Hadi sans hésiter.”
Hadi a piloté le développement d'un SaaS complet. Excellente communication, respect du planning, ateliers UX et démos livrables irréprochables.
Nicolas
CTO, SoHoft
“Excellent travail, Hadi est très pro. Je le recommande fortement.”
Aurèle
CEO T2C
$ git log --oneline --parcours
Parcours
2020
Licence Maths & Informatique, UPEC Créteil
Les bases algorithmiques et mathématiques.
2022
MH Dev Solutions, Freelance Full-Stack
15+ projets · clients réels · production réelle. 5★ Malt · Supermalter (top 5% freelances).
2024
La Capsule, Paris
Concepteur-Développeur d'Applications Web & Mobile
Certification Niv. 6
Mars 2026
Jedha, Paris
Administrateur d'Infrastructures Sécurisées
Certification Niv. 6 · En cours
Septembre 2026
Oteria Cyber School, Paris
Master Cybersécurité · Spécialisation DevSecOps
Admis · Démarrage septembre 2026 En recherche d'entreprise d'alternance dès maintenant
$ ping hadi.mouter
Contact
Disponible pour une alternance DevSecOps à partir de septembre 2026.
Paris · Remote friendly.
Temps de réponse moyen : 24h
Tu préfères un échange direct ?
→ Réserver un créneau de 15 min