freehire launches on Product Hunt on 26 August.

Follow →

Senior Java Developer

Job Description:

  • Contribute to migration and modernization initiatives from legacy Big Data components to the target platform.
  • Analyze existing data and service flows to preserve key business outcomes while improving architecture quality and maintainability.
  • Design, develop, test, and maintain Java services using strong object-oriented principles and clean coding standards.
  • Build and support Spring Boot applications on modern Java runtimes.
  • Implement architecture patterns including microservices, layered design, and event-driven communication.
  • Write and maintain BDD scenarios and automation using Cucumber and Gherkin.
  • Collaborate within Agile Scrum teams through sprint planning, delivery, and continuous improvement cycles.
  • Containerize and deploy workloads with Docker, Kubernetes, and OpenShift.
  • Contribute to delivery pipelines using GitLab CI/CD and GitOps deployment workflows with ArgoCD.
  • Partner with product, architecture, and operations teams to ensure secure, scalable, and reliable delivery.
  • Contribute to a collaborative engineering culture focused on quality, documentation, and continuous learning.

Requirements:

Education and experience:

  • Bachelor's degree or higher in Computer Science, Software Engineering, or a related technical discipline.
  • Proven experience as a Java Developer, including significant hands-on experience in enterprise application development.
  • Demonstrated experience in senior-level responsibilities such as technical decision-making, cross-team coordination, and mentoring.

Core required skills and experience:

  • Solid experience as a Java Developer with strong object-oriented programming fundamentals.
  • Experience and comfort with Domain Driven Design, including bounded contexts, aggregates, entities, value objects and domain models.
  • Proficiency in Java Design Patterns (for example: Singleton, Factory, Builder, Observer, Strategy).
  • Experience in software architecture design (microservices, layered, event-driven architectures).
  • Hands-on experience with the latest JDK and Spring Boot framework.
  • Familiarity with Agile and Scrum methodologies and sprint-based delivery.
  • Experience with containerization and orchestration tools: Docker, Kubernetes, and OpenShift.
  • Working knowledge of databases and storage: MongoDB, PostgreSQL, and AWS S3.
  • Experience with GitLab CI/CD pipelines and ArgoCD for GitOps-based deployments.
  • Experience writing and maintaining BDD (Behavior-Driven Development) tests (for example: Cucumber, Gherkin).

Engineering and delivery expectations:

  • Strong ability to translate functional requirements into scalable, maintainable technical solutions.
  • Solid understanding of secure coding principles, resiliency patterns, and production-readiness practices.
  • Experience performing code reviews, driving coding standards, and improving overall software quality.
  • Ability to diagnose and resolve complex issues across development, integration, and production environments.
  • Practical experience balancing delivery speed, technical debt, and long-term maintainability.

Domain knowledge (advantageous):

  • Experience or exposure to the payments, finance, or banking domain is a strong plus.

Nice to have:

  • Familiarity with Big Data technologies (for example: Spark, Kafka, Hadoop, or similar).
  • Demonstrated ability to integrate AI tools into daily development workflows improve productivity, code quality, and documentation.

See also

Tailor your CV for this role?

We couldn't check your fit for this role — add a CV to your profile to see it next time.

A new version of freehire is available