8 days ago - J-00230827-601

Sr. Software Algorithm Engineer

Research & development

Computer science & software engineering

Electrical engineering

Data science

In a nutshell


San Jose - CA, US


Research & development

Job Category

Computer science & software engineering, Electrical engineering, Data science

Introduction to the job

In the software research and development (R&D) team, you will be a key member to develop high quality software and contribute to all phases of the development process from designing to release. You must be responsible for independently developing and testing the algorithms and turn general requirement definitions into functioning modules. A good candidate should exhibit strategic thinking, be self-motivated and collaborative with team members.

Role and responsibilities

We are looking for a Senior Software Engineer to implement Algorithm to process SEM images. Requirements include a solid understanding in data structures and Algorithms of Image processing, with 5 years’ experience in C++ and/or other object oriented software developments. This position requires programing experience in multi-threaded applications in Linux environments

What you will be doing at this position:

  • Designing and developing algorithms in C++ to improve runtime and accuracy to process SEM images. The task includes developing new algorithm and data structures from the scratch, adopting known solutions via using a third party library or via reimplementation from a known/published algorithms.
  • Integrating algorithms into module(s) that can be used in a distributed computing system in a Linux environment. The task includes interface design and optimizing data distribution to maximize the efficiency of the algorithms in a distributed environment.
  • Integrating open source libraries, such as OpenCV or Tensorflow, into our applications.
  • Writing unit test for algorithms and modules.
  • Integrating existing modules into an end-to-end solution in C++.
  • Evaluating pro and cons among solutions and suggesting the best solutions to fulfill the requirements.
  • Keeping good documentation of design and implementations.
  • Debugging.

Education and experience

  • Ph.D. or M.S. in Computer Science, Electric Engineering, Physics, Applied Mathematics, or related areas
  • Five or more years of C++ development experience in Image processing
  • Solid understanding about data structure and Algorithm of Image processing, including image quality enhancement, template matching, feature recognition/segmentation, image correlation, denoising, edge detection, and FFT.
  • Good knowledge of object-oriented design and design patterns
  • Familiar with Linux environment and understand multi-threading/processing software development
  • Familiar with scripting programming languages, such as Python, is a plus
  • Experience on machine learning is a plus.
  • Experience in processing SEM images is a good plus


Working at the cutting edge of tech, you’ll always have new challenges and new problems to solve – and working together is the only way to do that. You won’t work in a silo. Instead, you’ll be part of a creative, dynamic work environment where you’ll collaborate with supportive colleagues. There is always space for creative and unique points of view. You’ll have the flexibility and trust to choose how best to tackle tasks and solve problems.
To thrive in this job, you’ll need the following skills:

  • Great problem-resolving skills
  • Strong verbal and written communication skills

Diversity & Inclusion

ASML is an Equal Opportunity Employer that values and respects the importance of a diverse and inclusive workforce. It is the policy of the company to recruit, hire, train and promote persons in all job titles without regard to race, color, religion, sex, age, national origin, veteran status, disability, sexual orientation, or gender identity. We recognize that diversity and inclusion is a driving force in the success of our company.

Other information

EOE AA M/F/Veteran/Disability

Need to know more about applying for a job at ASML? Read our frequently asked questions.

  • Routinely required to sit; walk; talk; hear; use hands to keyboard, finger, handle, and feel; stoop, kneel, crouch, twist, reach, and stretch. Occasionally required to move around the campus.
  • Occasionally lift and/or move up to 20 pounds.
  • U.S. Flexible Work policy may be available to employees who work in conductive roles.Mutually-beneficial alternative work arrangement must be approved by manager – hybrid working Model.


Learn more about this job