Overview
We are looking for a Software Engineer to develop and maintain desktop applications and data management software supporting testing activities. The role will focus primarily on Python-based desktop application development, database integration and data processing.
Responsibilities
- Design, develop, debug and maintain Python-based desktop applications for test and data management platforms.
- Develop user interfaces and desktop software using PyQt for data entry, visualization, control and analysis.
- Design and integrate MySQL databases to support test data storage, retrieval, processing and management.
- Develop automated test scripts and software tools for data acquisition and analysis.
- Participate in the development of chip control systems, automated or semi-automated test systems and related software platforms.
- Integrate software applications with external equipment or systems through communication interfaces where required.
- Troubleshoot software, database and system integration issues. Prepare and maintain software design, interface, testing and user documentation.
Requirements
- 4 years of relevant software development experience with a bachelor’s degree or above in Computer Science or a related discipline.
- Strong proficiency in Python with solid programming fundamentals and good coding practices.
- Hands-on experience developing desktop GUI applications using PyQt.
- Good working knowledge of MySQL, including database integration, data querying and data management.
- Experience in desktop application or PC-based software development.
- Experience in test automation, data acquisition, equipment control or data analysis will be advantageous.
- Knowledge of Ethernet communication or hardware interfaces such as SPI, PCIe and eMMC is a plus.
- Strong problem-solving, communication and teamwork skills.