Role: Software Engineer (System)
Contract Duration: 3 years
Work Timing: Office Hours
Responsibilities
Working with the development team, you will be responsible for the design, development, documentation, testing and delivery of the software solution for an Automatic Fare Collection (AFC) system or a high volume and performance intensive back office of an AFC system.
The activities required to be performed shall include the following:
• Requirements gathering;
• Design, development, and maintenance 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 others 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.
Job Description:
(a) Responsibilities:
Working with a back office development team, you will be responsible
for the design and delivery of the software solution for a high volume
and performance intensive back office of an Automatic Fare Collection
(AFC) system.
The activities required to be performed shall include the following:
• Requirements gathering;
• Design, development, and maintenance 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 others 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.
(b) Qualifications & Requirements:
• Recognised degree in Computer Science, IT or engineering with at least 5 years’ relevant experience in software development;
• Gone through at least one full software development lifecycle (SDLC) with experience in producing SDLC documentations;
• Extensive experience in analysing requirements, designing, development and delivering complex enterprise applications in Java/JEE, web programming on UNIX / LINUX and Windows environment;
• Proficiency with database programming such as SQL and DAO, and relevant experience with MySQL, PostgreSQL
• Experience in Spring Framework and Spring Boot;
• Experience in Software Modernization, Containerization, Microservices;
• Experience in Agile development methodology and continuous integration;
• Experience in writing Requirements Specification, Use Cases, Design Documentation, object-oriented software design and UML modelling;
• Proficiency in AWS ECS and Docker containerization, with a solid understanding of DevOps principles and best practices
• Strong analytical and problem-solving skills; and
• Good written and verbal communication skills in English.
• Self-motivated and a good team player.
• Added advantage if candidate is familiar with one or more of the following technologies: -
- Experience in Message Queues and/or Solace;
- Experience in Cloud Computing, Kubernetes & Dockers, AWS Services like Amazon ECS Fargate, AWS RDS & Lambda;
- Experience in Automatic Fare Collection (AFC) system;
- Experience in EMV and Payment Card Industry Data Security Standard (PCI DSS);
- Experience in Microsoft Active Directory
- Experience in HTML / CSS / JavaScript / JSON
- Experience in Secure Communications (SFTP, HTTPS, etc.)
- Experience in Angular or equivalent
- Experience in Java Unit Tests frameworks
EA License # 14C6941