Wonderschool
NVIDIA
Ingénieur Principal en Logiciels Systèmes, LPU
À propos du poste
Nous recherchons actuellement un Ingénieur Principal en Logiciels Systèmes pour LPX System Software !
L'équipe LPX System Software de NVIDIA construit le logiciel fondamental qui transforme une architecture de calcul déterministe novatrice en une plateforme sur laquelle les équipes de compilateurs et les opérateurs de centres de données peuvent s'appuyer. Nous déplaçons la complexité du silicium vers le logiciel : les couches d'abstraction matérielle, les bibliothèques système de base, les pilotes et les composants d'exécution par lesquels les charges de travail entrent sur la plateforme. Nous construisons cette pile en Rust. Pour les logiciels système situés à la frontière entre le matériel et tout ce qui se trouve au-dessus, nous considérons la sécurité de la mémoire, la propriété explicite et la stabilité à long terme des API comme la base plutôt que comme l'objectif — le fondement qui nous permet de consacrer notre jugement aux problèmes difficiles plutôt qu'aux classes de bugs qui ne devraient pas exister.
Ce que vous ferez
En tant qu'ingénieur principal de cette pile, définissez la direction technique des surfaces dont vous êtes responsable et façonnez l'architecture globale aux côtés de vos collègues principaux. Concevez la HAL, les interfaces d'exécution et les pipelines de mouvement de données dont dépend le reste de la plateforme ; résolvez les problèmes de fiabilité et de mise en service les plus difficiles ; et augmentez le débit de toute l'organisation en codifiant les abstractions, les modèles et les outils sur lesquels les autres construisent. Vous contribuerez également à définir notre façon d'ingénierer. Nous considérons les agents de codage IA comme une partie essentielle du flux de travail, et nous attendons de nos ingénieurs les plus expérimentés qu'ils soient compétents pour les diriger — concevoir des systèmes lisibles par les humains et les agents, et transformer le jugement durement acquis en levier pour toute l'équipe.
- Façonner l'architecture des couches d'abstraction matérielle et des bibliothèques système de base, et être responsable des contrats API pour les composants que vous dirigez.
- Concevoir et implémenter des pilotes, des runtimes, et des pipelines de mouvement et d'agrégation de données qui exécutent des charges de travail sur du silicium novateur.
- Construire des interfaces d'exécution pour le lancement, la surveillance et la gestion des charges de travail à l'échelle de la production.
- Diriger le triage des échecs de séquencement, d'initialisation et d'exécution inter-composants les plus difficiles, et produire des analyses de cause profonde qui changent la façon dont le système est construit.
- Diriger la mise en service de nouvelles plateformes et le NPI pour de nouvelles cartes et de nouveaux siliciums, en étroite collaboration avec l'ingénierie matérielle, les équipes de compilateurs et les opérations des centres de données.
- Multiplier l'équipe — établir les pratiques d'ingénierie assistée par agent, les abstractions réutilisables, les diagnostics et la documentation qui permettent à chacun d'avancer plus rapidement sans déstabiliser la plateforme.
- Communiquer clairement les compromis d'architecture et de conception, par écrit et par diagrammes, à des publics allant des ingénieurs individuels au personnel exécutif.
Ce que nous devons voir
- Master en informatique, génie informatique, génie électrique ou domaine STEM connexe, ou expérience équivalente, et 12+ années d'expérience dans la construction de logiciels système de production.
- Expertise approfondie en programmation système, avec Rust comme langage de choix pour le travail de bas niveau. Vous avez livré des produits Rust à la frontière matériel/noyau — pilotes, firmware, runtimes, ou similaires — et vous pouvez expliquer par l'expérience où Rust justifie son utilisation dans les logiciels système et où il vous coûte. Nous travaillons en Rust dès le premier jour ; le confort ne suffit pas, nous voulons de la conviction.
- Un historique de conception et d'évolution de bibliothèques et d'APIs destinées à être prises en charge pendant des années, y compris la discipline de compatibilité ABI.
- Maîtrise des bases de code volumineuses et multi-référentiels avec des dépendances en couches.
- Leadership démontré dans la résolution des problèmes de fiabilité difficiles jusqu'à une analyse claire des causes profondes par écrit.
- Expérience de plateforme de bas niveau : firmware et flux de démarrage, RTOS, BMC/MCU, RISC-V, ou logiciels système étroitement liés.
- Expérience avec les pilotes Linux ou adjacents au noyau (par exemple, VFIO ou sous-systèmes similaires).
- Expérience de mise en service et de triage système matériel : analyse des défaillances, diagnostics et validation en environnement de laboratoire.
- Une habitude établie : construire avec des agents de codage IA — pas comme une nouveauté, mais comme une façon dont vous livrez déjà et augmentez votre levier. Vous pouvez expliquer comment vous concevez le travail pour qu'il soit compatible avec les agents et où vous gardez les humains dans la boucle.
Moyens de vous démarquer
- Expérience dans la construction de logiciels système Rust à l'échelle d'un hyperscaler ou d'une entreprise de matériel native Rust — le type d'environnement où Rust est le langage de production pour le travail de bas niveau, pas une expérience.
- Expérience des systèmes distribués : frameworks gRPC et RPC, modèles de coordination et de télémétrie, MPI. Expérience des systèmes d'inférence et de service de jetons (vLLM ou piles de service et d'exécution similaires) un grand plus.
- Expérience dans la livraison et le support de SDKs destinés aux clients, y compris la documentation et les pratiques de compatibilité ABI.
- Préparation à la production et profondeur de livraison : flux de travail CI/CD et de publication, pratiques de surveillance et d'alerte, Kubernetes, et flux de travail opérationnels des centres de données.
Largement considéré comme l'un des employeurs les plus désirables du monde de la technologie, NVIDIA compte parmi les personnes les plus avant-gardistes et les plus travailleuses au monde qui inventent l'avenir avec nous. Êtes-vous un leader logiciel créatif et collaboratif à la recherche de nouveaux défis ? Si oui, nous voulons avoir de vos nouvelles ! Rejoignez-nous et aidez à construire la plateforme d'inférence et de calcul IA en temps réel et rentable qui pilote notre succès dans ce domaine passionnant et en croissance rapide.
Votre salaire de base sera déterminé en fonction de votre localisation, de votre expérience et de la rémunération des employés occupant des postes similaires. La fourchette de salaire de base est 272,000 USD - 431,250 USD.
Vous serez également éligible à des actions et à des avantages sociaux nvidia.com/en-us/benefits/.
Les candidatures pour ce poste seront acceptées au moins jusqu'au Juillet 4, 2026.
Cette offre concerne un poste vacant existant.
NVIDIA utilise des outils d'IA dans ses processus de recrutement.
NVIDIA s'engage à favoriser un environnement de travail inclusif et est fier d'être un employeur garantissant l'égalité des chances. Comme nous accordons une grande importance à la diversité de nos employés actuels et futurs, nous ne faisons aucune discrimination (y compris dans nos pratiques d'embauche et de promotion) fondée sur la race, la religion, la couleur, l'origine nationale, le sexe, l'expression de genre, l'orientation sexuelle, l'âge, l'état civil, le statut d'ancien combattant, le statut d'invalidité ou toute autre caractéristique protégée par la loi.
