Required Skills
About the Job
Join the Red Hat OpenShift team as a Senior Software Engineer in Pune, India. You will be a key developer within the OpenShift API for Data Protection (OADP) team, working with cutting-edge technologies and open-source projects. We are seeking a committed, self-motivated, and proactive individual with strong analytical skills and upstream experience. OADP is Red Hat's downstream product based on Velero, an open-source tool for Kubernetes disaster recovery, enabling migration and backup of Kubernetes resources, persistent volumes, and virtual machines.
**What you will do:**
- Develop secure, reliable, and scalable software, primarily using Golang, OpenShift, and cloud-native technologies.
- Collaborate within an agile team, adhering to agile development practices, test-driven development (TDD), and DevOps principles.
- Develop and maintain OADP controllers and operators.
- Integrate with major cloud backup providers including AWS, GCP, and Azure.
- Implement new features based on Velero enhancements.
- Troubleshoot and resolve customer issues related to backup and restore operations.
- Engage in performance tuning and optimization of OADP.
- Contribute to the Velero community by submitting patches, features, documentation, and actively participating in forums and speaking at events.
- Provide customer support for the product.
**What you will bring:**
- 3+ years of professional software development experience with Kubernetes or related platforms.
- Bachelor's or Master's degree in Computer Science, Computer Engineering, or a related technology field.
- Practical development experience in Go, Java, or C++.
- Solid understanding of at least one programming language for building enterprise applications or backend services.
- Familiarity with relevant frameworks, libraries, or SDKs for your chosen language.
- Hands-on experience with both development and operational aspects of Red Hat OpenShift/Kubernetes.
- Experience developing Kubernetes controllers, operators, or platform components.
- Excellent communication skills, with knowledge of agile programming and pair programming practices.
- Understanding of test-driven development, continuous integration (CI)/continuous delivery (CD), the committer/contributor model, and proficiency with Git.