Principal Software Engineer (Kubernetes Orchestration)
ZEDEDA
Software Engineering
San Jose, CA, USA
Posted on Oct 17, 2024
ZEDEDA makes edge computing effortless, open, and intrinsically secure - extending the cloud experience to the edge. ZEDEDA reduces the cost of managing and orchestrating distributed edge infrastructure and applications, while increasing visibility, security and control. ZEDEDA delivers a distributed, cloud-native edge management and orchestration solution, simplifying the security and remote management of edge infrastructure and applications at scale. ZEDEDA ensures extensibility and flexibility by utilizing an open partner ecosystem with a robust app marketplace and leveraging an open architecture built on EVE-OS, from the Linux Foundation. ZEDEDA delivers instant time to value, has thousands of nodes under management and is backed by world-class investors with teams in the US, Germany and India. For more information, visit www.zededa.com
We at ZEDEDA are looking for a highly experienced Principal Software Engineer with deep expertise in Kubernetes orchestrator development to join our dynamic engineering team. As a Senior Software Engineer, you will play a pivotal role in designing, developing, and maintaining our cloud-native orchestration platform which orchestrates thousands of edge clusters. You will be responsible for building robust, scalable, and secure solutions that automate, optimize, and orchestrate containerized applications, using Kubernetes at the core.The ideal candidate will have extensive experience working on Kubernetes-based systems, an in-depth understanding of cloud-native patterns, and a passion for solving complex problems in distributed systems.This is a very challenging position and a great opportunity to design and implement a kubernetes orchestrator for edge.
**This is a hybrid role based in our San Jose office**
Responsibilities
- Lead the design and development of Kubernetes-based orchestration systems to manage large-scale, containerized applications.
- Scalable and eventual consistent architecture design and implementation.
- Architect, implement, and maintain key components for Kubernetes operators, controllers, schedulers, and custom resource definitions (CRDs).Collaborate with cross-functional teams to design and optimize microservices architecture using Kubernetes.
- Drive automation, continuous integration (CI), and continuous deployment (CD) processes for Kubernetes workloads.
- Develop custom solutions for managing the lifecycle of applications running in Kubernetes environments.
- Monitor, troubleshoot, and improve system performance, scalability, and reliability in Kubernetes clusters.
- Contribute to and maintain high-quality technical documentation, architecture diagrams, and best practices.
- Participate in code reviews, provide mentorship to junior engineers, and contribute to knowledge sharing within the team.
- Stay up-to-date with the latest developments in Kubernetes, container orchestration, and cloud-native technologies, driving innovation within the team.
- Ensure high security standards, implementing policies and practices to safeguard Kubernetes infrastructure.
Required Skills
- 15+ years of software engineering experience, with a strong focus on backend or systems-level development.
- 5+ years of hands-on experience with Kubernetes architecture and internals (including experience with controllers, operators, schedulers, and custom resource development).Proficiency in Go (Golang) programming language (highly preferred)
- Strong understanding of Kubernetes APIs and how to extend Kubernetes functionality using CRDs, operators, and controllers.
- Hands-on experience with Docker, docker-compose and other container runtimes.
- Expertise in building and maintaining CI/CD pipelines for Kubernetes-based applications using tools like Jenkins, GitLab CI, or CircleCI.
- Familiarity with cloud platforms such as AWS, Azure, or Google Cloud, and their Kubernetes service offerings (EKS, AKS, GKE).
- Experience working with etcd, Helm, Istio or other tools in the Kubernetes ecosystem.
- Strong problem-solving skills, with experience troubleshooting and debugging Kubernetes clusters in production.
- Knowledge of networking, security, and best practices for distributed systems running on Kubernetes.
- Solid experience with monitoring, logging, and alerting in Kubernetes using tools like Prometheus, Grafana, and Fluentd.
- Experience in working with and implementing the internals of any open source orchestrators like Rancher, KubeSphere etc.
Preferred Skills
- Experience with multi-cluster Kubernetes deployments and management.
- Contributions to open-source Kubernetes projects.
- Experience with service meshes like Istio or Linkerd.Familiarity with GitOps methodologies (ArgoCD, Flux).
- Experience with managing persistent storage in Kubernetes (e.g., Longhorn, Rook, or Ceph).
- Certification in Kubernetes administration (extra credits)
Qualifications
- Bachelor’s or Master’s degree in Computer Science, Engineering, or related field.
- Proven track record of delivering scalable, production-grade software.
Who We Are
Our values are deeply embedded in how we operate and the people we bring on board. You will see our values ingrained in how we support our customers, collaborate with our colleagues, develop our products and foster an inclusive and empathetic work culture.
Courageous | Take ownership and action to deliver
Considerate | Bring your best self to build empathy and trust with others
Candid | Put our customers first to create great products and experiences.
Curious | Disrupt and invent to be the first and only choice
Collaborative | Build strong teams that amplify our impact