Overview
Skills
Job Details
Position: QA Engineer - Internal Developer Platform (AWS, IaC, Python, Coaching)
Long term contract
REMOTE
Job Description: We are seeking a highly motivated and experienced QA Engineer to join
our team focused on building and maintaining our internal developer platform on AWS. This
platform is critical to empowering our engineering teams to build, deploy, and manage
applications efficiently and reliably. You will play a pivotal role in ensuring the quality,
stability, performance, and security of our platform, with a strong emphasis on infrastructure
as code (IaC) using AWS CloudFormation and Python-based testing frameworks. This is a
unique opportunity to be a hands-on contributor, a quality practices champion, and a mentor
within the team.
Key Responsibilities:
IaC Test Automation: Design, develop, and maintain automated test suites
specifically for our AWS CloudFormation templates and related infrastructure code.
This includes validating resource provisioning, configuration, dependencies, and
lifecycle management.
Python Test Development: Utilize Python and relevant testing frameworks (e.g.,
pytest, unittest, Boto3) to build robust and scalable automated test suites for
functional, integration, and performance testing of the platform's components and
APIs.
Infrastructure Testing: Implement tests to validate the underlying AWS
infrastructure components provisioned by CloudFormation, including networking
(VPC, subnets, security groups), IAM roles and policies, storage solutions (S3, EBS),
and other relevant services.
API and Service Testing: Develop automated tests to verify the platform's APIs and
internal services, ensuring they are reliable, performant, and adhere to defined
contracts.
E2E Infrastructure Testing: Develop and execute end-to-end tests that validate the
complete infrastructure provisioning and application deployment workflows
facilitated by the internal developer platform.
Performance and Scalability Testing: Develop performance testing strategies and
implement tests using appropriate tools to ensure the platform can handle the demands
of internal development teams. Conduct load, stress, and scalability testing of the
infrastructure provisioning and management processes.
Security Testing: Implement security testing practices to identify vulnerabilities in
the infrastructure code and provisioned resources, ensuring compliance with relevant
security standards and best practices.
Test Strategy and Pyramid for Infrastructure: Contribute to the development and
implementation of a comprehensive test strategy for the internal developer platform,
emphasizing a balanced test pyramid with a strong foundation in unit and integration
tests for infrastructure components.
CI/CD Integration: Integrate automated infrastructure and application tests into our
continuous integration and continuous delivery (CI/CD) pipelines to provide timely
feedback on code changes and infrastructure deployments.
Collaboration and Mentorship: Work closely with platform engineers, developers,
and other stakeholders to understand requirements, identify risks, and ensure quality
is embedded throughout the development lifecycle. Provide guidance and mentorship
to other team members on quality assurance best practices and test automation
techniques.
Test Environment Management: Contribute to the definition and maintenance of
test environments that accurately reflect production-like AWS infrastructure
configurations.
Defect Management: Investigate and log defects with clear and concise
reproduction steps, and actively participate in the resolution process.
Continuous Improvement: Participate in Agile ceremonies and proactively identify
opportunities to improve testing processes, tools, and automation frameworks.
What You'll Bring:
6+ years of experience as a QA Engineer with a strong focus on test automation.
Significant hands-on experience in testing infrastructure as code, specifically with
AWS CloudFormation.
Proficiency in Python and experience with Python-based testing
Strong understanding of AWS services and infrastructure concepts, including
networking, security, and IAM.
Proven ability to develop and implement automated tests for APIs and internal
services.
Experience with performance testing tools and methodologies relevant to
infrastructure and platform components.
Exposure to security testing principles and practices in cloud environments.
Familiarity with CI/CD pipelines and integrating automated tests (e.g. AWS
CodePipeline).
Excellent analytical and problem-solving skills with a strong attention to detail.
Strong communication and collaboration skills, with the ability to effectively
communicate technical concepts and advocate for quality.
A proactive and results-oriented mindset with a passion for delivering high-quality
software and infrastructure.
Bonus Points For:
Experience with contract testing for APIs and services.
Familiarity with monitoring and logging tools in AWS (e.g., CloudWatch).
Experience mentoring or leading other QA engineers