Job Summary: As a Software R&D Engineer in a semiconductor equipment company, you will be responsible for designing, developing, and optimizing software systems for semiconductor equipment. You will collaborate with a team and be involved in the entire process, from requirements analysis to system implementation, ensuring high-quality, reliable, and performant software. You should possess strong programming skills, software development experience, and teamwork abilities.
Responsibilities and Tasks: 1) Design and develop software systems for semiconductor equipment: Design and develop software systems for semiconductor equipment based on requirements and specifications. Write high-quality and reliable code to enable control, monitoring, and data processing functionalities of the equipment. 2) Perform software requirements analysis and architecture design: Collaborate with the product team to analyze and understand the functionalities and performance requirements of semiconductor equipment. Design software architecture and propose technical solutions based on the requirements. 3) Conduct software coding and unit testing: Write code and perform unit testing based on software design to ensure code quality and stability. Follow coding standards and software engineering practices. 4) Participate in software integration and system testing: Collaborate with team members to perform software integration and system testing, ensuring proper integration with hardware and completeness of system functionality. 5) Perform software performance optimization and troubleshooting: Analyze and optimize software performance, identify and resolve potential issues and bugs. Collaborate with other teams to ensure software system stability and reliability. 6) Documentation and report writing: Prepare and maintain relevant documentation, user manuals, and technical reports for software designs, ensuring traceability and knowledge sharing.
Qualifications: 1) Education and background: Bachelor's degree or higher in Computer Science, Software Engineering, or a related field. 2) Software development experience: Minimum of 3 years of software development experience, familiarity with software development lifecycle and agile methodologies. 3) Programming skills: Proficient in at least one mainstream programming language (such as C++, Java, Python, etc.), with good coding abilities and software debugging skills. 4) Familiarity with embedded system development: Understanding of basic principles and methods of embedded system development, experience in interacting with hardware. 5) Software architecture and design abilities: Strong software architecture and design abilities, familiarity with commonly used design patterns and software development frameworks. 6) Strong problem-solving skills: Ability to analyze complex problems, propose innovative solutions, and troubleshoot software issues.