Senior Provisioning DevOps Engineer
Job Description
Role Mission: The Application DevOps Engineer will be involved in the end-to-end delivery lifecycle including solution design, application development, QC testing, CI/CD automation and continuous optimization of cloud-native platforms. The candidate will need to manage Kubernetes operations, infrastructure provisioning and software upgrades to ensure systems remain reliable, secure and scalable. The candidate will be working in a team in routine on-call rotations to support day-to-day operations, incident resolution, customer care and defect fixes. Key Responsibilities
- Design and Development:
- Design, develop, and maintain robust, scalable, and resilient microservices using Java, Spring Boot and related frameworks.
- Hands-on experience with Apache Camel and its core Enterprise Integration Patterns (EIPs).
- Implement RESTful APIs and ensure services meet performance, security, and stability requirements.
- Write clean, well-tested, and efficient code following best practices and design patterns.
- Containerization and Deployment:
- Develop and manage services deployed on OpenShift/Kubernetes, including defining Dockerfiles and Kubernetes resource configurations (Deployments, Services, ConfigMaps, etc.).
- Work with CI/CD pipelines (e.g., Jenkins) for automated build, test, and deployment.
- Monitor and troubleshoot services running in the OpenShift environment.
- Architecture and Data:
- Contribute to the architectural design of microservices, focusing on principles like loose coupling, high cohesion, and fault tolerance.
- Implement various data persistence technologies, including relational (e.g., PostgreSQL) and NoSQL databases (e.g., MongoDB, Redis).
- Integrate services using messaging systems (e.g., Red Hat AMQ) where required.
- Collaboration and Quality:
- Perform code reviews to maintain code quality and share knowledge within the team.
- Ensure compliance with security standards and industry regulations by performing security vulnerability scans (SAST, DAST, SCA) and disaster recovery exercise.
- Support on-call duty on shift rotation and handle production incident and root cause analysis with minimal supervision.
- Knowledge Management:
- Build technical documentation from scratch, maintaining working documents on architecture overviews, API specifications and system integrations.
- Create and maintain operational runbooks to support the team and internal stakeholders.
Qualifications • Bachelor’s degree in Computer Science, Software Engineering, or related field. • Java Expertise: Minimum of 3 years of professional experience in developing enterprise applications using Java and the Spring Boot framework. • Microservices and API: Strong understanding of microservices architecture, principles, and best practices. Experience designing and consuming RESTful APIs. • Containerization: Proficient with Docker and Kubernetes/OpenShift for deployment and orchestration. Experience with OpenShift-specific features is a significant advantage. • Database: Experience with SQL and NoSQL databases. • Tools: Familiarity with Git, Maven/Gradle, and CI/CD tools. • Combined experience in DevOps, SRE, or Software Engineering. • Familiar with containerized environments, Kubernetes internals, and Helm. • Hands-on production experience with Jenkins and CI/CD best practices. • Proficiency in at least one programming language (Python, Go, or JavaScript/TypeScript). • Solid understanding of AWS core services, IAM security, and cost-optimization practices. • Comfortable with Linux internals, networking fundamentals, and shell scripting. • Agile mindset with experience working in Scrum teams. • Excellent communication, documentation, and collaboration skills.