Senior Software Engineer, Place and Route Tools
Apply NowCompany: NVIDIA Corporation
Location: Santa Clara, CA 95051
Description:
NVIDIA's success builds on a foundation of industry leading hardware. A key strategy in achieving this is our combining of the best of external EDA with highly optimized, internal EDA tools. Our team develops these tools by fusing advances in parallel computing, machine learning, and novel algorithms in C++. We are seeking a CAD Software Engineer excited to innovate in algorithms for large scale detailed placement, including both RAMs and standard cells. The role will particularly emphasize use of multithreaded and GPU code.
Developing software within a leading hardware company means getting to almost exclusively focus on the latest processes and most advanced designs. We're not bogged down by legacy support, niche roles, or convoluted approval processes. Our developers enjoy unusually high intellectual freedom and the ability to explore broad roles. If you like to work across many technical areas and see your successes directly realized in the world's best AI hardware, this is it!
What you'll be doing:
What we need to see:
Ways to stand out from the crowd:
NVIDIA is widely considered to be one of the technology world's most desirable employers, and due to outstanding advancements, our teams are rapidly growing. Are you passionate about becoming a part of a best-in-class team supporting the latest in GPU and AI technology? If so, we want to hear from you!
The base salary range is 168,000 USD - 310,500 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.
Developing software within a leading hardware company means getting to almost exclusively focus on the latest processes and most advanced designs. We're not bogged down by legacy support, niche roles, or convoluted approval processes. Our developers enjoy unusually high intellectual freedom and the ability to explore broad roles. If you like to work across many technical areas and see your successes directly realized in the world's best AI hardware, this is it!
What you'll be doing:
- Invent and optimize new methods for high capacity detailed placement, especially for maximizing the performance of datapath logic within a suite of internal optimization tools. These tools already outperform the industry's alternatives in high capacity timing optimization and will advance even further with your contributions.
- Over time, this role can expand to other areas of physical design implementation and analysis tools
- As with any software engineering team, we do write a lot of code, but this is broader than a typical CAD or EDA role. Instead, we as a team own the whole process from discovery and invention of new optimization opportunities, to developing solutions and working directly inside design teams to facilitate deployment.
What we need to see:
- MS or PhD in Electrical Engineering or Computer Science (or equivalent experience)
- 5+ years experience in one or more of these areas: place & route, spatial data structures, and design optimization.
- Expertise in C++
- Thorough understanding of detailed placement, including incorporation of routing and timing algorithms.
- Deep understanding of algorithm design principles such as complexity analysis, efficient memory and I/O use, etc.
- Strong communication and interpersonal skills
Ways to stand out from the crowd:
- Expertise in high speed arithmetic design
- C++17/C++14 experience, such as lambdas and concurrency
- Experience in parallel computing, especially if you have used CUDA
- Experience with reinforcement learning, GNNs (Graph Neural Networks), LLMs (Large Language Models) and other relevant machine learning frameworks, especially as applied to physical design
NVIDIA is widely considered to be one of the technology world's most desirable employers, and due to outstanding advancements, our teams are rapidly growing. Are you passionate about becoming a part of a best-in-class team supporting the latest in GPU and AI technology? If so, we want to hear from you!
The base salary range is 168,000 USD - 310,500 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.