This job listing has expired and the position may no longer be open for hire.

Senior Software Engineer - Deep Learning Libraries at Nvidia Corporation

Posted in General Business 30+ days ago.

This job brought to you by eQuest

Type: Full-Time
Location: Santa Clara, California

Job Description:

We are looking for a Senior Deep Learning Software Engineer:

NVIDIA is hiring software engineers for its GPU-accelerated Deep Learning Libraries team. Academic and commercial groups around the world are using GPUs to power a revolution in deep learning, enabling breakthroughs in problems from image classification to speech recognition to natural language processing and artificial intelligence. Join the team which is building software which will be used by the entire world. Work in interaction with the deep learning community to implement the latest algorithms.

What you'll be doing:

In this role, you will be responsible for developing highly optimized deep learning algorithms. You'll collaborate with members of the open source deep learning software engineering community to define and implement the new features of libraries such as cuDNN and CUTLASS. The scope of these efforts ranges from defining the public APIs, performance tuning and analysis, implementing new algorithms, and other general software engineering work.

  • Apply CPU and GPU architecture knowledge as well as operating systems knowledge to build robust and scalable software designs.

  • Work with both hardware and software engineers to design, develop and debug many functional aspects of the devices NVIDIA produces.

  • Build and maintain integrations of low-level GPU assembly kernels into deep learning libraries, using C++ and object oriented design.

  • Maintain and test environments for new hardware, new OSes, and platforms, including simulators and emulators for enabling future hardware and chips that are not available in silicon.

  • You will be expected to apply software development processes, adapting to an agile environment and participate in activities that ranges from defining the public APIs, performance tuning and analysis, implementing new algorithms.

  • Participate in a high-energy and dynamic company culture to develop state of the art software and hardware products and follow hardware-software co-design practices.

What we need to see:

  • A Masters in Computer Science, Computer Engineering, Applied Math/Informatics or related/equivalent field with 4+ years or more of meaningful work experience

  • You have the ability to work independently, define project goals and scope, and lead your own development effort.

  • You have strong C/C++ programming and Python software design skills, including debugging, performance analysis, and test design.

  • Prior experience with low-level programming in assembly and performance tuning

  • Knowledge of CPU and/or GPU architecture. CUDA or OpenCL programming experience strongly desired

  • Understanding of deep learning or machine learning

Ways to stand out from the crowd:

  • Experience in optimizing for high performance computing, linear algebra algorithms and parallel implementations.

NVIDIA is widely considered to be one of the technology world's most desirable employers. We have some of the most brilliant and talented people in the world working for us. If you're creative, autonomous and love a challenge, we want to hear from you. Come, join our cuDNN Deep Learning Library team and help build the real-time, cost-effective computing platform driving our success in this exciting and quickly growing field.

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.