KLA Careers

Software Engineer

Company Overview

Calling the adventurers ready to join a company that's pushing the limits of nanotechnology to keep the digital revolution rolling. At KLA, we're making technology advancements that are bigger—and tinier—than the world has ever seen.

Who are we?  We research, develop, and manufacture the world's most advanced inspection and measurement equipment for the semiconductor and nanoelectronics industries. We enable the digital age by pushing the boundaries of technology, creating tools capable of finding defects smaller than a wavelength of visible light. We create smarter processes so that technology leaders can manufacture high-performance chips—the kind in that phone in your pocket, the tablet on your desk and nearly every electronic device you own—faster and better. We're passionate about creating solutions that drive progress and help people do what wouldn't be possible without us.  The future is calling. Will you answer?


Engineers in the HPC Software team will be working on building and maintaining infrastructure necessary for large scale experimentation and deployment of HPC solutions.  Domains in which a successful candidate will be expected to contribute will include data management and data loading, support for machine learning and deep learning model training, experimentation and deployment.


Although familiarity with Machine Learning and Deep Learning solutions would be a big plus, this is primarily a Software Engineering position.  Successful candidates are passionate about software and will have exceptional skills and hands on experience with development in C/C++ and Python in a Linux environment.  Deep conceptual understanding of multi-threaded, multi process and distributed software systems is necessary.


Essential Skills

1.     Object Oriented Design & Programing in Java or C++

2.     Scripting languages like Java Script, Python;

3.     Data Structures and algorithms

4.     Linux System Programming

5.     Distributed systems


Desirable Skills

1.     Cloud technologies for network, storage, containerization and compute clusters.

2.     Building and configuring Linux kernels, and designing and troubleshooting network infrastructure;

3.     Linux Device Driver Development

4.     Understanding of various networking stacks

5.     GPU Architectures and CUDA (CuGraph, CuData, CuML etc).

6.     Distributing computing frameworks like Apache Spark, DASK;

7.     Creating the techniques and methods to integrate multiple hardware and software subsystems to solve advanced technical challenges;

Data science skills to acquire, transform and present data from various sources to build powerful debugging and analysis software.

Minimum Qualifications

Bachelor's Level Degree with at least 1 years of experience.

Equal Employment Opportunity

KLA is an Equal Opportunity Employer. Applicants will be considered for employment without regard to age, race, color, religion, sex, sexual orientation, gender identity, national origin, protected veteran status, disability, or any other characteristics protected by applicable law.

Related Careers