Posted on: 07/29/2022
Job ID: YATS0720221130390
Job Description:
This role will be focusing on developing CICD tools/scripts, and automation for build release, configuration, service deployment and maintenance of the public cloud environments such as AWS, Azure or GCP.
Responsibilities:
- Set up from scratch and maintain the software build and service environments based on Kubernetes clusters over AWS or Azure cloud environment.
- Develop tools and automation for system configuration, deployment and maintenance of our cloud environments while preserving high reliability and availability.
- Establish best practices for CI/CD environments and methodologies such as GitOps
- Develop and maintain CI/CD pipeline of Cloud-based applications in a microservice architecture
- Perform the CI based on cloud-native build & release process, and CD Jobs over Kubernetes clusters over Kubernetes cluster in AWS cloud
- write deployment tools and scripts by Terraform, Packer, and Ansible to automate operational tasks and deployment of machines, services, and applications.
- Develop and write the CI/CD pipelines tools and scripts for CI workflow by Jenkins, Jenkins-X, Tekton, AWS, Docker and other micro-services
- Maintain the build and release processes from upstream using GIT, Bazel, Docker Build, package manager like Dockerhub or Artifactory, and software supply chain tools, and automated testing tools.
- Write and maintain scripts Kubernetes-native build tools of Skafflod, Shipwright, Kaniko, ko, Buildkit, Buildpacks etc.
- Establish end-to-end monitoring and alerting on all critical components for service healthiness and maintain the service availability.
- Audit existing services for problems in infrastructure with security, configuration, or other possible issues.
- Work with other cross-functional teams (including the open-source project contributors) convert community feedback and operations requirements into deliverables.
- Work independently but must also be able to interface and work closely with the open-source project community.
Required Skills:
- A deep understanding of CI/CD tools, processes, and a strong desire to help teams release frequently to production with a focus on creating reliable high-quality results.
- Relevant certifications in DevOps/SRE, AWS, Kubernetes, Docker, Security, Networking, required.
- Strong Linux system administration skills with 3+ years of experience with Bash, Python or other scripting languages.
- Advanced programming skills in languages like Go, Python, Ruby.
- Fluent in scripting languages (Bash/Python) and data structures (YAML, JSON, XML, etc.) in the context of templating and automation a must.
- 3+ years of SRE with administering, installation (Ubuntu) and maintenance of Linux versions of RHEL, Ubuntu, and CentOS in public cloud environments.
- At least 3 years of proven working experience with Containers and Kubernetes either AWS, Azure or GCP cloud infrastructure.
- 2+ year of hands-on Experience using the Kubernetes tooling such as Kubectl, Kustomize, Telepresence, Kubectx, kops, Kubeadm, and Minikube.
- 3+ years of coding experience with configuration management or service tooling such as: Terraform, Crossplane, Ansible, Packer, Docker, Helm, Prometheus, Grafana.
- 2+ years of scripting/coding experience of continuous delivery (CD) GitOps practice with tools such as ArgoCD, Jenkins-x, FluxCD, or Spinnaker in deploying and maintaining services in AWS, Azure, or GCP cloud.
- Experience working or developing Kubernetes autoscaling tools (ex. Vertical Pod Autoscaler, Cluster Autoscaler and/or the Horizontal Pod Autoscaler).
- 3+ years of Git experience, development methodologies, trunk-based develop and flow.
- 2+ years of coding experience of continuous integration (CI) in Kubernetes environments with auto build tools (like make, bazel, gradle, maven etc.) Git, JIRA, Jenkins, SonarQube.
- Deep understanding of AWS resources and their limitations/gotcha
- Experience with Kubernetes-native build tools (Buildpacks, Kaniko, BuildKit, ko, Shipwright, Skafflod) or and CD workflow Tekton a plus.
- Excellent written and verbal English communication skills.
- Bilingual (English and Chinese fluency) preferred but not required.
- Education: MS/BS in Computer Science/EE.