Role: Software Engineer-Algorithms & Optimization
Experience: 2-5 Years
Location: Coimbatore
We are seeking a talented engineer to implement and optimize machine learning, computer vision, and numeric libraries for target hardware architecture, including CPUs, GPUs, DSPs, and other accelerators. Your expertise will be instrumental in enabling efficient and high-performance execution of algorithms on these hardware platforms.
Key Responsibilities:
- Implement and optimize machine learning, computer vision, and numeric libraries for target hardware architectures, including CPUs, GPUs, DSPs, and other accelerators.
- Work closely with software and hardware engineers to ensure optimal performance on target platforms.
- Implement low-level optimizations, including algorithmic modifications, parallelization, vectorization, and memory access optimizations, to fully leverage the capabilities of the target hardware architectures.
- Work with customers to understand their requirements and implement libraries to meet their needs.
- Develop performance benchmarks and conduct performance analysis to ensure the optimized libraries meet the required performance targets.
- Stay current with the latest advancements in machine learning, computer vision, and high-performance computing.
Qualifications:
- BTech/BE/MTech/ME/MS/PhD degree in CSE/IT/ECE
- > 2 years of experience working in Algorithm Development, Porting, Optimization & Testing
- Proficient in programming languages such as C/C++, CUDA, OpenCL, or other relevant languages for hardware optimization.
- Hands-on experience with hardware architectures, including CPUs, GPUs, DSPs, and accelerators, and familiarity with their programming models and optimization techniques.
- Knowledge of parallel computing, SIMD instructions, memory hierarchies, and cache optimization techniques.
- Experience with performance analysis tools and methodologies for profiling and optimization.
- Knowledge of deep learning frameworks and techniques is good to have
- Strong problem-solving skills and ability to work independently or within a team.