Software Engineer - Senior
Fusion
Full-TimeRemoteNew Zealand
Posted on 21/10/2026
About the Role
We are looking for a motivated and talented Software Engineer to join our engineering team. In this role, you will be responsible for designing, developing, testing, and maintaining high-quality software applications that support business goals and user needs.
You will work closely with cross-functional partners, including product managers, designers, QA engineers, and other developers, to deliver scalable, reliable, and user-friendly solutions. This position is well suited for an engineer with 2–4 years of professional experience who is eager to contribute across the software development life cycle and continuously improve both product quality and engineering practices.
What You'll Do
- Design, develop, test, and maintain software applications based on business and technical requirements.
- Write clean, efficient, reusable, and maintainable code.
- Collaborate with product managers, designers, QA engineers, and fellow developers throughout the development process.
- Build and integrate RESTful APIs and third-party services.
- Troubleshoot software defects, performance issues, and application bottlenecks.
- Write unit tests and support automated testing efforts to improve software quality.
- Participate in code reviews, sprint planning, Agile ceremonies, and technical discussions.
- Maintain technical documentation to support development, deployment, and ongoing maintenance.
- Contribute to continuous improvement initiatives across engineering workflows and application quality.
- Help ensure that applications meet expectations for security, performance, scalability, and reliability.
Key Responsibilities
- Own the design, development, and maintenance of software features and application components.
- Deliver solutions that align with business requirements, technical standards, and user expectations.
- Uphold coding standards and software development best practices through consistent implementation and peer review.
- Partner effectively with cross-functional stakeholders to move projects from requirements through delivery.
- Support application stability by identifying, diagnosing, and resolving defects in a timely manner.
- Contribute to the quality and resilience of systems through testing, documentation, and iterative improvement.
- Help maintain secure, scalable, and reliable applications that can support evolving product needs.
- Participate actively in Agile processes and contribute to team discussions on architecture, implementation, and delivery.
Requirements
- Bachelor's degree in Computer Science, Software Engineering, Information Technology, or a related field, or equivalent practical experience.
- 2–4 years of professional software development experience.
- Proficiency in at least one programming language, such as Java, JavaScript, Python, or C#.
- Experience with front-end or back-end development frameworks.
- Understanding of databases, SQL, and data modeling.
- Knowledge of REST APIs and client-server architecture.
- Familiarity with Git and version control systems.
- Understanding of the software development life cycle and Agile methodologies.
- Strong analytical, problem-solving, and debugging skills.
- Good communication and teamwork abilities.
Nice to Have
- Experience working across both front-end and back-end development environments.
- Familiarity with automated testing practices beyond unit testing.
- Exposure to performance optimization and application scalability considerations.
- Experience contributing to technical documentation and knowledge sharing.
- Comfort participating in collaborative code reviews and cross-functional technical discussions.
- A proactive mindset toward continuous improvement in engineering processes and product quality.
Why Join Us
- Work on meaningful software applications that directly support business requirements and user needs.
- Collaborate with a cross-functional team of product, design, QA, and engineering professionals.
- Contribute across the full software development life cycle, from design through maintenance and improvement.
- Strengthen your technical skills through hands-on development, code reviews, testing, and problem-solving.
- Be part of an engineering environment that values quality, scalability, reliability, and continuous improvement.
Benefits & Perks
- Opportunity to work on diverse software development challenges in a collaborative engineering team.
- Professional growth through hands-on experience across design, development, testing, and maintenance.
- Exposure to cross-functional collaboration with product, design, QA, and engineering stakeholders.
- A team environment that supports technical discussion, peer feedback, and continuous learning.
- Involvement in Agile ways of working, including sprint planning, team ceremonies, and iterative delivery.
- Opportunities to build expertise in scalable, reliable, and user-focused software solutions.
