Job Description Key Responsibilities: Provide software support and assistance to customers and conduct evaluation to find solutions to customers' modification requests. Analyze reported software issues, provide containment action. Implement fix (corrective action), test and qualify fix before releasing software. Work closely with other engineering groups to evaluate the interface between hardware and software and the operational and performance requirements of the overall system Establish realistic timeline estimations for tasks and at the same time ensuring they are remaining on target to meet deadlines. Visit customer sites to support critical field issues as necessary. Review feasibility of enhancement requests, assess effort estimation, prepare software requirement specification document, write code, prepare, and execute unit test. Provide training to other software team members for knowledge sharing. Any other ad-hoc assignments within the scope of main objectives. Requirements Professional engineering bachelor's degree and certifications in Engineering (Electrical/Electronic/Computer/Software/Mechatronics/Robotics), Computer Science, or equivalent. Required skill(s): Expertise in C, C++, Python, VB.NET or C# programming languages. Familiar with Object Oriented Programming (OOP). Familiar with hardware control such as motors, sensors or actuators. Good in database, script, user interface and multi-threading programming Hardworking and able to handle few projects under high pressure. Effective English verbal and written communication skills, able to clearly convey information and ideas. Ability to adapt to different environments and work based on priorities. Strong commitment to learning and continuous improvement, with continuous improvement mindset Sharp problem-solving skills, creative, innovative, out of the box problem solving skills. High sense of urgency for task assigned. Willing to travel about 30% of the time (local/oversea). Interested in practicing software process methodology such as Scrum/Kanban. Knowledge in real-time OS would be an advantage. Experience in the Semiconductor industry is an advantage. Knowledge in developing tools to increase work efficiency would be an advantage