I. Key Responsibilities The role will focus on firmware and delivering sustainable even strategically innovation to fulfill Asia Pacific R&D team and ensure R&D support long term growth of APEX Tool Group by creating technology and innovation leadership in the market.
- Perform the analysis, design, programming, testing, troubleshooting and modifying of software products and/or customer applications on computer based systems - Understand system and software requirements, jointly define software feature building blocks according to platform setup and availability - Learn and adopt continuous improvement mindset to pursue operational excellence to deliver software on time with world class quality. - Closely work with hardware/software engineers design, verification till release - Closely work with hardware/software engineers in test case definition and bug fixing and perform software test - Closely work with architect (Product owner) in architecture fulfillment and development - Work with global software development team on common code base, platforms and common building blocks, and roadmap - Responsible for the product technical documentation: product release report (focus: design part), documents: follow/ endorse department working procedures. - Arrange smooth technology and knowledge transfer (mainly after SR) to SQA, process engineers and supplier. - Design and development of the test framework and of integration setup - Develop solution towards continuous integration and delivery environment - Improve and innovate on continuous integration approach - Manage and expand relationships with internal and outsourced partners on electrical design and development. - Work independently and can cooperate with global development team. - Very good design integrity - Collaborate with experience designers to establish, maintain and communicate descriptions of users, personas, and experience pillars. II. Requirement - Master or doctor degree of software or electrical engineering, 5+ years’ experience on firmware development. - Proficient in embedded C/C++ language developing, and familiar with assembly language. - Knowledge of ARM Cortex or 51 series architectures - Strong experience in programming with PIC, 51, RISC or ARM core micro-controllers and code optimization - Good understanding of protocols like I2C, SPI, UART, MODBUS and USB - Experience in USB, UART, RS-232, RS-485, WIFI and BT communication with PC side. - Experience in MEMS, external AD, Flash and external EEPROM through I2C and SPI protocol - Experience in segment LCD, TFT LCD and OLED driving - Experience in digital noise cancellation algorithm such as Kalman filter - Proficient in oscilloscope operation - Experience in brushless moto driving is a plus - Experience in Microsoft Visual Studio is a plus - Familiar with x86 architecture is a plus - Capable of creating hardware schematics especially digital electronics - Experience in software unit testing, test case design and test plan creation. - Experience in working with commercial teams, customers, partner or suppliers to deliver results - Strong experience on product development like system definition, system analysis, debugging etc. - Competence of algorithm for embedded system - Skills in problem solving, critical thinking, and clear communication - Have good knowledge of English on both written and verbal, excellent communicational skills - Plus if can use Configuration tool on SVN, GITS and Embedded operating system like open RTOS, (Linux optional)