Skip to content
mimi

Contributeur senior

Sonrysa

On-site Senior Today

About the role

Responsabilités

En tant que contributeur senior, en renfort d'une équipe expérimentée, vous :

  • Réduisez la dette technique (respect strict de la Clean Architecture, élimination des any, refactoring de use cases legacy)
  • Optimisez les performances (requêtes Prisma/SQL Server, pipeline RabbitMQ, projections CQRS)
  • Contribuez au développement backend de nouvelles fonctionnalités (NestJS, Prisma, événements)
  • Maintenez et faites évoluer les intégrations SI (API Gateway: Dungeon/IAM, Medlink, CTIME/Chronotime) et le pipeline event-driven (RabbitMQ → Change Detector → projections)
  • Participez activement à la transition DevOps :
    • Préparation et exécution de la migration vers Kubernetes (manifests, Helm, probes, HPA, RBAC)
    • Automatisation du provisionnement VMware (Terraform / Ansible / AWX)
    • Durcissement des pipelines GitLab CI/CD (templates, cache, parallélisation, scans sécurité, stratégie de tags)
    • Observabilité (Elastic APM, Elasticsearch/Kibana, Prometheus, alerting)
  • Améliorez les pratiques de tests et de livraison (Jest, pipelines, environnements éphémères)
  • Collaborez étroitement avec les développeurs, le tech lead et les équipes métier
  • Une contribution ponctuelle sur le frontend Angular est possible mais ne constitue pas le cœur du rôle. La mission privilégie un profil backend + DevOps à un profil purement fullstack.

Environnement technique

Stack applicative

  • Backend : Node.js 18 / NestJS / TypeScript strict (pas de Java)
  • ORM : Prisma (multi-bases : Planet + Totem)
  • Base de données : SQL Server (schéma event-sourcing : Projection, Planning_Event, Configuration...) + PostgreSQL sur certains périmètres
  • Messaging : RabbitMQ (pipeline Change Detector, DLX, event-driven CQRS)
  • Temps réel : Server-Sent Events (SSE), Socket.io
  • Moteur d'optimisation : algorithmes C++ propriétaires (containers Docker dédiés algo-opti, communication via RabbitMQ)
  • API externes : API Gateway— Dungeon (IAM/SSO), Medlink (TSA, clients, collaborateurs), CTIME/Chronotime (horaires, absences)
  • Frontends (secondaires pour ce rôle) : Angular 14 (Web, NgRx, Material) + Angular 19+ (Mobilité, standalone, signals)

Architecture

  • Clean Architecture stricte (4 couches : Controllers / Use Cases / Domain / Infrastructure)
  • Event Sourcing + CQRS (projections, checkpoints, replay)
  • Monorepo pnpm (3 apps : API, Web, Mobilité — packages partagés @planet/*)
  • Architecture distribuée, plusieurs services derrière API Gateway

Infrastructure, DevOps & Observabilité

  • Actuel : Docker sur VMs (on-premise), orchestration via Ansible / AWX, images publiées dans registry GitLab
  • Cible : Kubernetes (POC en cours), provisionnement VMware automatisé (Terraform / vSphere)
  • CI/CD : GitLab CI/CD — pipelines multi-stages, images Docker dédiées (chrome-pnpm, node-prisma, ubuntu-cpp-rabbitmq...), stratégie de tags, jobs de scan
  • Réseau : environnements segmentés (DEV / INT / PREPROD / PROD), proxys sortants, accès SSH bastion, certificats internes, DNS interne
  • Observabilité : Elastic APM + Elasticsearch/Kibana (logs structurés, correlation IDs), Prometheus (métriques), Grafana

Qualité

  • Tests : Jest (backend), Karma/Jasmine (frontends), Playwright (E2E)
  • Coverage : ≥ 60 % sur use cases et entités
  • OpenAPI/Swagger pour génération de SDK clients
  • GitFlow + conventions Angular commit

Profil recherché

Compétences techniques indispensables

  • Excellente maîtrise de TypeScript (typage strict, generics, zéro any) — pas de profil Java cherchant à transitionner
  • Solide expérience NestJS (modules, DI, pipes, guards, interceptors, decorators, tests Jest)
  • Maîtrise d'un ORM typé — idéalement Prisma (schéma, migrations, $transaction, performance)
  • Expérience confirmée SQL Server et optimisation de requêtes (plans d'exécution, indexation, schémas event-sourcing)
  • Architecture event-driven : RabbitMQ (exchanges, DLX, retry, idempotence), patterns CQRS et event sourcing
  • Architectures distribuées et intégrations SI (API Gateway, OAuth/SSO, webhooks, batch)
  • Systèmes à forte volumétrie et contraintes temps réel (SSE, streams)
  • Docker (images, compose, multi-stage builds, debugging runtime)
  • GitLab CI/CD avancé (templates, includes, rules:, artefacts, cache, parallélisation, needs: DAG)
  • Maîtrise du debugging distribué (Elasticsearch/Kibana, correlation IDs, traces APM)

Compétences DevOps & infrastructure très valorisées (fortement différenciantes)

Ces compétences sont prioritaires sur la maîtrise frontend, compte tenu de la transition infra en cours.

  • Kubernetes : manifests, Helm, probes, HPA, RBAC, NetworkPolicies, Ingress, secrets management, ArgoCD ou GitOps
  • Provisionnement VMware : Terraform (provider vSphere), templates, cloud-init, packer pour les images de base
  • Automatisation infrastructure : Ansible / AWX (playbooks, rôles, inventaires dynamiques, idempotence)
  • Réseau : segmentation VLAN, pare-feu, proxys sortants, reverse-proxy (Nginx / Traefik), certificats X.509, DNS interne, troubleshooting L4/L7 (tcpdump, curl -v, dig, nc)
  • Linux administration (systemd, journald, tuning, sécurité)
  • Secrets management (Vault, secrets GitLab, sealed-secrets)
  • Observabilité avancée : Prometheus (exporters, alerting rules), Grafana (dashboards), Elastic (ingest pipelines, ILM)
  • Sécurité applicative : scans SAST/DAST, dépendances (npm audit, Renovate/Dependabot), durcissement images Docker
  • Industrialisation : stratégies de tags/images, environnements éphémères, promotion inter-envs, rollbacks

Compétences senior attendues

  • Capacité à reprendre rapidement un existant complexe (monorepo 3 apps, intégrations multiples, pipeline event-driven, infra on-prem)
  • Regard critique constructif sur qualité de code, choix techniques et infrastructure
  • Expérience concrète en gestion de dette technique (refactoring progressif, migrations infra)
  • Approche pragmatique : prioriser impact vs effort, livrer par incréments sûrs, éviter les big-bangs
  • Forte autonomie tout en s'intégrant dans une équipe
  • Excellent niveau en debugging applicatif ET infrastructure (logs, traces, kubectl, docker, métriques, réseau)
  • Résistance au stress (environnement production critique, exploitation)

Skills

AnsibleAngularAPI GatewayAPMArgoCDAWXC++Change DetectorClean ArchitectureCQRSDockerElastic APMElasticsearchEvent SourcingGitLab CI/CDGrafanaHelmIAMJestKubernetesLinuxMaterialMedlinkMonorepoNestJSNginxNode.jsNPMOAuthOpenAPIPlaywrightPrometheusPrismaRabbitMQRBACRenovateSQL ServerSSOSwaggerTerraformTraefikTypeScriptVaultVMwarevSphereWebhooks

Don't send a generic resume

Paste this job description into Mimi and get a resume tailored to exactly what the hiring team is looking for.

Get started free