Software Engineer
ASM
Greater Phoenix Area0–2 yrs5d agovia LinkedIn
About the Role
- Develops software that directly drives the operation of advanced semiconductor manufacturing equipment.
- Work involves robotics, gas delivery systems, temperature controllers, and other critical hardware.
- Visible, real-time impact on how cutting-edge chips are produced.
Key Responsibilities
- Design, develop, test, deploy, and maintain software for semiconductor manufacturing equipment.
- Develop applications for Windows and real-time operating systems.
- Troubleshoot and resolve issues in real-time control systems.
- Diagnose software, electrical, and mechanical issues across complex systems.
- Support escalations involving field engineers and customers worldwide.
- Partner with Quality Assurance and Support teams to reproduce issues and improve regression test coverage.
- Author and review software specifications, design documents, and test plans.
- Investigate issues, perform root cause analysis, and implement effective solutions.
- Contribute to system architecture, design reviews, and the evaluation of new tools and technologies.
- Support customer installations, training, and on-site troubleshooting activities.
- Collaborate with a global team of talented software engineers.
- Contribute to the next generation of semiconductor equipment control software and automation technologies.
- Travel globally and visit leading semiconductor fabrication facilities.
Requirements & Tech Stack
- Strong software development skills in C++.
- Graduating in Fall 2026 or graduated within the past two years.
- Bachelor or Masters degree in Computer Science, Computer Engineering, Computer Systems, or a related field.
- 1+ years of software development experience (or a recently completed Master's degree in a related discipline).
- 0-2 years of professional work experience.
What Sets You Apart
- Machine control software, preferably for semiconductor manufacturing equipment.
- Windows and Windows real-time operating systems.
- Multi-threaded applications.
- Real-time software development.
- Graphical user interface (GUI) development.
- Device drivers and interrupt-driven software.
- Data communications and networking.
- Software development tools, including debuggers, IDEs, build systems, and configuration management tools.
- Reading, understanding, and modifying existing codebases.
- Translating existing functionality into new software solutions.
- Interpreting software documentation, including specifications, design documents, communication interfaces, and API documentation.