Job Responsibilities: Cyber Security Division ( CySD) Sitting within Data & Technology Architecture Dept, the Python Developer is responsible:
• Solution the design and develop the software using waterfall/Agile methodology.
• Perform investigation, troubleshoot issues by developing scripts, SQL queries.
• Work closely and collaborate with the SOC Analysts and Infrastructure Engineers/System Owners for scope, schedules, requirements, tests, bug fixes, etc.
• Work with deployment team/DevOps team on setting up continuous integration, build and release automation.
• Discuss, analyse and recommend design improvements or corrections to developers throughout the development process.
• Develop and establish quality assurance deliverables and testing framework, including create and maintain test plans and test cases in accordance with changing requirements, throughout development.
• Conduct performance and load tests, validate the output and expected outcomes and feedback on improvement required.
• Conduct application performance and security testing to ensure we have a robust and secured system in place.
• Provide estimates for stories during sprint planning for Agile project.
• Convert acceptance criteria into automated unit tests cases.
• Support production issues
• Involve in application deployment to the various environments.
• Provide proper documentation to developed tools.
• Knowledge transfer to users.
Requirement
MUST have relevant Software Development experience and relevant software development certifications in Python will be an added advantage.
• Certified Software Testing Professional and/or Certified Software Quality Analyst or an equivalent certification will be an added advantage.
• Experience with scikit-learn and machine learning projects will be an added advantage.
• ICT Assessment Certification for Software Developer (NUS-ISS) will be an added advantage.
• Demonstrable skills in Windows, *nix, and/or Cloud development.
• Demonstrate knowledge of automated software testing methodologies such as unit testing, integration testing, functional testing, test driven development (TDD) and behavior driven development (BDD).
• Ability to troubleshoot complex issues ranging from system resource, application stack traces to cloud API events.
• Track record in implementing systems with high availability, high performance, high security hosted at various data centres or hybrid cloud environments will be an added advantage.