Enable job alerts via email!

Senior System Software Engineer - QNX BSP and IO Virtualization

NVIDIA Corporation

Santa Clara (CA)

On-site

USD 148,000 - 288,000

Full time

20 days ago

Boost your interview chances

Create a job specific, tailored resume for higher success rate.

Job summary

An established industry player is seeking a talented Senior System Software Engineer to join their innovative Automotive Team. This role involves developing high-performance automotive systems, focusing on safety and security compliance for autonomous vehicles. Candidates should have a solid background in System Software development on Real Time OS, strong programming skills in C or Ada/SPARK, and experience with formal methods. Join a forward-thinking company that is at the forefront of automotive technology, and play a key role in shaping the future of self-driving vehicles. If you are passionate about technology and eager to make a difference, this opportunity is for you.

Benefits

Equity
Comprehensive benefits

Qualifications

  • 5+ years of experience in System Software architecture and development.
  • Strong understanding of computer architecture and OS fundamentals.

Responsibilities

  • Architect and develop safety and security compliant system software.
  • Design and develop I/O Virtualization solutions for NVIDIA Tegra SOC.

Skills

C programming
Ada/SPARK programming
System Software architecture
Real Time OS (RTOS)
Performance analysis
Debugging skills
Analytical skills

Education

Bachelor's in Computer Science
Master's in Computer Science

Tools

Performance analysis tools
Debugging tools

Job description

Senior System Software Engineer - QNX BSP and IO Virtualization

Senior System Software Engineer - QNX BSP and IO Virtualization

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 System Software development on Real Time OS (RTOS), ARM architecture, Virtualization, strong C and/or Ada/SPARK programming skills, and experience with formal methods, 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 making extensive use of formal methods to automate our workflow and increase the quality of our SW.

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.

What you’ll be doing:

  • Architect, design and develop safety (ISO26262) and security (ISO21434) compliant system software for NVIDIA DRIVE platform for autonomous vehicles

  • Architect, design and develop Real Time System Software features for NVIDIA Tegra SOC

  • Design & develop I/O Virtualization solutions for NVIDIA Tegra SOC

  • Development & bring-up activities for next-generation Tegra SOC

  • Work with the ASIC teams to enhance SW performance and virtualization support in the SOC

  • Extensively use Formal Methods to architect and develop high integrity software

  • Design debugging solutions and tooling to improve developer experience on DRIVE platform

  • Handle complex issues requiring interactions between components partitioned across the large software stack

  • Learn to harness maximum and consistent system software performance and develop workflows and tools to measure performance

  • Lead junior engineers

What we need to see:

  • Bachelors/Masters or equivalent experience in Computer Science

  • 5+ years of experience in System Software architecture and development for real time embedded systems

  • Strong understanding of computer architecture and operating system fundamentals

  • Experience in designing and developing solutions for complex system problems.

  • Strong C and/or Ada/SPARK programming and debugging skills

  • Hands-on experience with performance analysis and system analyzer tools as well as debugging tools

  • A dedicated, team and results oriented, self-motivated contributor 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 low level software development for ARM v8 based SOCs

  • Prior hands-on experience in Ada/SPARK programming (including specification and formal verification) and TLA+ formal verification modeling

  • Experience performing architectural safety analysis (FMEA/DFA) and security analysis (Threat modeling)

  • Experience taking features from inception to product following Software Development Life Cycle (SDLC) practices

The base salary range is 148,000 USD - 287,500 USD. Your base salary will be determined based on your location, experience, and the pay of employees in similar positions.

You will also be eligible for equity and benefits.

NVIDIA accepts applications on an ongoing basis.

NVIDIA is committed to fostering a diverse work environment and proud to be an equal opportunity employer. As we highly value diversity in our current and future employees, we do not discriminate (including in our hiring and promotion practices) on the basis of race, religion, color, national origin, gender, gender expression, sexual orientation, age, marital status, veteran status, disability status or any other characteristic protected by law.

Get your free, confidential resume review.
or drag and drop a PDF, DOC, DOCX, ODT, or PAGES file up to 5MB.