Key Duties:
* Cloud Infrastructure Design and Implementation: Design, implement, and maintain scalable and reliable cloud infrastructure using AWS, Azure, or Google Cloud. Work with cross-functional teams to understand application requirements and ensure cloud infrastructure meets performance, security, and availability standards. Deploy Node.js applications on cloud platforms and optimise for performance and cost.
* Node.js Development: Develop and maintain server-side logic using Node.js. Collaborate with front-end developers to integrate user-facing elements using server-side logic. Ensure the responsiveness of applications and handle requests from front-end systems.
* Containerization and Orchestration: Utilise containerization technologies such as Docker for packaging applications and microservices. Implement and manage container orchestration solutions (e.g., Kubernetes) to automate deployment, scaling, and management of containerised applications.
* Monitoring and Troubleshooting: Implement monitoring solutions to track the performance and health of Node.js applications and cloud infrastructure. Troubleshoot and resolve issues related to cloud services, infrastructure, and Node.js applications.
* Security: Implement security best practices for cloud infrastructure and Node.js applications. Conduct regular security audits and address vulnerabilities promptly.
* Collaboration and Documentation: Collaborate with cross-functional teams, including developers, DevOps, and IT, to ensure smooth deployment and operation of applications. Create and maintain comprehensive documentation for cloud infrastructure, deployment processes, and configurations.
Attributes and Skills to Succeed:
* You have proven experience as a Backend Engineer or similar role with strong proficiency with Node.js and JavaScript.
* You have solid experience with PostgreSQL and database design.
* Skilled in cloud-native application development
* Strong understanding of AWS skills to build scalable and efficient solutions.
* Understanding of RESTful API design principles.
* You have excellent communication and collaboration skills and previous experience collaborating in a cross-functional team, including Product teams.
* You have strong problem-solving skills and the ability to troubleshoot and debug issues efficiently.
* You are skilled at breaking down complex software development tasks into smaller, manageable chunks, facilitating efficient implementation.
* You are curious and enthusiastic with a drive to constantly learn and acquire new knowledge.
Beneficial Experience (Not Required):
* Knowledge of serverless architecture (e.g., AWS Lambda).
* Experience with containerization and orchestration (e.g., Docker, Kubernetes).
* CI/CD pipeline setup and maintenance.
* Previous experience with TDD.