Our work at NVIDIA is dedicated towards a computing model focused on visual and AI computing. For two decades, NVIDIA has pioneered visual computing, the art and science of computer graphics, with our invention of the GPU. The GPU has also shown to be spectacularly effective at solving some of the most complex problems in computer science. Today, NVIDIA's GPU simulates human intelligence, running deep learning algorithms and acting as the brain of computers, robots and self-driving cars that can perceive and understand the world. We are looking to grow our company and teams with the smartest people in the world and there has never been a more exciting time to join our team!
We are currently seeking a Developer Technology Engineer for CPU Performance! Would you enjoy researching new algorithms and discovering new techniques to optimize important data center workloads and libraries on modern ARM processors? Do you like investigating hardware and system bottlenecks, and optimizing the performance of critical applications on heterogeneous computing systems with CPUs and GPUs? Are you excited about the opportunity to work on the leading edge of technology with both visibility and impact to the success of a leader like NVIDIA? If so, the Developer Technology Team invites you to consider this opportunity.
What you will be doing:
In this role, you will research and develop techniques to accelerate large scale applications running on NVIDIA's family of advanced CPU platforms.
Work directly with other technical experts in their fields (industry and academia) to perform in-depth analysis and optimization of complex database and data analytics workloads to ensure the best possible performance on modern hardware architecture focused on CPU performance.
Publish and present discovered optimization techniques in developer blogs or relevant conferences to engage and educate the Developer community.
Influence the design of next-generation hardware architectures, software, and programming models in collaboration with research, hardware, system software, libraries, and tools teams at NVIDIA
What we need to see:
Completing a Masters or PhD in Computer Science, Computer Engineering, or related computationally focused science degree (or equivalent experience).
Expert knowledge of modern CPU architectures (ARM, x86) and Linux OS internals.
In-depth expertise with CPU architecture fundamentals, instruction pipeline and memory subsystem.
Hands-on experience with low-level parallel programming, vectorization, CPU intrinsics and concurrent data structures.
Experience working with complex software packages, compilers and build systems.
Programming fluency in modern C/C++ with a deep understanding of algorithms, concurrency, and other optimization techniques.
Good communication and organization skills, with a logical approach to problem solving, and prioritization skills.
Ways to stand out from the crowd:
Experience optimizing the performance of distributed database systems and frameworks (e.g. production database or Spark).
Background in compilers, binary instrumentation, compression, storage systems, networking, or distributed computer architectures.
Experience with GPU-accelerated platforms and system-level performance optimizations for it.
The DevTech Engineer plays a crucial role in the success of NVIDIA and our customers. DevTechs work with external technologists to investigate performance of their applications, design parallel algorithms and implement optimizations in an accelerated computing environment. As recognized experts in the field we publish our findings in developer blogs or at relevant conferences and workshops. With insight to our customers, the industry, and academia we are important representatives of NVIDIA as a technology leader. Within NVIDIA we contribute valuable application expertise that influences next generation hardware and software products. As critical problem solvers, we deepen our expertise, expand our knowledge, and work across domains and organizations. Whether you are a leading industry luminary or early in your career, the DevTech Team provides ample opportunity for growth in the exciting field of accelerated computing!
NVIDIA is widely considered to be one of technology's most desirable employers. We have some of the most forward-thinking and hardworking people in the world working for us. Does contributing to and innovating in HPC, Accelerated Computing and Artificial Intelligence excite you? If so, we want to hear from you.
The base salary range is 120,000 USD - 230,000 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.