Job Title: Manager | Java | Mumbai | Engineering
Role Overview:
We are seeking a Senior Java Developer with expertise in Core Java, Java Reactive programming, and WebFlux. This individual will also have hands-on experience with AWS, Terraform, CI/CD, and DevOps practices to help design, implement, and maintain scalable, cloud-based solutions. The ideal candidate will have a passion for building high-performance systems and a deep understanding of modern software development practices.
Key Responsibilities:
Core Java Development: Design and develop efficient, reusable, and scalable Java applications.
Reactive Programming & WebFlux: Utilize Java Reactive programming (using WebFlux and other libraries) to create highly responsive and scalable microservices.
AWS: Leverage AWS services to deploy and manage applications in the cloud (EC2, Lambda, S3, DynamoDB, etc.).
Terraform: Develop and manage Infrastructure as Code (IaC) using Terraform to automate provisioning and deployment of cloud infrastructure.
CI/CD Pipelines: Design and implement continuous integration and continuous deployment pipelines using tools such as Jenkins, GitLab CI, or similar.
DevOps: Collaborate with the DevOps team to optimize the software development lifecycle, improve automation, and ensure smooth deployment and production processes.
System Monitoring & Troubleshooting: Monitor, analyze, and troubleshoot applications and infrastructure, ensuring high availability and performance.
Collaboration: Work closely with cross-functional teams including front-end developers, QA engineers, and product managers to deliver high-quality software.
Code Reviews & Best Practices: Participate in code reviews and ensure adherence to industry best practices for software development, security, and design.
Skills & Qualifications:
Core Java: Strong experience in Core Java programming, object-oriented design, and multi-threading.
Java Reactive & WebFlux: Hands-on experience with Java Reactive programming (using Spring WebFlux, Project Reactor, etc.) for building non-blocking applications.
AWS Cloud: In-depth experience working with AWS services and cloud architecture, including EC2, S3, Lambda, RDS, and more.
Terraform: Practical experience with Terraform to automate infrastructure provisioning, deployment, and configuration.
CI/CD: Proficient with CI/CD tools (Jenkins, GitLab CI, CircleCI, etc.) to ensure efficient and automated deployment pipelines.
DevOps: Strong understanding of DevOps practices and tools for automating and managing the deployment pipeline.
Microservices Architecture: Experience in designing and developing microservices architectures and deploying them using Docker and Kubernetes.
Version Control: Strong knowledge of Git for source control management.
Agile Methodology: Familiarity with Agile development methodologies (Scrum, Kanban, etc.).
Problem-Solving: Excellent troubleshooting and debugging skills.
Communication: Strong verbal and written communication skills.
Preferred Skills:
- Experience with containerization and orchestration tools (Docker, Kubernetes).
- Familiarity with monitoring and logging tools (Prometheus, Grafana, ELK stack).
- Knowledge of NoSQL databases (MongoDB, DynamoDB, etc.).
- Experience with security practices in cloud applications (IAM, Encryption, etc.).
Education & Experience:
- Bachelor’s or Master’s degree in Computer Science, Engineering, or related field.
- Minimum of 5+ years of experience in Java development, with at least 2 years in Reactive programming and WebFlux.
- Experience with AWS cloud infrastructure and Terraform.
- Proven track record of working in a DevOps environment with CI/CD practices.