GPU Graphics Process Unit Engineer

Posted:
4/25/2024, 5:00:00 PM

Location(s):
Bethesda, Maryland, United States ⋅ Maryland, United States

Experience Level(s):
Junior ⋅ Mid Level ⋅ Senior

Field(s):
Software Engineering

Workplace Type:
On-site

At Leidos, we deliver innovative solutions through the efforts of our diverse and talented people who are dedicated to our customers’ success. We empower our teams, contribute to our communities, and operate sustainable practices. Everything we do is built on a commitment to do the right thing for our customers, our people, and our community. Our Mission, Vision, and Values guide the way we do business. Employees enjoy career enrichment opportunities available through mobility and development and experience rewarding relationships with supportive supervisors and talented colleagues and customers. Your most important work is ahead.
 

If this sounds like the kind of environment where you can thrive, keep reading!

Leidos is looking for a highly skilled Graphics Processing Unit (GPU) Engineer with a deep understanding of operating systems, hardware, and extensive knowledge of the GPU industry, particularly in the context of Linux-based systems. As a GPU Engineer, you will play a pivotal role in designing, developing, and optimizing GPUs for various applications, with a strong emphasis on seamless integration with operating systems and hardware. Your expertise will contribute to advancing GPU technology and its efficient utilization in diverse fields.

This is a 100% on-site position. All work must be performed at the customer site in Bethesda at the Intelligence Community Campus.

Primary Responsibilities

1. GPU Architecture and Design: Collaborate with a multidisciplinary team to define, develop, and optimize GPU architectures, ensuring they meet stringent performance, power efficiency, and feature requirements. Leverage industry insights to drive design decisions. Ensure that GPU designs and integrations are not only optimized for Linux but are also adaptable to other operating systems.

2. Operating System Integration: Work closely with operating system developers to ensure smooth GPU integration with Linux-based systems. Optimize GPU drivers for compatibility, performance, and reliability in a Linux environment. Provide regular maintenance and updates to ensure continued compatibility.

3. Hardware Expertise: Contribute to the design and development of GPU hardware, providing insights into hardware architecture to ensure efficient interaction with software components. Maintain and update hardware designs as needed.

4. CUDA (Compute Unified Device Architecture) /OpenCL (Open Computing Language) Programming: Develop and optimize applications using CUDA or OpenCL, harnessing the full potential of GPU hardware for parallel processing, high-performance computing, and machine learning on Linux platforms. Maintain and update software for optimal performance.

5. Performance Analysis: Analyze GPU performance, identify bottlenecks, and develop strategies to enhance performance across various applications in Linux, addressing both hardware and software considerations. Regularly monitor and improve performance.

6. GPU Tooling: Create and maintain debugging tools, profiling utilities, and performance analysis software tailored for Linux systems to facilitate efficient GPU development and troubleshooting. Keep tools up-to-date and functional.

7. Power Efficiency: Work on power management techniques to optimize GPU power consumption, ensuring efficient operation on both mobile and desktop Linux platforms. Continuously assess and enhance power efficiency strategies.

8. Testing and Validation: Design and execute tests to validate GPU performance and functionality on Linux, including stress testing, benchmarking, and debugging to ensure robust operation. Maintain and expand the testing suite.

9. Documentation: Maintain comprehensive technical documentation, including architectural specifications, code documentation, and Linux-specific best practices for GPU development. Keep documentation up-to-date with changes and improvements.

10. Industry Insight: Stay updated on the latest trends, innovations, and competitive landscapes within the GPU industry, contributing to research efforts and proposing Linux-specific approaches to GPU design and optimization. Share regular updates and insights with the team.

Basic Qualifications

  • Bachelor's or higher degree in Computer Science, Electrical Engineering, or a related field. Additional years of experience may be considered in lieu of a degree.
  • 10+ years of relevant systems engineering experience
  • Proven experience in GPU architecture design, and GPU performance optimization.
  • Expertise in operating system integration for Linux.
  • Strong understanding of computer hardware architecture, particularly as it relates to Linux systems.
  • Knowledge of parallel computing, graphics algorithms, and real-time rendering in Linux environments.
  • Familiarity with GPU debugging tools and profiling software for Linux.
  • Excellent problem-solving skills and the ability to collaborate within a team.
  • Strong communication skills for conveying technical information in a Linux context.
  • Proficiency with scripting languages such as Python or BASH. 
  • Proficiency with automation tools such Ansible, Puppet, Salt, Terraform, etc.
  • Candidate must, at a minimum, meet DoD 8570.11- IAT Level II certification requirements (currently Security+ CE, CCNA-Security, GICSP, GSEC, or SSCP along with an appropriate computing environment (CE) certification). An IAT Level III certification would also be acceptable (CASP+, CCNP Security, CISA, CISSP, GCED, GCIH, CCSP).

Clearance

  • TS/SCI clearance with Polygraph required OR TS/SCI and willingness to get a Poly.
  • US Citizenship is required due to the nature of the government contracts we support.

Preferred Qualifications

  • Published research or contributions in the GPU industry, especially related to Linux.
  • Experience with machine learning and neural network frameworks on GPUs in Linux.
  • Knowledge of GPU virtualization, cloud computing, and emerging Linux-based technologies in the field.
  • Proficiency in programming languages such as GPU-specific languages.
  • Experience with container technologies (Docker, Kubernetes)
  • Experience with Prometheus/Grafana for monitoring
  • Knowledge of distributed resource scheduling systems [Slurm (preferred), LSF, etc.]
  • Familiarity with CUDA and managing GPU-accelerated computing systems
  • Basic knowledge of deep learning frameworks and algorithms

#NMECDTP

Original Posting Date:

2024-04-26

While subject to change based on business needs, Leidos reasonably anticipates that this job requisition will remain open for at least 3 days with an anticipated close date of no earlier than 3 days after the original posting date as listed above.

Pay Range:

Pay Range $122,200.00 - $220,900.00

The Leidos pay range for this job level is a general guideline only and not a guarantee of compensation or salary. Additional factors considered in extending an offer include (but are not limited to) responsibilities of the job, education, experience, knowledge, skills, and abilities, as well as internal equity, alignment with market data, applicable bargaining agreement (if any), or other law.

Leidos

Website: https://www.leidos.com/

Headquarter Location: Reston, Virginia, United States

Employee Count: 10001+

Year Founded: 1969

IPO Status: Public

Industries: Computer ⋅ Government ⋅ Information Services ⋅ Information Technology ⋅ National Security ⋅ Software