Computer Science internship: creating generator for DSL

ASML

Introduction

The Machine Control & Infrastructure (MCI) department is responsible for the definition and handling of various machine input settings. These settings are used by customers of ASML to define the structure and layout of a wafer along with all settings needed to correctly process wafers in the ASML Lithography machine. Extending the software with new input settings has become a repetitive and time consuming task. To reduce the effort and lead time of this process, the MCI department has developed a data-driven Code Generator to automate it. For this purpose, a Domain Specific Language (DSL) has been created in which input settings can be defined. The Code Generator has been developed with latest technologies, using Xtext to design and create the DSL and Xtend to implement the Code Generator. The Code Generator itself generates state-of-the-art C++ code.

Your Assignment

The definition of new machine settings are formally introduced in a process called System Interface Change (SIC). Currently, data from a SIC proposal is extracted manually and copied over into an APS file. This is a manual step which we would like to automate by creating a generator tool. The tool should extract the data from the SIC proposal, validate the data and generate an APS file. An Application Programming Interface (API) is currently being developed within another department in ASML to read data from SIC proposals. Additionally, a separate checker tool is required that validates the final APS file against the SIC proposal. Hence, the main tasks of this internship include:

  • Investigate the current state of the SIC editor API;
  • Create a design proposal for a new SIC to APS generator and align with stakeholders;
  • Implement the tool according to the design and demonstrate the functionality;

This is a Bachelor graduation internship for around 6 months, working 5 days per week (onsite). The start date of this internship is as soon as possible.

Your Profile

To be a fit for this assignment, you:

  • Are busy with your bachelor's in Computer Science, Software Engineering, ICT, or relevant;
  • Are eager to learn and able to take ownership;
  • Are skilled in ;
  • Have knowledge of Software Development in general;
  • Have experience with C++/Python, application development, TDD;
  • Have good communication skills in English (verbal and written).

Other requirements you need to meet:

  • You are enrolled at an educational institute for the entire duration of the internship;
  • You are located in the Netherlands to perform your internship. In case you are currently living/studying outside of the Netherlands, your CV/motivation letter includes the willingness to relocate;
  • If you are a non-EU citizen, studying in the Netherlands, your university is willing to sign the documents relevant for doing an internship (i.e., Nuffic agreement).

This position requires access to controlled technology, as defined in the United States 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 ASML to proceed with candidates who are immediately eligible to access controlled technology.

Diversity and 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.

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

Read Full Description
Confirmed 15 hours ago. Posted a day ago.

Discover Similar Jobs

Suggested Articles