Software Tools Infrastructure Architecture Intern - Hardware

Nvidia Hillsboro , OR 97123

Posted 2 months ago

We are now looking for an Intern in our Software Tools Infrastructure Architecture team!

A key part of NVIDIA's strength is our unique, advanced, development tools and environments that enable our incredible pace of delivering new technology to market. We are looking for hard-working, and creative people who passionate about joining a dynamic agile software team with high production quality standards that can help across our infrastructure. The roles below offer the opportunity to play a critical part in every stage of development of GPU technology, and to learn and improve the daily workflows of the world's top chip designers and to apply machine and deep learning to every part of our chip development pipeline. All of our roles require Excellent interpersonal skills and flexibility/adaptability for working in a dynamic environment with different frameworks and requirements


Our work includes developing chip definition languages, compute infrastructure for large scale distributed runs of critical applications and simulations, building integrated development and debugging environments. In this position, you will develop the core infrastructure for modeling, simulation, analysis, and debugging in the development of large-scale, general-purpose graphics and computing chips. Our C++ infrastructure enables our driver stack, applications, tests, and studies to run unchanged on all functional, diagnostic, and performance models, and on simulations, emulations, and silicon for all of our graphics chips.

What we need to see:

  • Strong C++ programming capability required (experience with STL and/or boost a plus).

  • Knowledge of object oriented design patterns required.

  • Experience with chip and/or system simulation a huge plus

  • Strong scripting skills desired

  • Graphics or CUDA knowledge a plus

  • Experience with OpenGL, Direct3D, CUDA APIs a plus


We are building a new computing model and environment through deep learning and are evolving the modeling, analysis, and debugging in the development of large scale general purpose AI, Graphics and Computing chips. This infrastructure enables scalable and distributed deep learning on our own super computer. You will work closely with the NVIDIA software stack for GPU-accelerated machine learning and deep learning, developing and leveraging some of the most powerful GPU compute clusters, and workflows running on them.

What we need to see:

  • Excellent knowledge of object oriented design pattern

  • Distributed systems programming

  • Strong scripting skills required

  • Perl or Python preferred
  • Background and prior experience with machine learning algorithms

  • Familiarity with deep learning frameworks such as Caffe, Theano, Torch, TensorFlow

  • Familiarity with CUDA or OpenCL APIs


We are looking for GPU-accelerated deep learning experts to apply deep learning techniques to problems in our workflows for developing AI, Graphics and Computing chips. This involves learning the core infrastructure being improved, current methods, and then proposing or improving deep learning techniques. You will want to have an interest in one of our other key areas such as HPC computing, metrics, build and release, modeling tools or simulation toosl, or application or chip performance analysis.

What we need to see:

  • Excellent knowledge of object oriented design pattern

  • Strong scripting skills required

  • Perl or Python preferred
  • Background and prior experience with machine learning algorithms

  • Expertise with deep learning frameworks such as Caffe, Theano, Torch, TensorFlow

  • Expertise with CUDA or OpenCL APIs


We are evolving the core build, simulation, verification and release pipeline for the development of our AI, grahics, discrete graphics, computing and SOC chips. This strongly Object Oriented Perl/Python and Java/C++ infrastructure encompasses several extensive proprietary applications that allow us to efficiently verify the world's largest chips with a sophisticated distributed computing execution and triage environment.

What we need to see:

  • Strong object-oriented programming and design pattern knowledge: Object Oriented Perl, C++ or Java preferred

  • Excellent interpreted language skills highly desired

  • Perl or Python preferred
  • Experience in software development life cycle on Linux based platforms preferred

  • Experience with MySQL or Postgress strongly desired

  • Experience with hardware build, simulation or verification environments and testing strongly desired


We develop the user interface and front end application for comprehensive workflows for the development of new graphics chips. In this position you will be working on backend and frontend design and development of proprietary web applications for hardware development. This will involve direct interaction with end users, analyzing performance bottlenecks in the workflow and application, and building infrastructure and microservices to support the hardware development teams.

What we need to see:

  • Solid knowledge of Java Language and common Java API's.

  • Thorough knowledge of object oriented design

  • Experience with SQL and at least one SQL database server.

  • Knowledge of at least one dynamic language like Python or Perl

  • Experience with Javascript and preferably the Ember framework

  • Experience with MongoDB and/or ELK


NVIDIA's products involve designing some of the most complex chips ever seen. This is enabled by using design tools which automate a variety of of design tasks: RTL design entry, simulation, verification, timing, physical design, package and substrate design, signal integrity, and characterization. We are seeking software architects to build software solutions to automate design processes. Ideal candidates should have a strong background in computer science and basic knowledge of hardware design (logic/RTL design, silicon layout).

What we need to see:

  • Object-oriented design and programming using C++. Experience with STL and Boost is preferred.

  • Strong knowledge of algorithms and computer science theory, specifically graph theory, compiler design, synthesis, simulation, database, and computational geometry.

  • Interest in digital design.

  • Knowledge of Unix and Windows build and debugging environments. (g++, gdb) and (Visual Studio/Visual C++)

  • Programming experience in Perl and TCL

  • Experience developing GUIs using Qt


We are improving our existing HPC distributed computing infrastructure used for the development of all NVIDIA hardware products. Additionally, we are prototyping and development of the new modern converged computing infrastructure as our environments have both CPUs and GPUs. In this role you will identify and propose new effort saving automations for the distributed CPU and GPU computing clusters, improve root cause analysis and corrective action for problems large and small - identify patterns and propose how we can automate repetitive tasks and recommend and implement solutions to improve computing farm performance.

What we need to see:

  • Experience with system administration of Linux servers (CentOS/RHEL and Ubuntu preferred)

  • Strong systems API development

  • Python, Go, Perl
  • Knowledge about Linux infrastructure monitoring and alerting

  • Accomplished work related to the distributed compute/storage/network

Ways to stand out from the crowd:

  • Working knowledge of configuration management
  • Salt, Ansible, Puppet
  • Experience with at least one of the job schedulers such as LSF, SLURM, Mesos/Marathon, Kubernetes, Docker Swarm

  • Advanced knowledge of the virtualization and imaging

  • VmWare
  • Experience with solving Linux system level problems

  • Some experience at the large scale data center

  • 1000+ nodes
  • Experience with containers
  • Docker, Clear Containers, rkt


Our continuous integration systems automate the build, testing, check-in, and regression test workflows for world-wide design engineering teams and runs on a large-scale, distributed cloud computing system with 1000s of heterogeneous servers. Our system operates at large scale, running millions of jobs per day to verify multiple designs in many configurations. Our systems use both Perforce and Git. In this role you will be improving the core testing algorithms and frameworks for testing and managing software submissions and release candidates. This can be in the core Perforce and Git back-end infrastructure, or in the hardware development team facing tools that integrate with their workflows.

What we need to see:

  • Strong software engineering process skills

  • Experience with Linux development programming tools

  • Experience with SCM tools such as Perforce, Git, Subversion, ClearCase, etc.

  • Strong object-oriented programming skills

  • Strong interpreted language application experience in Perl or Python

Ways to stand out from the crowd:

  • Experience developing and deploying automated continuous integration processes

  • Experience with chip design workflows

  • Object Oriented Perl expertise

  • Deep understanding of Source Code Management (SCM) processes and tools for large, multi-site development, including branching, integration, and release strategies


Our advanced test automation enables us to intelligently verify chips with billions of gates. Our systems run millions of tests per day in distributed cloud computing system with 1000s of heterogeneous servers to verify multiple designs in many configurations. Proprietary algorithms are used to minimize the time to verify a change or complete chip. In this role you will improve the core automation, the data tracked and the algorithms used for this operation. You will analyze and improve system performance of the full pipeline. You will improve the current system's ability to schedule and utilize resources, improve performance, increase reliability, and provide better throughput. You will directly contribute to the overall quality of and improve time to market for of our next generation chips.

What we need to see:

  • Strong software engineering process skills

  • Experience with Linux development programming tools

  • Strong object-oriented programming skills

  • Strong interpreted language application experience in Perl or Python preferred

Ways to stand out from the crowd:

  • Experience developing and deploying automated testing infrastructure

  • Experience with chip design workflows particularly chip verification

  • Expertise with Object Oriented Perl or Python

  • Deep understanding of distributed and microservice architecture principles

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.

icon no score

See how you match
to the job

Find your dream job anywhere
with the LiveCareer app.
Mobile App Icon
Download the
LiveCareer app and find
your dream job anywhere
App Store Icon Google Play Icon

Boost your job search productivity with our
free Chrome Extension!

lc_apply_tool GET EXTENSION

Similar Jobs

Want to see jobs matched to your resume? Upload One Now! Remove
Cloud Software Intern

Intel Corp.

Posted 4 days ago

VIEW JOBS 4/2/2020 12:00:00 AM 2020-07-01T00:00 Cloud Software Intern Job Description Looking for a student with passion to learn and who can help us deliver cloud and edge solutions to our customers. In this position, you may expect to deliver cloud-based solutions for modern Data Centers. You will be responsible for: * Deploying and validating pilot deployment installations that go far beyond traditional or current industry approaches. * Setting up demos, following documented steps to setup servers, writing test cases and submitting patches to fix bugs in open source code. This job is for you if you: Are passionate about cloud services (e.g. Kubernetes, RedHat OpenShift, OpenStack) Understand data center technologies like network, virtualization and containerization. Effectively used Linux environment as an administrator, including scripting (Bash, Python or Ansible) The ideal candidate should exhibit the following behavioral traits: * Strong communication skills * Teamwork and interpersonal skills Qualifications You must possess the below minimum qualifications to be initially considered for this position. Experience listed below would be obtained through a combination of your school work/classes/research and/or relevant previous job and/or internship experiences. Minimum Requirements: Must be pursuing a bachelor's degree in Computer Science, Computing Engineering, Electrical Engineering, or related field. Minimum of 6 months experience with: * Programming skills in Java and/or GoLang. * Linux * Networking * Scripting (python, bash, sh) Availability for a 9 months internship. This U.S. position is open to U.S. Workers Only. A U.S. Worker is someone who is either a U.S. Citizen, U.S. National, U.S. Lawful Permanent Resident, or a person granted Refugee or Asylum status by the U.S. Government. Intel will not sponsor a foreign national for this position. Preferred Qualifications Cloud services (e.g. Kubernetes, RedHat OpenShift, OpenStack. Software/Solution Integration and Validation engineering skills e.g. test-driven development, test development and automation. Working experience in agile development process. Inside this Business Group Intel Architecture, Graphics, and Software (IAGS) brings Intel's technical strategy to life. We have embraced the new reality of competing at a product and solution level-not just a transistor one. We take pride in reshaping the status quo and thinking exponentially to achieve what's never been done before. We've also built a culture of continuous learning and persistent leadership that provides opportunities to practice until perfection and filter ambitious ideas into execution. Posting Statement All qualified applicants will receive consideration for employment without regard to race, color, religion, religious creed, sex, national origin, ancestry, age, physical or mental disability, medical condition, genetic information, military and veteran status, marital status, pregnancy, gender, gender expression, gender identity, sexual orientation, or any other characteristic protected by local law, regulation, or ordinance.... USInternJR0133157Hillsboro Intel Corp. Hillsboro OR

Software Tools Infrastructure Architecture Intern - Hardware