Software Engineer
Summary
Build and maintain enterprise-grade full-stack applications, cloud-native infrastructure, and Kubernetes-based systems using Node.js, Vue.js, and SQL databases.
Are you a seasoned software engineer who enjoys solving complex technical challenges across the full technology stack? We're looking for a Software Developer to join a high-performing technology team, where you'll play a key role in designing, developing, and supporting enterprise applications while driving innovation across software development, infrastructure, and cloud-native technologies.
This is a hands-on role suited to someone who thrives in a modern development environment and enjoys taking ownership of systems from architecture and development through to deployment and operational support.
About the Role
You'll be responsible for developing scalable software solutions, maintaining modern cloud-native infrastructure, and ensuring the stability, security, and performance of business-critical applications.
Working across software engineering, DevOps, databases, Kubernetes, and system architecture, you'll contribute to the continuous improvement of technology platforms that support business operations.
Key Responsibilities
- Full-Stack Software Development
- Build scalable RESTful APIs and responsive front-end applications.
- Develop clean, reusable, and maintainable code following software engineering best practices.
- Participate in application design, architecture, testing, and deployment activities.
- Design and maintain scalable application architectures across multiple services and shared components.
- Promote best practices for modular application design, code reuse, and maintainability.
- Contribute to long-term technical strategy and architectural improvements.
- Administer and support Kubernetes environments, ensuring platform availability, scalability, and reliability.
- Manage container orchestration, storage, networking, and cluster performance.
- Support Linux-based infrastructure and production environments.
- Build, maintain, and improve CI/CD pipelines to streamline software delivery.
- Support containerisation, automated deployments, and release management.
- Drive continuous improvements to development and deployment processes.
Database Administration
- Design, maintain, and optimise relational databases to support high-volume applications.
- Improve database performance through query optimisation, indexing, and schema enhancements.
- Ensure data integrity, availability, and reliability across production systems.
Security & Networking
- Implement secure application and infrastructure practices.
- Support authentication, authorisation, encryption, and secure communication protocols.
- Assist in maintaining secure and resilient production environments.
Monitoring & Production Support
- Monitor application health, performance, and system reliability.
- Investigate and resolve production incidents through structured troubleshooting and root cause analysis.
- Collaborate with development and infrastructure teams to minimise downtime and improve system stability.
Documentation
- Produce and maintain technical documentation covering system architecture, APIs, operational procedures, and troubleshooting guides.
- Ensure documentation remains accurate and aligned with evolving solutions.
Requirements
Qualifications
- Degree or Diploma in Computer Science, Software Engineering, Information Technology, or a related technical discipline.
Experience
- Approximately 7+ years' experience in software development, systems engineering, DevOps, or infrastructure support.
- Proven experience delivering enterprise-grade software solutions throughout the full software development lifecycle.
- Strong experience working within modern development and cloud-native environments.
Technical Skills
Experience with many of the following technologies:
- Node.js
- Vue.js (Vue 3)
- SQL, MariaDB and MySQL
- Containerisation technologies
- Git and source control
- System architecture and application design
Advantageous Skills
- C#
- Microsoft SQL Server
- DevOps tooling and automation frameworks
Ideal Candidate
You'll be successful in this role if you:
- Take ownership of technical solutions from concept through to production.
- Enjoy solving complex technical problems across software and infrastructure.
- Have a strong analytical mindset and excellent troubleshooting skills.
- Can balance immediate operational priorities with long-term architectural improvements.
- Communicate effectively with both technical and business stakeholders.
- Thrive in a collaborative environment while being equally comfortable working independently.
- Remain calm and solution-focused when supporting critical production systems.