You can withdraw your consent at any time on our cookie consent page.Configure your cookie settings and confirm to save your settings. You can withdraw or change your consent at any time on our cookie consent page.
D&E - Software Product Owner (HPC Platform) - Tainan
Design Engineering and Architecture
In a nutshell
Design Engineering and Architecture
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.
Ensure there is a platform where this software can run with high performance achieved and availability guaranteed. Design the software platform setup, the Computational Infrastructure virtualization layers, manages firmware updates, and provides a key set of numerical algorithm optimization services to manage the platform. The team is very strong on the technical aspects. A candidate with affinity towards team collaboration and technical excellency, picking up daily issues that arise and guide priority setting is encouraged to bring this forward.
Role and responsibilities
The hands-on job of a software engineer for HPC platform is responsible for the design, review and collaboration with computation infrastructure team for a future proof cloud and virtual compute platform with optimization on both in-house and at HMI’s customers. The stability of the existing platforms in the field and the introduction of the new platform with all its new opportunities and issues. You are profound in troubleshooting virtual computing platform both software and hardware, container virtualization, network, and other software issues even if these go beyond the platform. Robust definition of software & platform development processes, install, and upgrade (ansible, K8s, Container, Docker, shell script) is one of your duties.
Lead a team of 3-5 HPC software developers in the development of HPC related projects, ensuring that project goals are met within timelines and budget constraints.
Lead on daily stand-up meeting and report the project progress to PL and GL
Collaborate with stakeholders to define project requirements, ensuring that the product roadmap aligns with stakeholder needs and goals.
Drive product development from conception to delivery, ensuring that product requirements are met and that product quality meets or exceeds industry standards.
Define, track, and report on key project metrics, including project timelines, milestones, and deliverables.
Facilitate communication between manufacturing and development team (developer and architect) and PL, ensuring that stakeholder expectations are met and that project requirements are understood by all parties.
Manage project risks and issues, identifying potential roadblocks and developing mitigation strategies as needed.
Technical supporting and escalation supporting.
Support applications of the software to HPC in both research and production environments
Identify, design and implement the cloud architecture solutions to meet efficient and effective needs of image processing computing infrastructures for high throughput requirement
Analyze the performance of the computation system to help identify performance bottlenecks.
Enhancement, debug and maintain legacy computation software system.
Implement unit test and have good practice in integration test, regression test and documentation.
Maintenance and creation of Linux OS environment playbooks that are used in software deployment.
Support development teams at San Jose and other HMI-ASML sites where they experience potential software platform issues
Identifying the implications when a move from one software version to the next is required.
8+ years of experience in computer system setup, network management and system integration.
2+ years of experience in product ownership, project management and/or people management
Strong leadership and communication skills, with the ability to lead a team of software developers and collaborate effectively with stakeholders.
Familiarity with software development tools and technologies, including JIRA, Git, and agile project management tools.
Hands-on experience with designing, building, and configuring private cloud-alike computing infrastructure to adapt product requirements and utilizing opensource software.
Experience in programming language in C/C++11 and newer, data structure and operation system.
Experience in network programming, distributed system design.
Experience with Python/ Shell scripting for test execution and scripting purposes.
Skilled in developing automated tests that re-used on virtual platform changes and upgrades ensuring no regression impact is caused.
Experience with Cloud Computing, Virtualization, Container, Parallel Computing.
Experience in Windows/Linux operation system environments with software releases and software configuration management.
Familiar with parallel computing techniques on multi-core computational systems.
Knowledge in semiconductor field is a plus.
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.
Work according to a strict set of procedures within the provided timelines.