Are you passionate about 3D graphics, GPUs, low-level programming, and user experience development? Have you ever dreamed of helping bring video games to life? Do you want to work with a fast, agile, and experienced team? Come join us and learn how to develop software at the "speed of light"!
NVIDIA is looking to hire a technical, creative and hands-on software engineering intern to pioneer the next generation of Graphics Developer Tools. Together, we will work with the NVIDIA Graphics Tools team to build tools that enable developers worldwide to harness the full power of NVIDIA GPUs.
What you'll be doing:
Interns on the developer tools team are treated as full members of the engineering team. They are involved in the technical design and implementation of features working in an Agile/JIRA environment. Tasks you will work on include everything from UI crafting to low level GPU development in a well established C & C++ code base. In this role you can expect to:
- Create graphics debugging features for NVIDIA GPUs, enabling developers to solve the toughest debugging problems.
- Work closely with the engineering team and other peer organizations within NVIDIA.
- Write fast, effective, maintainable, reliable and well documented code.
- Receive and provide peer code reviews to other engineers including feedback on code performance, scalability and correctness.
- Document requirements and designs, and review documents with key customers.
- Demonstrate growth in technical and non-technical abilities.
- Help construct QA test plans for new features.
What we need to see:
- Passion for 3D graphics.
- Pursuit of a B.S. or M.S. degree in Computer Science or related field.
- Excellent C / C++ programming skills.
- Knowledge of 3D graphics algorithms and APIs such as Direct3D, OpenGL, or Vulkan. Familiarity with GPU architecture a big plus.
- Ability to articulate key aspects of Object-Oriented Programming.
- Able to work effectively with a team of engineers in a fast paced and dynamic environment.
- Excellent written and verbal communication skills.
- Desire to learn how to build professional grade software.
Ways to stand out from the crowd:
- Familiarity with computer architecture concepts such as virtual memory, caches, registers, threads, and heterogeneous computing.
- Experience with GPU programming.
- Be able to demonstrate initiative and determination in getting things done.
NVIDIA is widely considered to be one of the technology world’s most desirable employers with some of the most experienced and passionate people in the world working here. If you're creative and autonomous, we want to hear from you.