Introduction to the job We are looking for software engineer who has a passion for designing and coding software for a distributed control system. They should also be excited about the opportunity to integrate AI into existing systems and processes to improve efficiency and efficacy. Join ASML and you will be joining a team that operates in a fast-paced, uniquely innovative and challenging environment to create world class EUV technology within ASML. You will work with software and control system engineers in an Agile team as you develop software in response to the system requirement and design documents. You will get to participate in designing for excellence, keeping in mind all the –cities and –abilities like reusability, modularity, simplicity, maintainability, In addition you will determine the best test methodologies, and contribute in all aspects of the software development, build, test and release cycle. In this role, you will collaborate closely with AI engineers to identify and integrate artificial intelligence into advanced calibration systems. These systems support the operation of highly complex plasma-generating equipment. You will also partner with software architects and functional engineers to design, test, and deploy innovative software solutions for our global customer base. This is a unique opportunity to contribute to cutting-edge technology in a fast-paced, multidisciplinary environment. Control system software overview: The control loops involve data exchange at speeds up to 100 kHz while data collection for diagnostics purposes is done at up to 1Khz rate. There is interaction between control loops running on quad core boards and platform software that runs on IBM bladecenter. Data is stored on board in postgres databases and is shipped via the fab network to data servers in San Diego. Our graphical user interface developed using Qt serves a complex set of users - operators, engineers, scientists and customers. And we don't forget safety, the control system has a Siemens PLC to ensure both human safety is ensured and machine damage is prevented. CPDs are user facing applications that allow operators to perform diagnostics and maintenance. As well as Drivers which provide programmatic interfaces for changing physical components of the machine.