A.
Job Objective:
We are seeking an experienced Developer with a solid background in C++, CUDA programming, and Linux to guide our development team in building cutting-edge solutions for device integration and high-performance computing tasks. This is a hands-on leadership position that combines technical expertise with team management skills to deliver high-quality software products.
Primary responsibilities:
Software Development:
•
Develop and maintain high-performance applications using C++ and CUDA.
•
Design and implement parallel algorithms for GPUs to accelerate computational workloads.
Performance Optimization:
•
Optimize CUDA kernels for performance, scalability, and memory efficiency.
•
Analyze performance bottlenecks and propose innovative solutions.
Code Review and Testing:
•
Conduct code reviews to ensure adherence to coding standards and best practices.
•
Develop and execute test cases to validate functionality and performance.
Collaboration:
•
Work closely with the software engineering and research teams to understand requirements and deliver robust solutions.
•
Provide technical guidance and mentoring to junior team members when necessary.
Documentation:
•
Write and maintain technical documentation, including design specifications and user manuals.
Required Skills:
•
C++: Strong proficiency in modern C++ (C++11/14/17/20).
•
CUDA Programming: Extensive experience in developing, debugging, and optimizing CUDA applications.
•
GPU Optimization: Familiarity with memory hierarchy, shared memory, streams, and warp-level operations in CUDA.
•
Parallel Computing: Solid understanding of parallel algorithms and multi-threaded programming.
•
Mathematical and Analytical Skills: Strong foundation in linear algebra, calculus, and numerical methods.
•
Tools: Experience with debugging/profiling tools like Nsight, CUDA Memcheck, or similar.
📌 Assistant Engineer (India)
🏢 ACG
📍 India