Front-End Developers | Back-End Developers
C++ | OOP
Software Engineer Junior JD
- Software Development
- Execute software development life cycles which includes planning, analysis, design, implementation and testing.
- Review product/feature requirements and write software requirement specification documents.
- Prepare and execute unit test case for every features develop or bug fixes if necessary.
- Tag along with Software Quality Assurance Engineer to solve every software defects found in handler software.
- Maintain documentation for any new features development.
- Software Support
- Work on field escalation based on inputs from Team Lead and Field Service Engineers.
- Analyze and understand field escalation based on software logs.
- Provide containment /workaround for software issue reported.
- Fix field issue by applying software changes.
- Prepare and review Software Requirement Specification (SRS) of new feature request with all stackholders.
- Execute software development life cycles, which includes planning, analysis, design, charting, implementation and testing.
- Plan, schedule and manage assigned projects with minimal guidance.
- Ensure Quality delivery of software feature within the agreed timeline.
- Analyze reported software issues, providing containments and produce detailed report out of it.
- Implement solution/fix for reported software issues.
- Manage interactions and communications with Product, Hardware engineering, and Software QA engineering teams.
- Establish realistic timeline estimations for tasks and at the same time ensuring they are still remain on target to meet deadlines.
- Prepare and maintain software technical documentations.
- Visit customer sites to support critical field issues as necessary.
- Provide technical sharing, guidance and code review to Junior Software Engineers.
- Bachelor's Degree in Computer Science/Information Technology, Engineering (Computer/Telecommunication), Engineering (Electrical/Electronic), Engineering (Mechatronic/Electromechanical) or equivalent.
- Required skill(s): Strong background in C++ (Object Oriented Programming).
- Minimum 10 years experienced in software engineering.
- Minimum 5-years experienced in semiconductor / machine automation industry.
- Able to work with complex software architecture, which leverages advanced Object Oriented Design principles.
- Good technical writing abilities including software design specification and software requirement specification.
- High sense of urgency for task assigned.
- Strong commitment to code quality and timeline.
- Strong commitment to continuous productivity improvement.
- Flexible to travel.
- Effective English verbal and written communication skills, able to clearly convey information and ideas.
- Diplomatic, patience and good listening skills.
- Creative, innovative, out of the box problem solving.