Senior System Software Engineer, Programmable Vision Accelerator
Architect and develop new features and improvements for NVIDIA mobile systems, including self-driving cars, intelligent video analytics, and autonomous mobile robotics. Demonstrate technical leadership, communication, interpersonal and analytical skills. Passion for performance-oriented software engineering required.
You will be architecting and developing new features and improvements to realize the groundbreaking potential of NVIDIA mobile systems, ranging from self-driving cars, intelligent video analytics and autonomous mobile robotics. You will need to demonstrate excellent technical leadership, communication, interpersonal, and analytical skills as well as a real passion for performance-oriented software engineering. If this sounds like a fun challenge, we want to hear from you!
What you will be doing:
- Evolve and define software architecture for future NVIDIA's Programmable Vision Accelerator (PVA) chips and enhance the functionality of currently shipping products.
- Design and write custom embedded software for PVA engine to meet product and hardware requirements at the SoC level.
- Help define forward-looking strategy and improvements to the PVA algorithms and system architecture.
- Review hardware specifications and map algorithms to the architecture.
- Participate in the bring-up of the new generation of the world's most advanced SoC.
- Collaborate closely with other teams and software/hardware engineers across NVIDIA to support the architecture, design, implementation, integration, and validation of PVA software under a common SoC umbrella.
- Provide technical support and guidance for internal and external customers.
- Mentor and guide technical development of the less experienced team members
What we need to see:
- College degree (preferably PhD or MS) in Electrical Engineering, Computer Engineering, Computer Science, or equivalent experience
- 8+ years of working experience in embedded industry, including 3+ years in technical leadership role
- Deep understanding of SoC principles, general systems architectures, operating systems, device drivers, memory management, cache coherency, multithreading, and real-time scheduling.
- Deep understanding and working experience with embedded technologies including DSP, computer vision and image/signal processing.
- Excellent software development skills in C/C++, writing effective, maintainable, and well-tested code and enabling automated testing.
- Proven expertise in architecting embedded software and development of highly optimized code
- Experience with embedded Linux and/or QNX.
- Outstanding problem solving capabilities and interpersonal skills with ability to work in a global and diverse team operating in a fast-paced environment.
- Good understanding of safety-critical software principles with experience in automotive or other highly regulated industries
Ways to stand out from the crowd:
- Experience with ISO 26262 and IEC 61508 or equivalent quality/safety processes.
- Understanding of software safety and safety development processes is a major plus.
- Consistent record to effectively guide and influence in a technically strong dynamic environment.