Responsibilities:
a) Requirements gathering;
b) Design, implementation and testing of the software;
c) 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 others documents as required in the standard adopted by the Authority;
d) Assist the Authority with day-to-day application support issues; and
e) Liaise with users on the requirement, design and testing issues.
Qualifications and Requirements:
a) Recognised degree in Electrical / Electronic Engineering / Computer Science or a relevant discipline;
b) Been through at least one full Software Development Lifecycle;
c) Experience in writing Requirements Specification, Use Cases, Design Documentation, object-oriented software design and UML modelling;
d) Good knowledge and experience in C++ on Windows and/or Embedded (e.g. QNX, Vxworks, Linux etc) platforms;
e) Experience in multi-threading, socket programming and serial communication;
f) At least 5 years' relevant experience in object-oriented software development;
g) Strong analytical and problem-solving skills;
h) Good written and verbal communication skills in English; and
i) Self-motivated and a good team player.
j) Added advantage if candidate is familiar with one or more of the following technologies:
a. HTML/CSS/JavaScript/JSON
b. Three-tier software architecture
c. Database schema design and interfacing with ODBC, SQL query and MySQL
d. VirtualizationTechnologies (such as hypervisors or containers)
e. MQ/MQTT
f. Secure Communications (e.g. FTPS, HTTPS, etc.)
• Gone through at least one full software development lifecycle (SDLC) with experience in producing SDLC documentation;
• Fresh graduates with relevant knowledge and experience in the mentioned technologies are also welcome to apply;
• Experience in analyzing requirements, designing, developing, and delivering complex enterprise applications in Enterprise Java, web programming on UNIX / LINUX and Windows environment;
• Experience in Automatic Fare Collection (AFC) system;
• Experience in Spring Framework and Spring Boot;
• Experience in Cloud Computing, Kubernetes, Dockers, and AWS
Services like Amazon ECS Fargate, AWS RDS & Lambda will be an advantage;
• Experience in Software Modernization, Containerization, Microservices will be an advantage;
• Experience in database design, development and performance tuning;
• Experience in Kafka, MQ, Service Mesh, Snowflake will be an advantage;
• Familiarity with Agile development methodology and continuous integration will be an advantage;
• Familiarity with EMV and Payment Card Industry Data Security Standard (PCI DSS) will be an advantage;
• Strong analytical and problem-solving skills; and
• Good written and verbal communication skills in English