20 days ago - req25738

Principal Engineer (Remote)

In a nutshell


San Jose - CA, US


*This is a full-time 100% remote position*

This requisition is a pipeline requisition in anticipation of potential needs.

ASML US, including its affiliates and subsidiaries, bring together the most creative minds in science and technology to develop lithography machines that are key to producing faster, cheaper, more energy-efficient microchips. We design, develop, integrate, market and service these advanced machines, which enable our customers - the world’s leading chipmakers - to reduce the size and increase the functionality of their microchips, which in turn leads to smaller, more powerful consumer electronics. Our headquarters are in Veldhoven, Netherlands, and we have 18 office locations around the United States including main offices in Chandler, Arizona, San Jose and San Diego, California, Wilton, Connecticut, and Hillsboro, Oregon.

Job Mission

The mission of the team is to develop an in house high performance computation cluster system for high throughput eBeam inspection tool. The high performance computation system handles large data set, high data transfer rate and process computation heavy algorithms. Team is responsible for the design and implement a future proof software framework on top of cluster with dozens to hundreds or even more heterogeneous super-computer nodes. Review and collaborate with other functional groups on product requirements. Design and implement, Job Submission layer to handle front-end connection; Resource Management and Job Scheduling Layer to queue and distribute jobs basing on priority and resource requirement on heterogeneous resource pool; Job Process Layer to process variety of jobs in single or multiple steps with fault tolerance.

This position may require access to controlled technology, as defined in the Export Administration Regulations (15 C.F.R. § 730, et seq.). Qualified candidates must be legally authorized to access such controlled technology prior to beginning work. Business demands may require the Company to proceed with candidates who are immediately eligible to access controlled technology.

Job Description

Support applications of the software to HPC in both research and production environments
Design and implement the distributed computation system using C++ in Linux environment.
Analyzes software requirements and determine feasibility solution within time and cost constraints.
Using design pattern and OOD to formulate and design software modules, using scientific analysis and mathematical models to predict and measure outcome and consequences of the design.
Enhancement, debug and maintain legacy computation software system.
Implement unit test and have good practice in integration test, regression test and documentation.
Software issue analysis, debugging and technical support.
Analyze the performance of the computation system to help identify performance bottlenecks.
Design and develop techniques and algorithms to improve the performance of the software across multiple application domains.
Support applications of the software to HPC in both research and production environments


Bachelor’s degree in Computer Science, Mathematics, Science or related fields.Higher degree desired.


Expert programming knowledge in C/C++, data structure and operation system.
Experience implementing high-quality software in C++, in the field of High Performance Computing (HPC).
Experience in Object-Oriented design and concepts.
Parallel Programming experience in HPC applications (i.e. OpenMP, Distribution Computing, gRPC, etc.)
Experience in network programming, distributed system.
Experience in algorithm design, parallel computing and algorithm optimization.
Research experience by developing mathematics models and algorithms for data analysis and performance improvement.
Knowledge in semiconductor field is plus.
Excellent written and verbal communication skills.

Personal skills

Can observe and respond to people and situations and interact with others encountered in the course of work.
Can learn and apply new information or skills.
Must be able to read and interpret data, information, and documents.
Strong customer focus and commitment to customer satisfaction through prioritization, quality, efficiency and professionalism.
Ability to complete assignments with attention to detail and high degree of accuracy.
Proven ability to perform effectively in a demanding environment with changing workloads.
Result driven-demonstrate ownership and accountability.
Identifies bottlenecks and drives improvements.
Work independently or as part of a team and follow through on assignments with minimal supervision.
Demonstrate open, clear, concise and professional communication.
Ability to establish and maintain cooperative working relationships with co-workers and customer.

Other information

EOE AA M/F/Veteran/Disability