AWS Cloud Developer
£60,000-£90,000
Core Responsibilities
- Design and architect AWS infrastructure to meet business requirements, considering factors like scalability, high availability, and security.
- Develop and maintain Infrastructure as Code (IaC) scripts and templates using Terraform and Python.
- Set up and configure Virtual Private Clouds (VPCs), subnets, route tables, and security groups for secure and efficient network communication.
- Implement security best practices and compliance standards using AWS Identity and Access Management (IAM), AWS Config, and AWS Organizations.
- Implement storage solutions such as Amazon S3, EBS, and RDS for data storage and retrieval.
- Build and maintain Continuous Integration/Continuous Deployment (CI/CD) pipelines for application deployment and updates.
- Collaborate with cross-functional teams, including developers, DevOps engineers, and system administrators, to deliver cloud solutions.
- Provide training and mentorship to junior team members and help build the team's expertise in AWS.
- Have a focus on usability and a high quality of finish - outcomes vs output.
- Use a test-driven development approach, ensuring test coverage is at an acceptable level.
- Strong responsibility, commitment, and ownership of deliverables from the design, implementation, and bug fixing, through to release and support.
- Seek new approaches and tooling to simplify and accelerate development.
- Contribute to a good team spirit.
Skills and Requirements
- Expertise in Amazon Web Services (AWS) is essential. This includes knowledge of their services, features, and pricing structures.
- Expertise in Python and AWS CLI to automate tasks and manage cloud resources programmatically.
- Ability to define and manage cloud resources using infrastructure as code tools including Terraform.
- Strong understanding of virtual private clouds (VPCs) and virtual networks (VNets), subnets, and routing configurations to ensure secure and efficient network setups.
- Proficiency in configuring and managing security permissions, roles, and policies, including IAM (Identity and Access Management). Knowledge of best practices for securing cloud environments and compliance standards.
- Understanding of containerization technologies and container orchestration tools for managing containerized applications at scale.
- Knowledge of object storage such as S3 and Azure Blob Storage, block storage, and file storage services, as well as data backup and disaster recovery strategies.
- Knowledge of various database services, including RDS.
- Understanding of load balancers such as AWS ALB to ensure high availability.
- Knowledge of CI/CD, Git, and Jenkins continuous integration and continuous deployment practices, source code management, and tools for automating software delivery pipelines.
- Ability to diagnose and resolve issues in a cloud environment, including identifying the root causes of performance problems.
- Effective communication and collaboration skills working with cross-functional teams, providing technical guidance and documentation.