The Software Developer is responsible for designing, developing, testing, implementing, and maintaining software applications and technology solutions that support the company's business operations and digital products.

Job Description – Software Developer

Position Title: Software Developer
Employment Type: Full-time
Reports To: General Manager 
Department: Technology & Product Development
Location: Auckland, New Zealand

Position Purpose

The Software Developer is responsible for designing, developing, testing, implementing, and maintaining software applications and technology solutions that support the company's business operations and digital products.

The role will work closely with management, product, operations, compliance, and other technical staff to develop secure, reliable, scalable, and user-friendly systems. The Software Developer will also participate in system integration, technical troubleshooting, software improvement, and the ongoing development of the company's technology platform.

Key Responsibilities

1. Software Development

  • Design, develop, test, deploy, and maintain software applications and systems.

  • Write clean, efficient, maintainable, and well-documented source code.

  • Develop front-end and back-end functionality according to business and technical requirements.

  • Develop and maintain APIs, databases, web applications, mobile applications, and other software components as required.

  • Review existing systems and recommend appropriate technical improvements.

2. System Integration

  • Integrate internal systems with third-party platforms, APIs, payment services, banking systems, and other technology providers.

  • Develop and maintain interfaces between different applications and databases.

  • Troubleshoot integration issues and ensure reliable exchange of information between systems.

  • Support testing and implementation of new technology services and integrations.

3. Testing and Quality Assurance

  • Prepare and conduct unit, integration, system, and user acceptance testing.

  • Identify, investigate, and resolve software defects and technical issues.

  • Monitor application performance and improve system reliability and efficiency.

  • Maintain appropriate development, testing, and production environment controls.

4. System Maintenance and Support

  • Maintain and enhance existing applications based on operational and business requirements.

  • Diagnose software problems and provide technical solutions.

  • Perform software upgrades, patches, configuration changes, and performance improvements.

  • Provide technical support to internal staff and assist with resolving system-related incidents.

5. Security and Data Protection

  • Apply secure software development practices throughout the development lifecycle.

  • Assist with protecting customer, transaction, and company information from unauthorised access or misuse.

  • Work with relevant staff to identify and remediate system vulnerabilities.

  • Ensure software development practices comply with applicable company security, privacy, and compliance requirements.

6. Technical Documentation

  • Prepare and maintain system specifications, technical documentation, API documentation, database documentation, and operating procedures.

  • Document software changes, system architecture, testing results, and deployment procedures.

  • Maintain accurate records of development activities and software versions.

7. Business and Product Development Support

  • Work with management and business teams to understand operational requirements and translate them into technical solutions.

  • Participate in product planning and provide technical input on the feasibility of proposed features.

  • Recommend technologies and system improvements that improve efficiency, customer experience, scalability, and reliability.

  • Assist with the implementation of new digital products and services.

8. Project and Team Collaboration

  • Participate in software development projects from requirements analysis through implementation and ongoing support.

  • Work collaboratively with developers, product staff, operations staff, external vendors, and other stakeholders.

  • Provide regular updates regarding development progress, technical issues, risks, and project milestones.

  • Support technical knowledge sharing and continuous improvement within the organisation.

Key Tasks May Include

  • Developing web-based and mobile applications.

  • Developing and maintaining REST APIs and backend services.

  • Designing and maintaining relational and/or non-relational databases.

  • Integrating payment gateways and external service providers.

  • Developing merchant, customer, and administration portals.

  • Implementing transaction-processing and reporting functionality.

  • Developing automated operational and reconciliation functions.

  • Conducting application testing and debugging.

  • Monitoring and optimising application performance.

  • Managing source code using version-control systems.

  • Supporting cloud-hosted applications and infrastructure.

  • Assisting with software deployment and release management.

Required Qualifications

  • Bachelor's degree or higher qualification in Computer Science, Software Engineering, Information Technology, Computer Engineering, or a related discipline; or equivalent relevant professional experience.

  • Strong understanding of software development principles and the software development lifecycle.

  • Knowledge of modern programming languages, frameworks, databases, APIs, and web technologies.

  • Understanding of software testing, debugging, version control, and deployment processes.

Required Skills and Competencies

  • Strong software programming and problem-solving skills.

  • Ability to analyse complex technical and business requirements.

  • Experience with database design and management.

  • Experience developing or integrating APIs.

  • Good understanding of application security and data protection principles.

  • Ability to troubleshoot software and system problems.

  • Strong attention to accuracy and software quality.

  • Ability to manage multiple development priorities and meet deadlines.

  • Good written and verbal communication skills.

  • Ability to work independently and collaboratively within a multidisciplinary team.

  • Willingness to learn new technologies and adapt to changing business requirements.

Performance Expectations

The Software Developer will be expected to:

  • Deliver software development work within agreed timeframes.

  • Produce reliable, maintainable, and secure software.

  • Minimise software defects and system interruptions.

  • Respond promptly to critical technical issues.

  • Maintain appropriate technical documentation.

  • Contribute to the continuous improvement of the company's technology platform.

  • Maintain confidentiality of company, customer, transaction, and technical information.

General Responsibilities

The employee must:

  • Comply with all company policies and procedures.

  • Maintain confidentiality of commercially sensitive and customer information.

  • Follow applicable privacy, information security, and regulatory requirements.

  • Perform other reasonable duties related to the position as requested by management.

Job image