Staff Software Engineer
We are seeking an experienced and technically influential Senior Software Development Engineer to join our Cloud Tooling and Pipelines team. This pivotal team is responsible for the design, development, and maintenance of our core Continuous Delivery (CD) platform (leveraging Spinnaker and custom tooling), Infrastructure as Code (IaC) execution engines (primarily Terraform), and a suite of supporting microservices. These systems are critical for enabling and managing our extensive resource footprint across AWS ECS and EKS.
As a Senior Software Development Engineer, you will be a key contributor, driving the implementation of scalable, reliable, and secure software solutions that automate infrastructure provisioning and application deployments. Your deep expertise in software engineering principles and cloud-native development will be essential in building and enhancing our critical tooling for infrastructure provisioning, vulnerability management, and IaC deployments. You will also play a vital role in mentoring other engineers and influencing the team's technical roadmap. If you have a strong passion for building robust software systems that empower operational efficiency at scale, we encourage you to apply.
Key Responsibilities
Design and Develop Core Platform Components: Lead the design and development of scalable and reliable microservices and tools that form the backbone of Okta's Continuous Delivery (CD) platform (including components for Spinnaker, Terraform, and custom tooling).
Build Infrastructure as Code Automation: Develop sophisticated software solutions and APIs that empower engineering teams to provision and manage infrastructure, execute production changes, and deploy code with high reliability and efficiency.
Architect and Implement Deployment Workflows: Contribute to the architectural design and hands-on implementation of robust CD pipelines and Terraform-based IaC workflows, ensuring scalability, reliability, and security for application deployments.
Develop High-Quality Automation Software: Write clean, efficient, and well-tested code (primarily in Java, Python, or Go) for microservices with a strong focus on automation, operational excellence, and self-service capabilities.
Collaborate for Operational Efficiency: Partner closely with DevOps, SREs, and Product teams to proactively identify operational bottlenecks and manual processes. Then lead software development efforts to deliver scalable, reliable automation solutions.
Champion Software Engineering Best Practices: Advocate for and implement industry best practices in software design, development, testing, and deployment to ensure the highest quality and maintainability of our tooling.
Integrate Security by Design: Apply and promote security best practices throughout the software development lifecycle for our tooling and infrastructure automation to ensure a secure, compliant operational environment.
Enable Self-Service Capabilities: Proactively identify opportunities to build self-service automation for infrastructure provisioning, application deployments, and other operational tasks, reducing manual effort and improving developer velocity and onboarding.
Provide Technical Guidance and Mentorship: Serve as a technical mentor and role model for other engineers on the team, fostering a culture of collaboration, innovation, and technical excellence in software engineering.
Required Qualifications
7+ years of professional experience in Software Development, with a strong focus on backend systems and distributed applications.
5+ years of hands-on experience in Java, Go, Python, or similar backend languages, specifically building scalable and reliable applications.
Demonstrated experience in developing and maintaining automation tools, platforms, or microservices for cloud environments (AWS, GCP, or similar).
Strong understanding of Infrastructure as Code (IaC) principles and practical experience with tools such as Terraform.
Experience with Continuous Integration/Continuous Delivery (CI/CD) platform development, including familiarity with tools like Spinnaker or similar.
Solid understanding of containerization and orchestration technologies such as Kubernetes and ECS, from a software development perspective.
Proficient in using Docker and experienced with building applications that interact with underlying Linux and networking fundamentals.
Experience with database technologies (MySQL, MongoDB, etc.) in the context of application development and operational management.
A strong passion for solving complex operational challenges through innovative software solutions and automation.
Excellent communication, collaboration, and leadership skills within a software development context.
Bachelor’s degree in Computer Science or a related field, or equivalent professional experience.
Good to Have:
Demonstrated ability to build AI-powered assistants or "copilots" that simplify complex IaC templates (Terraform/Pulumi) for application teams, reducing the cognitive load on developers.
Familiarity with RAG (Retrieval-Augmented Generation) architectures to build intelligent platform documentation bots that can diagnose deployment failures or suggest infrastructure optimisations in real-time.
P24491_3500962
#LI-Hybrid