Job Properties
  • Job Type
    Full-time Position
  • Background
    IT
  • Languages
    English
  • Experience Required
    1 - 2 Years
  • Degree Required
    Bachelor
    • Province
      Veldhoven
    • Date Posted
      October 19,2020
    • Career Consultation
    • Career Consultation
    • COVERLETTER CHECK
    • CV CHECK
    • internship package
    • Premium Package

    Java EE Developer Distributed Computing Platform

    Introduction

    ASML is one of the world’s leading manufacturers of semiconductor-chip-making equipment. A majority of the world’s microchips receive their critical lithographic patterning in machines made by ASML. In addition, ASML produces metrology tools and advanced applications to analyze and optimize the performance of the customer production process. A large part of the development work linked to these tools is software driven. When people think ‘software’, they often think of companies like Google or Microsoft. Even though ASML is classified as a hardware company, we in fact have one of the world´s largest and most pioneering Java communities

    Job Mission

    Develop software services in a Java cloud native driven microservice architecture. The components you will be working on deliver an abstraction layer between the ASML core equipment (scanners and metrology, collection of data) and the intelligent correction software engines that rely on this data. Next to the collection and storage of the data also deliver scheduling, notification and other generic building blocks. The software platform you deliver shall simplify the development and updates of the correction engines and enable future data driven use cases to be developed on top of your platform.

    Job Description

    As a Virtual Compute Platform (VCP) platform Java developer you are part of a Scrum Team. Our Scrum Teams are relatively large; teams are composed of about 8-10 engineers. You develop in Java 8, migration to Java 11 is planned. The development is done using a Bamboo based CI/CD pipeline. You test your code at several stages before you deliver. We have automated unit and some integration tests. We measure coverage in SonarQube. Coverage levels are extremely high.
    As we develop platform software you will also be able to work on larger test clusters composed of many compute, edge, storage and master nodes. We apply open source technologies like Kafka as well as some licensed products. Current platform architecture is based on DC/OS, we invest the introduction of K8S on this platform.

    Responsibilities of the Platform Java Developer:
    • Development of platform Microservices using Java 8 / Java 11
    • Review detailed designs, contribute
    • Increase stability and reliability of VCP by automated testing and automation
    • Improve the functionality and reliability of VCP as a platform
    • Consider the ASML use case, platform running on site with complex access procedures; ensure logging, observability and telemetry are in place to support troubleshooting of the most complex issue
    • Apply JIRA hygiene in order to minimize administrative overhead for project planning tasks conducted by PO, SM and partially team.
    • Issue investigation and resolution. Take up an issue, bite into it and do not let go until understood and resolved. Ask for support when this is the more efficient path to solve but do not allow issue tennis.
    • Continuously improve to drive #issues down
    • Act as an expert, not as an executioner; help clarify requirements before start and during development. Seek understanding and be able to explain to drive the creation of the right product in the right timeframe.

    Education

    Highly valued qualifications & experiences:
    • Bachelor or Master’s in Computer Science or related area

    Experience

    Required qualifications & experiences

    • Knowledge of distributed computing systems, practical experience
    • Experienced in build and release infrastructure, Maven, Nexus, Bamboo, Github
    • Developed Java for a few years (> 3)
    • Developed Microservices, large experience with Spring Boot
    • Experience with database technologies such as SQL, MongoDB
    • Experience with distributed message queues/logs such as Kafka, RabbitMQ
    • 4+ years’ experience in topics above
    • Understand inter process communication and JVM peculiarities.
    • Experienced Java EE developer, fluent in Java 8, Java 11
    • Experience with new technology introduction @ zero downtime including data migration
    • Fan of automatic testing and qualification, if can be part of CI/CD pipeline.

    Personal skills

    • Problem solving / Go-fix mentality
    • Structured thinking, structured communication
    • Automate testing over repeated manual test
    • Positive attitude
    • Can balance short term business needs and long-term stability, can manage technical debt
    • Broad Obsession about e.g., Java, Kafka, Mongo, Microservices
    • Ability to dive deep into a specific topic even though not being involved in earlier development
    • Evolutionary mindset over drive to redo from scratch
    • Think logically and use that ability to solve problems
    • hands on mentality
    • Have fun working in a team, even under corona conditions
    • Available to work (remotely) outside regular office hours when it proves that attempt to build a fail-safe system was not yet successful. We really want this to be an exception, not a rule

    Context of the position

    You will be working at Business Line Applications. The BL Apps develops Analytics & Control solutions that improve the accuracy of performance metrics (such as overlay, focus, critical dimension) as measured on the end product of a fab process (wafers with chip structures). The foundation underneath these processing algorithms is a distributed computing platform assembled in house and as said, installed at ASML customers WW. The platform is developed in ASML and applies proven cloud technologies. As such experience on cloud is a prerequisite.
    There are 3 Java teams, around 20 engineers, Product Owners and Scrum Masters working on the platform layers. In 2021 we foresee a growth with an additional team.
    The application development teams that develop the business critical correction engines (your customers) consist of 15-25 teams.

    Other information

    Keywords: Java8, Java11, Spring, RabbitMQ, Messaging, Kafka, NoSQL, Mongo, Distributed Architecture, Cloud/AWS experience, DC/OS, Hadoop, HBASE, K8S

     
    Open Positions from ASML
    Related positions