nebino

Compétences

Chaque compétence est reliée à ce que j’en ai fait : les liens mènent aux projets et aux articles correspondants.

Langages

En projet
C et C++ (compilateur, shell), Java (Spring Boot et Quarkus : gestion de stock, plateforme de documents), Python (tableau de bord), JavaScript et React (trois projets), SmartPy (dApp Tezos)
Étudiés en détail
OCaml, Haskell, Lisp (SBCL) : higher-order functions, lazy evaluation, récursion. Assembleur x86-64 (syntaxe AT&T, ABI System V). Ada.
Notions
Rust

Fondations

Compilation
Langages formels, grammaires LL(1) et LR, ensembles First et Follow, liveness analysis, SSA, register allocation. Mise en pratique : compilateur vers C, article reference counting.
Mathématiques
Théorie des graphes, probabilités et statistiques
Machine learning
PCA, clustering, apprentissage supervisé, réseaux de neurones
Design patterns
Visitor, Singleton, Builder, Chain of Responsibility, Observer, Adapter, CRTP

Infrastructure et réseaux

Systèmes
Linux (Debian), administration en ligne de commande, SSH. Mise en pratique : serveur auto-hébergé, article hardening Debian.
Conteneurs et CI/CD
Docker, Docker Compose, Git, GitLab CI, GitHub Actions (par exemple dans le tableau de bord)
Données et monitoring
PostgreSQL, Prometheus, Grafana
Réseaux
GNS3, Wireshark, certificats TLS avec certbot, reverse tunnels SSH

Sécurité

Applicative
Authentification JWT, 2FA par TOTP, RBAC, chiffrement AES-GCM et RSA. Mise en pratique : plateforme de documents, article TOTP.
Web
Path traversal et durcissement d’un serveur : article path traversal.
Pratique
CTF (stéganographie, privilege escalation), OSINT