Job Description:
As a Software Engineer at our company, you will play a crucial role in designing, improving, and implementing software solutions for our high-tech products in the semiconductor manufacturing industry. You will collaborate closely with the software manager and other members of the Scrum team, taking ownership of assigned software development tasks. Your responsibilities will include writing, debugging, and maintaining source code, as well as conducting unit tests to ensure the robustness of the developed software.
Key Responsibilities:
· Design and enhance software architecture.
· Execute assigned software application development tasks.
· Report to the software manager and collaborate closely with other software engineers in the Scrum team.
· Take responsibility for writing, debugging, and maintaining source code and conducting unit tests.
· Demonstrate developed features to the company team and product managers, collecting feedback for continuous improvement.
· Provide customer support and on-site debugging as needed.
Requirements:
· Bachelor's, Master's, or Ph.D. degree in Computer Science, Computer Engineering, Electronics, Automation, or related technical fields from a reputable university.
· 5 years of programming experience in C#, .Net/WPF, and C++ on the Windows platform.
· 5 years of professional design and development experience in object-oriented design patterns for scalable, high-performance large software applications.
· 5 years of experience with commercial system software and hardware integration in a production environment.
· Familiarity with open source or popular commercial image processing libraries.
· Experience in factory automation and MES development.
· Prior experience in CUDA-based GPU programming is a plus.
· Experience with detection and measurement devices is a plus.
· Prior experience working in Scrum agile development teams is preferred.