GPU Software Engineer ( R-00082352 )
The Leidos Innovations Center has immediate openings for Software Engineers to develop software for Graphics Processing Units at our San Diego office. We specialize in developing scientific and embedded systems that apply advanced signal processing, image processing, and machine learning algorithms to important national defense problems.
In this position you will work with small teams of experienced engineers and scientists to apply your expertise and creativity to develop efficient GPU implementations of complex algorithms. In this role you will have the opportunity take a leadership role in developing the software required to meet project objectives.
This is a full time position located in San Diego, CA with up to 25% telework.
- Develop GPU implementations of advanced signal processing and machine learning algorithms in collaboration with project engineers and scientists.
- Optimize GPU software for high processing efficiency, high throughput, and robust performance on advanced hardware platforms.
- Analyze existing algorithms and software for translation into GPU solutions.
- Suggest algorithm enhancements and optimizations to support efficient GPU implementation.
- Show initiative in solving problems and integrating software to meet end-to-end system objectives.
- Communicate and collaborate effectively with coworkers and customers.
- Support the planning and conducting of field tests for developed systems.
- B.S. degree in Computer Science, Engineering, Mathematics, or related field and 4+ years of prior relevant experience or Master’s Degree with 2+ years of experience.
- Demonstrated experience implementing and optimizing graphics processor kernel code using CUDA, OpenCL, and/or HIP.
- Experience using GPUs in scientific, signal processing, or machine learning applications.
- Current US citizenship
- Must be able to obtain a Top Secret clearance.
- Programming experience with Cuda, OpenCL, C/C++, Matlab, Python.
- Understanding of latest GPU hardware capabilities and memory architectures.
- Experience with Machine Learning concepts and frameworks.
- Familiarity with parallel and real-time computing concepts.
- Experience with development processes spanning requirements through deployment.
- Understanding of concepts used in signal processing, detection, estimation, classification, and machine learning.