Senior Software Engineer
digitalocean
Job Description
What You Will Be Doing:
- Developing the DigitalOcean Managed Kubernetes product.
- Collaborating to build intuitive, delightful experiences for developers as they engage with DigitalOcean.
- Developing back-end gRPC services written in Go deployed on Kubernetes.
- Designing back-end services and authoring engineering design documents.
- Breaking the design documents into actionable epics and stories with estimates.
- Independently lead projects
- Running experiments to optimize user experience and increase adoption of DOKS.
- Contributing to and maintaining open-source projects, and collaborating with our developer community through customer meetings, blogs, and podcasts.
- Finding emerging tools, trends, and methodologies and showing your team how to integrate them against existing systems and processes.
- Ability to navigate the complexity of distributed systems to operate them in production.
- Regular interactions with important customers to understand their needs in the product
- Contributing meaningfully to discussions on architectures, implementations, design patterns, and processes with the ability to succinctly convey ideas to peers and mentees.
- Experience working on teams that operate across multiple time zones.
What You'll Add to DigitalOcean:
- Experience working with complex distributed systems
- Experience with Go, Kubernetes, and Docker.
- Language: Demonstrated ability to develop, test, ship, maintain, and operate production-ready code and systems. (Go experience is a requirement, 3 years + is desired).
- Software engineering experience 7 years+
- Experience hosting Kubernetes clusters at scale
- Experience with API development and interactions with data stores such as MySQL.
- Experience with custom Kubernetes controllers and CRDs
- Passion for shipping well-engineered and tested code.
- Strong analytical, communication, and organizational skills.
- A strong interest and obsession with building quality software focused on enabling developers to iterate on their ideas.
- A self learner mentality
- Experience in Agile software development methodologies.
- Experience working within a microservice architecture, with knowledge of both asynchronous, event-driven processing, and synchronous gRPC/HTTP-based requests.
- Be comfortable working in a fast paced engineering organization
- Highly desirable skills/experience include:
- Network engineering experience (cilium experience preferred)
- Experience integrating AI automation into a managed Kubernetes platform
- CI/CD experience with a focus on quality and developer velocity
- Experience writing technical blog posts/articles for the community
- Genuine interest in DigitalOcean as a company and excitement to use our products in your projects (if you haven’t already!)