Logo
NVIDIA

Senior Software Developer, SOC Design Tools

NVIDIA, Austin, Texas, us, 78716


NVIDIA's success builds on a foundation of industry leading hardware. Achieving distinction involves extensive design optimization, including combining 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 specialized algorithms for VLSI design.

We are seeking an innovative CAD Software Developer with particular interest in algorithms for RTL analysis (using Verific in C++), netlist traversal, DFT, clock distribution, power gating, and other SOC integration challenges. Understanding both software and hardware principles is key. Constant creativity and a self-drive to explore and perfect fast, high capacity software is required. 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! Developing software within a leading hardware company also 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.

What you’ll be doing:

Invent and optimize new methods for SOC/IP integration tools.

Develop algorithms to allow designers to efficiently create, review, and optimize chip-level connectivity.

Devise strategies for rapidly analyzing the impact of floorplanning changes on bus latencies, DFT, clocking, and power delivery.

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. That translates to a bigger picture view of your work and not simply responding to user requests, but instead actively driving the roadmap of increasing hardware design productivity.

What we need to see:

BS, MS, PhD in Electrical Engineering or Computer Science or equivalent experience

6+ years of relevant experience in CAD software and VLSI hardware design

Demonstrated ability in software development with C++

Strong understanding of efficient software data structures and algorithm development for graph traversal, pattern matching, abstract syntax trees, and parsing

Good understanding of SOC-related topics, including Verilog, scan chain insertion, MBIST, clock and power distribution, and bus architectures

Some familiarity with related EDA and optimization techniques, such as logic synthesis, ATPG, global route, static timing analysis, linear programming, and SAT solvers

Strong communication and interpersonal skills

Ways to stand out from the crowd:

C++14 or newer experience, such as lambdas and concurrency

Previous work experience including both software and hardware roles, especially involving SOC/IP integration or RTL design experience

Experience with common EDA building blocks, such as Verific for Verilog parsing, SAT solvers for formal verification, and combinatorial optimization frameworks for design

Experience in high performance software design including multithreading, distributed computing, efficient memory and I/O use, etc.

In general, an obsession with performance and the practical skills to build highly innovative software for world leading hardware

NVIDIA is widely considered to be one of the technology world’s most desirable employers, and due to outstanding growth, 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 164,000 USD - 304,750 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 (https://www.nvidia.com/en-us/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.