Role Responsibilities
Responsible for designing, developing, and maintaining backend services, APIs, and data processing components for enterprise applications, ensuring scalability, reliability, performance, and security.
- Design, develop, and maintain scalable, secure, and maintainable backend services, APIs, and integration components.
- Design and implement microservices and distributed systems to support enterprise applications.
- Develop and maintain integrations with internal and external systems, devices, and data sources.
- Design, manage, and optimise relational and NoSQL databases, including schema design, query optimisation, and data integrity.
- Develop data processing, transformation, and analytics services to support business requirements.
- Implement application monitoring, logging, and observability capabilities to improve system reliability and operational support.
- Troubleshoot and resolve backend, integration, and production issues to ensure service availability and performance.
- Collaborate with frontend engineers, data engineers, solution architects, and business stakeholders to translate requirements into technical solutions.
- Implement secure coding practices, including authentication, authorisation, and application security controls.
- Perform unit testing, integration testing, deployment, and production support activities.
- Produce clean, maintainable, well-documented, and testable code, and participate in code reviews.
- Maintain technical documentation, API specifications, and system design artefacts.
- Participate in Agile development activities, including sprint planning, daily stand-ups, reviews, and retrospectives.
- Collaborate effectively with project team members and contribute to knowledge sharing and continuous improvement initiatives.
Experience & Skills Needed
- Experience in backend software development for enterprise-grade applications.
- Strong proficiency in at least one of the following programming languages:
- Python
- Node.js
- Java
- Experience designing, developing, and maintaining RESTful APIs, microservices, and backend integration services.
- Experience working with relational and NoSQL databases, including database design, query optimisation, and data integrity management.
- Experience with message queues, event-driven architectures, and system integration patterns.
- Strong understanding of software design patterns, enterprise application architecture, and secure coding practices.
- Experience developing and deploying cloud-native applications on AWS.
- Familiarity with containerisation and orchestration technologies such as Docker and Kubernetes.
- Experience using GitLab, CI/CD pipelines, and Agile software development methodologies.
- Strong analytical, debugging, troubleshooting, and problem-solving skills.
- Excellent communication and stakeholder management skills, with the ability to work effectively in cross-functional Agile teams.