Key Responsibilities:
Backend Development (Spring Boot):
- Design and implement RESTful APIs and microservices using Spring Boot.
- Develop secure and efficient backend logic using Java 11/17+, Spring Data, Spring Security, and Spring Cloud components.
- Integrate backend services with databases (SQL/NoSQL), message brokers, and external systems.
- Write unit and integration tests (JUnit, Mockito) to ensure code quality and reliability.
Containerization & Orchestration (Kubernetes):
- Build and package applications using Docker.
- Deploy, manage, and scale applications on Kubernetes clusters (on-prem or cloud platforms like AWS EKS, Google GKE, or Azure AKS).
- Create and manage Helm charts, K8s manifests, Secrets, ConfigMaps, and Ingresses.
- Monitor and troubleshoot containerized applications using tools like Prometheus, Grafana, ELK, or Jaeger.
DevOps & CI/CD:
- Work with DevOps engineers or independently maintain CI/CD pipelines using tools like GitLab CI, Jenkins, or GitHub Actions.
- Automate testing, builds, and deployments to different environments.
- Follow best practices in code versioning, code review, and branching strategies (Git, GitFlow).
Agile Development & Collaboration:
- Participate in daily standups, sprint planning, code reviews, and retrospectives in an Agile/Scrum environment.
- Collaborate with frontend developers, QA engineers, product owners, and DevOps teams to deliver high-quality features on time.
Required Qualifications:
- Bachelor's degree in Computer Science, Engineering, or related field (or equivalent experience).
- Required 5 years of hands-on experience with Spring Boot and Java development.
- Strong understanding of REST APIs, microservices architecture, and HTTP/JSON protocols.
- Experience with containerization using Docker and deploying to Kubernetes.
- Good knowledge of SQL databases (e.g., PostgreSQL, MySQL) and optionally NoSQL (e.g., MongoDB).
- Familiarity with Git, basic Linux command-line, and troubleshooting techniques.