Nvidia is hiring a
Senior Software Engineer
We are now looking for a Senior Software Engineer.
What do artificial intelligence, autonomous vehicles, robotics, cloud technologies, computer vision, augmented reality, voice recognition, virtualization and computer gaming all have in common? To be more use useful, more powerful, more immersive and even more fun they all require a high speed, low latency, secure, and intelligent network. As the NVIDIA DPU Platform Software team, we are passionate about and directly involved with the entire lifecycle of the DPU including pre-silicon design, software development, new board bring-up, low-level device initialization, Linux OS drivers and kernel configuration, system management, and supporting customers with software fixes and new features. We believe our most valuable asset is our people and seek the very best to lead our outstanding team!
What you’ll be doing:
Be part of a small team of engineers who share in “the big picture”, where consideration of the whole system and collaboration is key, but own and architect the design end-to-end.
Working in pre-silicon development mode as you architect, debug, measure, and optimize performance while utilizing and extending the software simulator and hardware emulator test environments.
Develop system software components including processor firmware, kernel drivers/modules, and user space applications and libraries.
Execute a complete engineering process, including refining requirements, engineering design of data structures/algorithms, implementation, peer review, developer testing, and post-GA support.
Be a specialist in your domain while continuing to learn new technologies.
Collaborate with the open source community to develop and enhance industry-standard programming models and platform support while upstreaming and maintaining software into standard software distributions.
What we need to see:
Bachelor's degree in Computer Science/Engineering or equivalent experience
8+ years developing software for embedded systems (C is required, Python)
A proven understanding of the system software stack, with a focus on software/hardware interaction, including platform firmware, device drivers, Linux kernel, and how user-space applications utilize system services to achieve high performance.
A deep knowledge of high-performance processor architecture including CPU and cache coherency concepts, as well as hardware accelerators
Well-rounded engineering skills, including technical investigation, design, testing, and agile software engineering process.
Outstanding written and oral communication skills.
Must be fluent in the C programming language.
Experienced with build environment tools (gcc, git, github, make, bitbake, shell scripts, gerrit, jenkins, etc…).
Ways to stand out from the crowd:
Experience with ARMv8 microarchitecture, ATF and/or UEFI software is a strong plus.
Specialist knowledge of secure boot flows and/or trusted computing environments.
Experience developing security key management solutions is very desirable.
A good sense of humor is key. We like to have fun too!
With competitive salaries and a generous benefits package, we are widely considered to be one of the technology world’s most desirable employers. We have some of the most forward-thinking and hardworking people in the world working for us and, due to unprecedented growth, our exclusive engineering teams are rapidly growing. If you're a creative and autonomous engineer with a real passion for technology, we want to hear from you.The base salary range is $176,000 - $333,500. 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.
Please mention that you found the job on ARVR OK. Thanks.