Senior Software Engineer
Job Summary
As a Senior Software Engineer, you will join the Cloud Architecture team to design and maintain reusable infrastructure components and developer tooling. You will focus on simplifying and standardizing cloud provisioning on AWS through secure, self-service interfaces. The role involves collaborating with platform engineers and DevOps specialists to improve scalability, reliability, and developer experience.
Responsibilities
- Design and deliver reusable cloud infrastructure framework components.
- Ensure release quality, backward compatibility, and automation.
- Improve framework adoption through testing and clear standards.
- Bridge provisioning with Day-2 operations via runbooks.
- Partner with cross-functional teams to fulfill infrastructure needs.
Required Skills
- Expertise in Terraform and AWS services.
- Strong proficiency in Python scripting.
- Solid understanding of CI/CD and automation.
- Knowledge of software design and Infrastructure as Code.
- Experience with testing frameworks and Git workflows.
Job Details
Responsibilities:
- Design and deliver secure, reusable framework components that application teams can adopt easily, with simple, fast, self-service provisioning.
- Own release quality by ensuring backward compatibility, semantic versioning, cross-platform validation, and reliable delivery pipelines.
- Continuously improve framework quality through better test coverage, security compliance, adoption, and faster issue resolution.
- Help external contributors submit high-quality merge requests through clear coding standards, review guidance, and fast feedback.
- Reduce manual operational work by automating testing, publishing, changelog creation, and compatibility checks.
- Bridge the gap between provisioning and Day-2 operations by providing operational patterns and self-service runbooks.
- Partner with application and platform teams to turn infrastructure needs into reusable framework capabilities.
Required Skills:
- Strong experience with Terraform, including modules, providers, state management, workspaces, and version control.
- Solid understanding of software design principles such as API design, separation of concerns, backward compatibility, and semantic versioning.
- Experience with Python scripting and automation for tooling, testing, and infrastructure lifecycle management.
- Knowledge of Infrastructure as Code best practices, including Git workflows, branching strategies, and merge request reviews.
- Familiarity with testing approaches such as unit, integration, mock-based, and contract testing for infrastructure components.
- Experience with CI/CD pipelines (preferably GitLab CI), automated validation, security scanning, linting, and artifact publishing.
- Understanding of AWS services and multi-account environments, including networking, security, storage, compute, and container orchestration.
- Collaborative and curious mindset, with an interest in learning, knowledge sharing, open-source contributions, and working across global teams.
Benefits:
- Flexible working hours and remote work opportunities.
- Continuous learning and professional development support.
- Supplementary health insurance and Employee Assistant Program (EAP).