Software Engineer
* Research, assess and evaluate existing software systems to identify technology limitations, performance issues and opportunities for improvement.
* Identify, troubleshoot, diagnose and resolve software defects, errors and technical issues using established testing methodologies, coding standards and quality assurance procedures.
* Design, develop, test, debug and maintain high-quality software applications and program code in accordance with technical specifications, system designs and organisational standards.
* Develop and maintain secure, scalable and reliable software solutions, ensuring applications and associated technical security controls operate in accordance with specified requirements.
* Prepare, update and maintain technical documentation, program documentation, user guides and operational procedures to support the ongoing use and maintenance of software systems.
* Collaborate with stakeholders, technical teams and management to provide technical advice and recommendations on software development, system enhancements and technology solutions.
* Assist with the evaluation of software products, upgrades and development initiatives, including preparing technical proposals, feasibility assessments, financial evaluations and cost estimates.
* Recommend appropriate software solutions, system upgrades and technology improvements based on business requirements, technical feasibility, cost-effectiveness and long-term system performance.