We have an exciting opportunity for a talented Senior System Software Engineer to join our dynamic Automotive Team and help us develop innovative, secure, and high-performance automotive systems. If you have a good understanding of operating systems and computer architecture, experience in device driver development and performance tools, and strong C/C++ or Ada/SPARK programming skills, we want to hear from you! Join us in creating the future of automotive technology and be part of a team that is revolutionizing the industry.
We are a leading artificial intelligence computing company and are paving the way with innovations in gaming, visualization, supercomputing, and self-driving cars. NVIDIA gives automakers, tier-1 suppliers, automotive research institutions, and start-ups the power and flexibility to develop and deploy breakthrough artificial intelligence systems for self-driving vehicles. Our unified computing architecture makes it possible to train deep neural networks in the data center on the NVIDIA DGX™, and then seamlessly run them on NVIDIA's DRIVE platform inside the vehicle. Leading vehicle manufacturers, tier 1 suppliers, mapping and simulation companies, software and sensor providers, and startups around the world are developing on the NVIDIA DRIVE® platform to deliver the best solutions for the new world of mobility. As a Senior System Software Engineer in the Automotive team, you will get an opportunity to work on Nvidia's latest SOCs, help tackle complex and important problems, and work alongside industry experts in diverse teams and projects.
What you’ll be doing:
Design and develop safety (ISO26262) and security (ISO21434) compliant system software for NVIDIA DRIVE platform for autonomous vehicles
Design simple and creative solutions for complex system problems, by decomposing the problem into smaller problems.
Design Real Time System Software solutions for NVIDIA Tegra SOC
Perform development & bring-up activities for next-generation Tegra SOC hardware
Work with the ASIC teams to enhance virtualization support in the SOC
Design debugging solutions and tooling to improve developer experience on DRIVE platform
Learn to harness maximum and consistent system software performance and develop workflows and tools to measure performance
Handle complex issues requiring interactions between components partitioned across the large software stack
Extensively use Formal Methods to develop high integrity software, benefiting from enhanced toolchain automation.
What we need to see:
Bachelors/Masters or equivalent experience in Computer Science from a reputable engineering college
8+ years of experience in System Software development on real time embedded systems
Strong understanding of computer architecture and operating system fundamentals
Strong C/C++ and/or Ada/SPARK programming and debugging skills
Hands-on experience with debugging tools like gdb, valgrind
A dedicated, action-oriented, strong teammate, who’s self-motivated with excellent analytical and interpersonal skills
Ways to stand out from the crowd:
In-depth knowledge of embedded systems and real time operating systems, like QNX and RT Linux skills
Good understanding of ARM architecture and writing low level software for ARM v8 based SOCs
Experience in taking features from inception to the product following Software Development Life Cycle (SDLC) practices
Hands-on experience with performance analysis tools, such as gprof, perf, system analyzer tools
Hands-on experience with formal methods, especially using TLA+ and Ada/SPARK toolchains.
With competitive salaries and a generous benefits package, NVIDIA is widely considered to be one of the technology world’s most desirable employers. We have some of the most talented people in the world working for us. Do you want to be one of them? If you're creative and self driven, we want to hear from you! We are an equal opportunity employer and value diversity at our company. We do not discriminate on the basis of race, religion, color, national origin, gender, sexual orientation, age, marital status, veteran status, or disability status.