AWS Cloud Developer


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.