Software Engineer (Devices)
Responsibilities
The activities required to be performed shall include the following:
- Requirements gathering;
- Design, implementation and testing of the software;
- Preparation and submission of deliverables throughout the software development lifecycles such as Business Rules, Software Requirement Specifications, Software Architecture Document, Design Specification, Interface Specifications, Source Codes, Testing Specification, Operation and Maintenance Manual, Training Manual and other documents as required in the standard adopted by the Authority
- Assist the Authority with day-to-day application support issues; and
- Liaise with users on the requirement, design and testing issues.
The qualificationsrequired are as follows:
- Recognised degree in Electrical / Electronic Engineering / Computer Science or a relevant discipline.
- Been through at least one full Software Development Lifecycle.
- Experience in writing Requirements Specification, Use Cases, Design Documentation, object-oriented software design and UML modelling.
- Good knowledge and experience in C++ on Windows and/or Embedded (e.g. QNX, Vxworks, Linux, Java etc) platforms;
- Experience in multi-threading, socket programming and serial communication.
- Familiar with secure coding.
- At least 3 years' relevant experience in object-oriented software development.
- Strong analytical and problem-solving skills.
- Good written and verbal communication skills in English; and Self-motivated and a good team player.
- Added advantage if candidate is familiar with one or more of the following technologies:
- i. Three-tier software architecture
- ii. Virtualization Technologies (such as hypervisors or containers)
- iii. Secure Communications (e.g. FTPS, HTTPS, etc.)
Working location arrangement:
The candidate shall adhere to the company work arrangement to work in office and/or work from home.