Role Overview
The Principal Engineer in GPU & CUDA Programming will lead the design and optimization of GPU-accelerated computing technologies at Synopsys, driving innovation in chip design and semiconductor software solutions.
About the Company
Synopsys is a leader in electronic design automation, specializing in software and IP solutions that lead innovations in the chip design, verification, and manufacturing process.
Experience Level
The position requires a minimum of 10 years of experience in software engineering, particularly in GPU computing and algorithm design.
Key Responsibilities
- Optimize existing GPU implementations for ILT (Inverse Lithography Technology) software.
- Design and develop new algorithms to manage large-scale geometric datasets.
- Collaborate with cross-functional teams for integrating GPU features into solutions.
- Lead performance testing and benchmarking to enhance GPU algorithm throughput.
- Conduct research on GPU technology advancements for product integration.
- Engage with customers and hardware vendors to ensure effective solutions.
Required Skills and Experience
- Advanced knowledge of CUDA or similar technologies for GPU computing.
- Proficient in programming languages including C/C++ and Python.
- Strong understanding of algorithms and data structures with a focus on performance optimization.
- Experience in computational geometry, specifically algorithms like Beziers, NURBS, and B-splines.
- Knowledge in Optical Proximity Correction and Inverse Lithography Technology is a plus.
Education Requirements
A Bachelor’s, Master’s, or Ph.D. in Computer Science or a related field is required.