Software Engineer (HPC & Cloud)
Job Description
Londres · 1 j/sem on-site + remote / Démarrage mi-juin 2026
Contexte
Notre client — éditeur SaaS international — construit une plateforme de calcul distribué GPU-accelerated sur AWS. L'objectif : exécuter des workloads de calcul intensif sur des GPUs partagés en mode service, à grande échelle.
Le projet est 100 % greenfield. Les choix d'architecture sont posés, mais le code distribué n'est pas encore en production. L'équipe SRE centrale gère l'infrastructure sous-jacente — ce rôle consiste à construire le tooling et la couche opérationnelle au-dessus.
C'est un rôle software engineering en premier lieu — observabilité, tooling, cloud ops — avec une dimension HPC. Pas un poste d'infra.
Ce que tu vas construire
Fondations techniques de l'équipe
• Les pipelines CI/CD et environnements de développement pour l'ensemble de l'équipe engineering dès le premier jour
• Le provisioning et la gestion des instances GPU sur AWS (EC2, EKS, IAM, VPC)
• Les outils de benchmarking GPU et de scheduling des runs de performance sur instances cloud
Observabilité de bout en bout
• L'instrumentation complète des services distribués : distributed tracing de bout en bout avec propagation de contexte dans les messages Apache Pulsar, logs structurés, métriques de performance
• Des dashboards de performance sur l'ensemble du cluster et des outils d'analyse comparative entre versions
• Un framework de validation automatique des outputs GPU versus référence CPU (correction numérique)
Contexte distribué dans lequel tu interviens
L'équipe construit des services worker/consumer sur Apache Pulsar, des pipelines de données entre nœuds CPU, nœuds GPU et stockage haute performance (Lustre/FSx), avec des mécanismes de fault tolerance et back-pressure sur des workloads de calcul intensif. Tu opères et instrumentes cette couche — tu n'en es pas le seul auteur, mais tu dois la comprendre en profondeur.
Environnement technique
Apache Pulsar · AWS (EC2, EKS, IAM, VPC) · Kubernetes · Lustre / FSx for Lustre · Go ou Rust · OpenTelemetry / Jaeger · Prometheus / Grafana · CI/CD
Profil recherché
Ce qu'on cherche vraiment :
• Un ingénieur qui a construit du tooling de production pour des systèmes distribués — observabilité, CI/CD, benchmarking — pas uniquement de la configuration d'infra
• Maîtrise de l'observabilité de bout en bout : distributed tracing (Jaeger, OpenTelemetry), métriques, logs structurés
• Capacité à écrire du code robuste en Rust ou équivalent — ce rôle nécessite du software engineering, pas uniquement de l'IaC
• AWS et Kubernetes en production
• Anglais courant — l'équipe est internationale, basée à Londres
Signaux positifs :
• Expérience messaging distribué — Kafka, Pulsar, RabbitMQ, NATS
• Expérience GPU ou HPC : environnements de calcul intensif, benchmarking, stockage haute performance (Lustre, GPFS)
• RDMA ou transport inter-nœuds haute performance
• Rust (un vrai plus)
• Kubernetes Operator ou controller custom en Go
• Contexte scale-up / produit technique : gaming, fintech, SaaS B2B à grande échelle