Senior Java Developer
Key Responsibilities
- Contribute to migration and modernization initiatives from legacy Big Data components to the target platform.
- Analyze existing data and service flows and translate functional requirements into maintainable technical solutions.
- Design, develop, test and maintain Java applications using object-oriented programming principles and clean coding standards.
- Develop and support applications using Java and Spring Boot.
- Implement microservices, layered and event-driven architecture patterns.
- Develop and maintain BDD test scenarios and automation using Cucumber and Gherkin.
- Participate in Agile/Scrum activities including sprint planning, development, delivery and continuous improvement.
- Containerize and deploy applications using Docker, Kubernetes and OpenShift.
- Support CI/CD pipelines using GitLab CI/CD and GitOps deployment workflows using ArgoCD.
- Conduct code reviews and contribute to coding standards and software quality improvements.
- Troubleshoot and resolve technical issues across development, integration and production environments.
- Collaborate with product, architecture and operations teams to deliver secure, scalable and reliable solutions.
- Support technical design decisions, mentoring and knowledge sharing within the engineering team.
Requirements
- Bachelor's degree or higher in Computer Science, Software Engineering or a related technical discipline.
- Proven experience as a Java Developer with strong hands-on experience in enterprise application development.
- Strong knowledge of Object-Oriented Programming (OOP) and Java development.
- Experience with Domain-Driven Design (DDD) concepts, including bounded contexts, aggregates, entities, value objects and domain models.
- Good understanding of Java design patterns such as Factory, Builder, Observer and Strategy.
- Experience designing and developing microservices, layered and event-driven architectures.
- Hands-on experience with modern JDK and Spring Boot.
- Experience working in Agile/Scrum environments.
- Hands-on experience with Docker, Kubernetes and OpenShift.
- Working knowledge of MongoDB, PostgreSQL and AWS S3.
- Experience with GitLab CI/CD and ArgoCD/GitOps deployment practices.
- Experience with BDD testing, including Cucumber and Gherkin.
- Strong understanding of secure coding, resiliency and production-readiness practices.
- Experience with code reviews, coding standards and software quality practices.
- Strong problem-solving and troubleshooting skills.
- Good written and verbal communication skills in English.
Senior-Level Expectations
- Lead or contribute to complex technical design decisions.
- Coordinate implementation activities across technical teams.
- Take ownership of critical migration and modernization workstreams.
- Identify and manage technical and delivery risks.
- Mentor team members and promote coding and engineering best practices.
- Work with architects and stakeholders on technical roadmaps and implementation strategies.
- Provide technical guidance during incidents, escalations and major design decisions.
- Drive quality across the development lifecycle from design through production deployment.
Preferred / Advantageous Skills
- Experience in payments, finance or banking domains.
- Exposure to Big Data technologies such as Spark, Kafka or Hadoop.
- Experience using AI tools to improve development productivity, code quality or documentation.
EA Number: 11C4879