Services¶
Nuevolia accompagne les DSI dans la conception, la construction et l'exploitation de leurs plateformes de services. Chaque service est composé de produits concrets, activables selon vos besoins.
Architecture¶
Concevoir des systèmes alignés sur les enjeux métier, fiables, sécurisés et évolutifs. De l'audit de l'existant à la gouvernance continue, en passant par la modélisation et le choix des topologies.
Audit et cadrage¶
Analyse de l'existant et définition de la cible architecturale. Identification des parties prenantes (matrice pouvoir-intérêt, RACI), recueil des exigences fonctionnelles et non-fonctionnelles (CDC, SFD, STD), priorisation MoSCoW, matrices de traçabilité. Cadrage TOGAF ADM, rédaction d'ADR, trade-off analysis documenté.
Conception de systèmes distribués¶
Choix de topologie selon le contexte : monolithe modulaire, microservices (prérequis CI/CD, monitoring, taille d'équipe, couplage domaine), event-driven, serverless. Décomposition par capacité métier ou sous-domaine (DDD). Gestion des anti-patterns : monolithe distribué, couplage temporel, explosion de services.
Modélisation¶
Diagrammes C4 (contexte, conteneurs, composants, code). Modélisation des acteurs et interactions (cas d'usage Cockburn), processus métier (BPMN), données et domaine (bounded contexts, agrégats), comportements et états (machines d'états, diagrammes de séquence), flux de données. Passage du modèle au code.
Communication et persistance¶
Architecture synchrone vs asynchrone, contrats d'API et gateway, patterns saga (orchestration, chorégraphie) et outbox, persistance distribuée (database-per-service), CQRS et event sourcing. Concurrence : exclusion mutuelle, consensus distribué (Paxos, Raft), horloges de Lamport et vectorielles.
Fiabilité et résilience¶
Circuit breaker (états, seuils, half-open), retry avec backoff exponentiel et jitter, health checks (liveness, readiness, startup). Définition de SLI/SLO/SLA, error budgets et burn rates, alerting multi-fenêtre (Prometheus). 4 Golden Signals. Chaos engineering : injection de pannes, game days.
Sécurisation par design¶
Analyse de risques EBIOS RM (ateliers 1-5, cartographie des menaces) et modélisation STRIDE par composant. Architecture Zero Trust (never trust, always verify, least privilege). Defense in depth : segmentation réseau, WAF, chiffrement at rest et in transit. mTLS inter-services. Sécurité de la supply chain logicielle (SBOM, signatures, provenance).
Gouvernance et validation¶
Fitness functions automatisées (tests d'architecture en CI), revues ATAM (scénarios qualité, utilité-arbre), gestion structurée de la dette technique (quadrant Fowler, backlog dédié). Architecture repository centralisé (ADR, diagrammes, radar techno). Gouvernance continue et architecture committees. Cas d'étude : plateforme e-commerce SaaS, plateforme d'automatisation.
Développement¶
Construire, tester et livrer du code de qualité avec les outils et méthodes modernes. De l'environnement développeur à la livraison continue, en passant par le design, les tests et la sécurité du code.
Environnement développeur¶
Mise en place de postes de développement standardisés : Dev Containers (configuration, extensions, volumes), intégration Claude Code dans le workflow (installation multi-OS, plugins, PROMPT.md, automatisation), outillage par équipe. Configuration VSCode, Docker Sandboxes, raccourcis terminal.
Conception et design de code¶
Principes SOLID appliqués (exemples violation/correction en Python), design patterns (création, structure, comportement), architecture applicative (hexagonale, clean architecture, ports & adapters). API design (REST, gRPC, GraphQL, contrats OpenAPI). Modélisation objet et domaine.
Qualité et sécurité du code¶
Chaîne de qualité complète : linters et formatters par langage, SonarQube (quality gates, profils), scan de dépendances (Dependabot, Renovate), SAST avec Semgrep (règles custom), scan d'images conteneur (Trivy, Grype). OWASP Top 10, gestion des secrets (Vault, SOPS), supply chain (SBOM, Sigstore).
Stratégie de tests¶
Pyramide des tests (unitaires, intégration, E2E, contrat), TDD (red-green-refactor), BDD (Gherkin, living documentation), ATDD, property-based testing (hypothèses, shrinking). Couverture et mutation testing. Framework FIRST. Anti-patterns : ice cream cone, testing trophy mal calibré.
Versionnement et collaboration¶
Git workflows (trunk-based, GitFlow, GitHub Flow), hooks pre-commit (linting, secrets, format), stratégies de merge (rebase, squash, merge commit), merge requests (templates, review checklist). Signature et confiance (GPG, SSH signing). Code review, pair et mob programming, conventions d'équipe, inner source.
Pipelines CI/CD¶
Conception de pipelines (Gitea Actions, GitLab CI) : build, test, scan, deploy. Stratégies de déploiement (blue-green, canary, rolling, recreate). Release management (semantic versioning, changelogs). Gestion des environnements (dev, staging, prod). Feature flags (kill switches, progressive rollout).
Infrastructure as Code¶
Packer : builders multi-cloud (GCP, VMware), provisioners Ansible, templates HCL2, validation et pipelines de build d'images. Ansible : rôles, collections, sécurité (Vault), conventions, inventaire dynamique. OpenTofu/Terraform : state management, modules réutilisables, multi-cloud, intégration CI.
Conteneurisation et orchestration¶
Podman rootless (configuration noyau, registres privés, services systemd), Docker, Kubernetes (K3s standalone, K8s). Build d'images multi-OS (Linux Rocky/Debian, Windows multi-edition). Sécurité des conteneurs : scan, politique de signature, hardening runtime.
Formation langages¶
Go : frameworks (Gin, Echo), tests (testing, testify), build (modules, cross-compilation), écosystème. Python : frameworks, packaging, tests (pytest), bonnes pratiques. Rust, Java, JavaScript/TypeScript, C/C++, Perl : histoire, frameworks, exemples, tests, construction, écosystème. Contenu adapté au niveau de chaque équipe.
Systèmes embarqués et IoT¶
Plateformes : ESP32, Arduino, Raspberry Pi, GrapheneOS. Capteurs et actionneurs, protocoles de communication (MQTT), architectures edge et fog computing. Sécurité et hardening IoT. Intégration avec les pipelines CI/CD et l'observabilité.
Documentation technique¶
Fondamentaux de la documentation (audiences, formats), docstrings et commentaires (conventions par langage), ADR (templates, workflow de décision), diagrammes (Mermaid, PlantUML, C4), documentation d'API (OpenAPI, AsyncAPI). Bonnes pratiques : docs-as-code, revue de documentation en MR.
Exploitation¶
Maintenir en condition opérationnelle, superviser et sécuriser les plateformes de production. Des processus ITIL à l'automatisation complète, en passant par le multi-cloud et la gestion des services IT internes.
Gestion des changements¶
Processus ITIL v4 : taxonomie des risques, classification des changements (standard, normal, urgence), fenêtres de maintenance, exécution et stratégies de rollback. Automatisation des approbations et des déploiements. Mesure de la performance (lead time, taux d'échec, MTTR). Cas avancés : changements zero-downtime, canary en production.
Gestion des incidents¶
Détection et escalade (seuils, routing), réponse structurée à incident (rôles : incident commander, scribe, communication lead), résolution guidée par runbooks. Post-mortem blameless (timeline, root cause, action items). Automatisation : auto-remédiation, ChatOps, PagerDuty/Opsgenie.
Supervision et alerting¶
Monitoring vs observabilité : 3 piliers (métriques, logs, traces). Méthodes USE et RED, 4 Golden Signals. Définition de SLO/SLI/SLA opérationnels. Alerting intelligent (seuils, anomalies, burn rates). Dashboards (Grafana). Stack de référence : Prometheus, Loki, Tempo, Grafana. Logs structurés et corrélation de traces.
Automatisation d'infrastructure¶
Principes IaC (déclaratif vs impératif, idempotence). Provisioning (OpenTofu, CloudFormation), configuration management (Ansible), drift detection et remédiation automatique. Testing d'infrastructure (Molecule, Terratest, InSpec). Patterns et modules réutilisables. Cas avancés : GitOps, self-service portals.
Services cloud multi-provider¶
Couverture complète de 6 providers : GCP (Compute Engine, GKE, Cloud Run, Cloud SQL), Azure (VMs, AKS, App Service, CosmosDB), AWS (EC2, EKS, Lambda, RDS), OVHcloud, OpenStack, VMware. Pour chaque provider : compute, stockage, bases de données, réseau et sécurité, observabilité, DevOps et outils, souveraineté. Fondamentaux multi-cloud : modèles IaaS/PaaS/CaaS/FaaS/SaaS, responsabilité partagée, FinOps, conformité.
Sécurisation d'infrastructure¶
Hardening système : benchmarks CIS, configuration SSH, pare-feu (nftables, firewalld), outils d'audit (Lynis, OpenSCAP). Gestion des secrets (HashiCorp Vault, SOPS, sealed secrets). Patching automatisé et politique de mise à jour. Conformité (PCI-DSS, ISO 27001, HDS). Sécurité réseau : segmentation, micro-segmentation, IDS/IPS.
Planification de capacité et FinOps¶
Établissement de baselines (métriques de référence, profils de charge), dimensionnement (CPU, mémoire, stockage, réseau), prévisions (modèles de croissance, saisonnalité). Stratégies de scaling (horizontal, vertical, auto-scaling). FinOps : allocation des coûts, reserved instances, spot/preemptible, rightsizing, showback/chargeback.
Services IT internes¶
Engineering : SCM (Gitea, GitLab), registres de packages, pipelines CI/CD managés, fonctions serverless, plateformes qualité. Communication : messagerie (relay SMTP, anti-spam, DKIM/SPF/DMARC), calendrier, outils collaboratifs. Workplace : VDI Linux et Windows (XFCE/xRDP, RDP, Guacamole), portails web, MDM. IAM : gestion des identités, fédération, SSO, provisioning.
Collaboration en exploitation¶
Organisation du on-call (rotations, escalade, compensation), culture blameless (post-mortem, psychological safety), toil management (identification, budget, automatisation). Communication opérationnelle (status pages, war rooms, stakeholder updates). Pratiques SRE : error budgets, reliability reviews, production readiness.
Documentation opérationnelle¶
Runbooks structurés (templates, tests automatisés, versionnement), procédures d'exploitation (MEP, rollback, disaster recovery), documentation d'architecture (schémas réseau, matrices de flux). Wiki technique (MkDocs, Confluence). Automatisation de la documentation : génération depuis l'infra, docs-as-code.