Job Description
JOB TITLE: Principal Software Engineer (Cloud Services & DevOps)
DEPARTMENT: Software Development
REPORTS TO: Project Manager
PURPOSE:
We are looking for a highly skilled professional with a strong background in Cloud and DevOps to join our innovative team. In this senior role, you will lead exciting projects aimed at building and enhancing our security-as-code framework within a large multi-cloud environment. You should possess a strong passion for utilizing advanced DevOps tools and methodologies to drive security automation improvements.
KEY RESPONSIBILTIES:
- DevOps Framework Development: Design and build a robust DevOps framework utilizing Infrastructure as Code (IaC) and Continuous Integration/Continuous Deployment (CI/CD) to automate security enforcement across multi-cloud platforms.
- Security Controls Implementation: Create and develop detective and corrective controls across major hyperscale cloud providers, including GCP, Azure, AWS, and OCI.
- API and Microservices Development: Develop APIs and microservices to automate reusable components, enhancing operational efficiency.
- Standardization of Security Procedures: Standardize and automate security operational procedures to streamline workflows and improve security posture.
- Pipeline Analysis: Analyze software and infrastructure deployment pipelines to identify gaps and opportunities for enhancing security.
- IaC Security Solutions: Design and implement reusable solutions for IaC security scanning, collaborating with internal teams for seamless integration.
- Programmatic Security Enforcement: Translate cloud security controls into programmatic enforcement throughout deployment pipelines.
- Event-Based Control Development: Research cloud services, identify event patterns, and build event-based controls to proactively manage security.
- Template Creation for Repeatability: Build IaC templates for consistent and repeatable deployments across key cloud providers.
DESIGN BACKGROUND & SKILLS:
- Software Development Expertise: Proven experience in software development with proficiency in languages such as Python (preferred), Java, PowerShell, NodeJS, or AngularJS.
- Infrastructure Knowledge: Strong understanding of infrastructure concepts and administration, including Linux or Windows, DNS, networking, and firewalls.
- Cloud Provider Proficiency: Extensive experience with hyperscale cloud providers, including GCP, Azure, AWS, and OCI.
- IaC and Security Principles: Thorough understanding of Infrastructure as Code concepts and tools (e.g., Terraform, CloudFormation, ARM) and their application to cloud security.
- Containerization and Orchestration: Familiarity with container technologies and Kubernetes orchestration.
- DevOps Toolset Proficiency: Expertise in DevOps practices and tools, including CI/CD pipelines, Jenkins, Jira, and Rally.
- Agile and SDLC Knowledge: Experience with Agile methodologies and the Software Development Life Cycle (SDLC).
- API Development Experience: Strong background in developing REST APIs and microservices architecture.
- Cloud Certifications: Relevant cloud certifications (Azure, AWS, GCP, OCI) are a plus.
QUALIFICATIONS, SKILLS, AND EXPERIENCE:
- At least bachelor’s degree in Computer Science, Information Technology, Software Engineering or any related discipline.
- 10+ years in the Information Technology field, preferably in Unix/systems environments.
- 7+ years of software development experience, primarily using Python in public cloud settings.
- 5+ years of experience with public cloud services (AWS, Azure, GCP).