Responsibilities:
The successful candidate will be responsible for the design and development of one or more devices that are part of an integrated e-payment Fare Collection System. The successful candidate will also be involved in the software development lifecycle from definition of requirements to design and development, and testing.
The activities required to be performed shall include the following:
Requirements gathering.
- Design and develop software applications for embedded devices.
- Implement and optimize communication protocols (e.g.TCP/IP, HTTPS, FTPS/SFTP, MQTT-S) to establish secure and reliable connections between embedded devices and on-premises/cloud platforms.
- Conduct thorough testing, debugging and troubleshooting of embedded devices to identify and resolve issues related to functionality, connectivity, performance and reliability.
- Preparation and submission of deliverables throughout the Software Development Lifecycles (SDLC) 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 others documents as required in the SDLC
processes. - Assist day-to-day application support issues.
- Liaise with users on the requirementtesting and production issues
Qualifications & Requirements
- Degree in Electrical / Electronics / Computer Engineering / Computer Science or a relevant discipline.
- Developed software in at least one full Software Development Lifecycle.
- Experience in writing Requirements Specification, Use Cases, Design Documentation, and designing software using object-oriented software design and UML modelling
- Good knowledge and experience in C++ on Embedded platforms (e.g. QNX, Vxworks, Embedded Linux).
- Experience in multi-threading, socket programming and serial/USB communication.
- At least 5 years’ experience in object-oriented software development
- Prior experience in following areas Scrum AGILE methodology process is a plus
- Scrum AGILE methodology process
- Develop and integrate embedded devices with cloud platforms
- Strong analytical and problem-solving skills
- Good written and verbal communication skills
- Self-motivated, independent and a good team player.