NVIDIA is looking to solve the problem of accelerating general purpose computation on the GPU by improving the CUDA driver, a core component of their platform.
Requirements
- Strong C programming skills
- Experience designing, debugging, and maintaining complex software stacks
- Background with operating system interfaces for threads, process control, and virtual memory
- Experience with HW/SW co-design, perf. modeling using emulation/simulation, creating SW programming model exposures for HW features
- Knowledge of CPU, GPU architectures, memory coherence and consistency models
- Some background with kernel mode development
- Some familiarity with C++
Responsibilities
- You will evangelize, architect, and implement new CUDA features
- You'll oversee and drive development efforts across multiple teams
- Collaborate with members of hardware architecture teams
- Help define forward-looking improvements to the CUDA APIs and programming model
- Design and maintain performance and precision modeling
- Write effective, maintainable, and well-tested code
- Develop code for multiple operating systems
Other
- Bachelor of Science or Master of Science degree in Computer Science, Electrical Engineering, or related field (or equivalent experience)
- 8+ years of relevant systems software development experience
- Expert interpersonal, verbal, and written communications skills with a capability to achieve objectives under tight deadlines
- Strong collaborative and interpersonal skills, specifically a proven ability to effectively guide and influence within a dynamic matrix environment
- Travel requirements not specified