Description
For two decades, NVIDIA has been at the forefront of visual computing. Today, we're building a robotics platform for the next generation of intelligent robots, including humanoid systems. Our Isaac Robotics Platform brings together high-fidelity physical and visual simulation, scalable system software, optimized robotics and algorithms, and powerful edge computing platforms to serve as the brain of intelligent machines.
We're now looking for a Senior System Software Engineer to join our Robotics Platform Team, with a strong focus on humanoid robots and embodied intelligence! In this role, you will work with experts in robotics, systems, AI, and simulation to enable real-world deployment of embodied AI in robots. You will also help develop how foundation models and learning-based policies are coordinated in production robotic systems.
Responsibilities:
- Drive end-to-end integration of robotics software stacks, including perception, control, learning-based policies, and runtime systems on real robots.
- Enable and support the deployment of foundation models, embodied AI models, and reinforcement learning (RL) policies on humanoid platforms.
- Develop and implement robot validation, testing, and benchmarking workflows spanning simulation and real hardware.
- Measure and optimize critical system-level metrics including latency, determinism, throughput, reliability, and performance.
- Work closely with multi-functional teams (research, simulation, hardware, platform, and SQA teams) to bring up and harden humanoid robotic systems.
- Own issue management across integration, testing, deployment, and field validation.
- Deliver clear and accurate user documentation for internal teams and partners.
- Review code, guide architectural decisions, and uphold high standards for system software quality.
Requirements:
- BS, MS, or PhD degree in Computer Science, Electrical Engineering, Computer Engineering, or related field (or equivalent experience).
- 3+ years of development experience in researching, designing, and prototyping robotic system software.
- Good understanding of real-time control systems, Linux kernel internal, various device driver models, arm architecture, and system design trade-offs.
- Good understanding of system-level architecture, such as interconnects, memory hierarchy, interrupts, and memory-mapped IO.
- Excellent programming and debugging skills in C, C++, and Python.
- Strong system software engineering skills combined with a strive to solve hard problems.
- Strong communication skills and ability to work across teams.
Nice to Have:
- Experience with ROS (middleware, ecosystem, development, debugging tools).
- Previous experience with CUDA.
- 2+ years of hands-on development and field experience with production robots.