Summary
We are seeking a highly skilled and motivated Senior DevOps Go Developer to join our Platform Engineering team. This pivotal role focuses on architecting, developing, and refining Go-based Kubernetes controllers and operators to advance our internal GitOps-driven Kubernetes hosting platform. The ideal candidate will play a critical role in automating infrastructure and platform operations, integrating tightly with GitHub, and driving best practices in testing and observability. This position offers an exciting opportunity to influence platform engineering at scale, collaborate across teams, and solve complex technical challenges in a cloud-native environment.
Responsibilities
As a Senior DevOps Go Developer, you will:
- Architect, implement, and maintain Kubernetes controllers and operators written in Go to enhance and extend our internal GitOps-based Kubernetes hosting platform.
- Develop automation services integrated with GitHub APIs to streamline workflows, enforce policies, and improve developer experience.
- Build and maintain developer-facing CLI tools that simplify interaction with the platform and improve productivity.
- Enforce policy compliance through API-level validation mechanisms, ensuring security and governance standards are met.
- Champion Shift Left and Shift Right testing methodologies, embedding static analysis, contract testing, and observability early and throughout the development lifecycle.
- Collaborate closely with cross-functional teams including platform engineers, developers, and security experts to define and implement best practices.
- Lead technical discussions and provide mentorship to junior engineers, fostering a culture of continuous improvement and innovation.
- Monitor and enhance platform observability using tools such as Prometheus and OpenTelemetry to ensure reliability and performance.
- Drive continuous integration and continuous deployment (CI/CD) pipelines using Terraform, Azure DevOps, and Docker to automate infrastructure provisioning and application delivery.
- Stay current with emerging technologies and industry trends to continuously improve platform capabilities and developer experience.
Requirements
Must-Have Skills
- Go: Expert-level proficiency in Go programming language, with experience developing Kubernetes controllers and operators. Ability to write clean, efficient, and maintainable code that integrates deeply with Kubernetes APIs.
- Kubernetes: Strong understanding of Kubernetes architecture, resource management, and extensibility. Experience building custom controllers and operators to automate cluster operations.
- GitOps: Hands-on experience with GitOps principles and tools, enabling declarative infrastructure and application management through Git repositories.
- GitHub API: Proficient in leveraging GitHub APIs to build automation services, integrate workflows, and enforce policies programmatically.
- CI/CD: Deep knowledge of continuous integration and continuous deployment pipelines, particularly using Azure DevOps and Terraform for infrastructure as code and deployment automation.
- Terraform: Skilled in writing and managing Terraform configurations to provision and manage cloud infrastructure, especially within Azure environments.
- Azure: Experience working with Microsoft Azure cloud services, including container orchestration, networking, and security features.
- Docker: Proficient in containerization concepts and Docker tooling to build, manage, and deploy containerized applications.
- Kubernetes Controllers and Operators: Proven track record of designing and implementing Kubernetes controllers and operators to automate complex workflows and platform features.
- Policy Automation: Experience developing automated policy enforcement mechanisms, including API-level validation to ensure compliance and governance.
- API Validation: Expertise in designing and implementing API validation strategies to maintain platform integrity and security.
- Static Analysis: Familiarity with static code analysis tools and techniques to detect issues early in the development lifecycle.
- Prometheus: Experience setting up and managing Prometheus for monitoring Kubernetes clusters and applications.
- OpenTelemetry: Knowledge of OpenTelemetry standards and tools to instrument applications and infrastructure for observability.
Nice-to-Have Skills
- Node.js: Experience with Node.js for building backend services or automation tools.
- TypeScript: Familiarity with TypeScript for developing scalable and maintainable JavaScript applications.
- ProBot: Knowledge of ProBot framework for building GitHub Apps to extend GitHub workflows and automation.
- Canary Deployments: Understanding of canary deployment strategies to safely roll out new features and updates.
- Shift Left Testing: Experience advocating and implementing Shift Left testing practices to catch defects early through static analysis, unit testing, and contract testing.
- Shift Right Testing: Familiarity with Shift Right testing approaches, including monitoring, observability, and real-time validation in production environments.
- API Schema Validation: Skills in defining and enforcing API schema validation to ensure contract adherence and reduce integration errors.
- Contract Testing: Experience with contract testing frameworks to verify interactions between services and maintain system reliability.