Sobre esta vaga de Software Engineering Intern, Compiler Verification - Spring 2027 na NVIDIA
At present, NVIDIA is exploring the immense possibilities of AI to define the forthcoming era of computing. Our division develops compiler technologies within the CUDA software stack that support the transformation of high-level parallel programs into efficient performance on NVIDIA GPUs. This internship grants a hands-on experience working closely with compilers, GPU architecture, and parallel programming languages. The role is notable for its mix of systems perspective, software knowledge, and significant exposure to authentic compiler issues across advanced GPU platforms.
What you’ll be doing:
Develop programs in PTX, CUDA, C/C++, or low-level GPU languages to validate compiler and evaluate generated code across key features and architectures.
Build software components, libraries, and technical solutions that advance compiler development and open up more innovative ways to explore and exercise compiler behavior.
Collaborate with compiler and hardware engineers on challenging architectural and compiler interactions, helping uncover deeper insights into how advanced GPU software features behave across releases.
Contribute to expansive engineering projects that improve the robustness, scalability, and future-readiness of the CUDA software stack for new GPU platforms.
What we need to see:
Pursuing an MS or PhD in Computer Science, Computer Engineering, Electrical Engineering, or a related technical field.
Strong programming skills in Python, C++, or similar languages used for systems or software development.
Solid understanding of data structures, algorithms, and software debugging fundamentals.
Familiarity with compiler concepts, computer architecture, operating systems, or parallel programming.
Ability to read technical details carefully, reason about complex behaviors, and communicate findings clearly in a collaborative engineering environment.
Ways to stand out from the crowd:
Exposure to compiler internals, code generation, static analysis, LLVM, or MLIR.
Background in GPU programming, CUDA, PTX, or parallel computing models.
Hands-on project work involving low-level systems, program analysis, or software aimed at optimizing software operation.
Passion for compilers, GPU frameworks, or software tools intended for developer use.