Software Engineer
KLA is seeking a skilled Software Engineer to join our team. This role is ideal for a qualified with expertise in C/C++ and Linux development, focusing on performance engineering, debugging, and building fault-tolerant, scalable software in distributed environments.
Responsibilities:
Develop fault-tolerant and extendable software using object-oriented principles and design patterns.
Utilize application/system profiling utilities like vTune, Nvidia Nsight, and Linux native utilities for performance engineering.
Employ gdb and Linux system utilities for debugging and troubleshooting timing-sensitive distributed applications.
Skills:
Expertise in C/C++, Linux Development, and Performance Engineering.
Hands-on Experience in Application/System Profiling Utilities like vTune, Nvidia Nsight, and Linux native utilities.
Valuable debugging skills in using gdb and Linux system utilities to troubleshoot timing-sensitive distributed applications.
Valuable knowledge of HPC system components — including CPU/GPU architecture, scalable/distributed storage, high-bandwidth interconnects, and cloud-based computing architectures.
Proficiency in Python and Shell scripting languages.
Experience with containerization technologies (Docker/Singularity) for packaging software services along with Kubernetes (Preferred).
Proficiency in parallel programming (MPI, SLURM, OPENMP, UCX, etc.) (Preferred).
Solid understanding and practical experience with Linux OS, kernel features, and networking basics (Preferred).
Familiarity with deep learning and machine learning frameworks and workflows (Preferred).
Qualifications:
Master's Level Degree; or Bachelor's Level Degree.
📌 Software Engineer Chennai
🏢 KLA
📍 Chennai