Job Title: Java Developer (Lead)
Location: Hyderabad

Job Summary:
We are looking for a skilled Java Developer with expertise in backend development, cloud integrations, and database management. The ideal candidate should have hands-on experience with Java, Spring Boot, Spring Security, microservices architecture, and modern tools like Docker and SonarQube. This role involves building scalable, secure, and high-performance applications while integrating with AWS, Firebase, Twilio, and Azure Blob Storage.

Key Responsibilities:

  1. Backend Development:
    • Design, develop, and maintain applications using JavaSpring Boot, and Spring Security.
    • Implement scalable and secure microservices with APIs adhering to REST standards.
  2. Cloud Integration:
    • Integrate with AWS services such as SNSSQSS3, and API Gateway.
    • Work with Firebase and Azure Blob Storage for cloud-based features.
  3. Database Management:
    • Design and manage relational databases using Postgres and MySQL.
    • Create functions, views, and stored procedures in Postgres.
    • Utilize PostgREST for database-to-API integrations.
  4. Caching and Optimization:
    • Implement caching mechanisms using EhCacheRedis, and Microstreams to enhance application performance.
  5. DevOps and Containerization:
    • Use Docker for containerizing applications and managing environments.
    • Employ Maven for project builds and dependency management.
  6. Integration Services:
    • Implement messaging and notifications using Twilio and similar services.
    • Design and maintain APIs to integrate with third-party systems.
  7. Testing and Quality Assurance:
    • Write and execute unit and integration tests using JUnit.
    • Ensure code quality through SonarQube analysis and enforce best practices.
  8. Version Control and CI/CD:
    • Manage codebases using Git and follow collaborative branching strategies.
    • Work with CI/CD pipelines for automated testing and deployment.
  9. Configuration Management:
    • Use Spring Config Server for centralized configuration management.
    • Handle secure authentication and authorization using Keycloak.
  10. Collaboration and Documentation:
    • Collaborate with cross-functional teams including frontend developers, DevOps engineers, and product managers.
    • Maintain technical documentation for processes and solutions.

Required Skills:

  • Strong proficiency in JavaSpring Boot, and Spring Security.
  • Experience with cloud platforms and services like AWS (SNS, SQS, S3, API Gateway) and Azure Blob Storage.
  • Proficiency in relational databases like Postgres and MySQL, including advanced database concepts.
  • Hands-on experience with Docker for containerized deployments.
  • Knowledge of caching mechanisms such as EhCacheRedis, and Microstreams.
  • Familiarity with Twilio and Firebase integrations.
  • Strong understanding of RESTful API design and development.
  • Experience with SonarQube for code analysis and JUnit for testing.
  • Proficiency with Git and build tools like Maven.

Preferred Skills:

  • Familiarity with PostgREST and database-to-API layers.
  • Experience in building CI/CD pipelines and deployment automation.
  • Exposure to monitoring and logging tools for distributed systems.
  • Knowledge of advanced security practices and OAuth2/OpenID Connect with Keycloak.

Qualifications:

  • Bachelor’s degree in Computer Science, Engineering, or a related field.
  • 8+ years of experience in Java development

Soft Skills:

  • Strong analytical and problem-solving skills.
  • Excellent communication and teamwork abilities.
  • Proactive approach to learning and adopting new technologies.