Job Title
Java Backend Developer – IT Payment Services (ITG)
Department
IT & Payments – ITG (IT Payment Services)
Business line / Function description
The IT Payment Services line is the global hub for payments and cash‑management solutions across the BNP Paribas Group. It delivers high‑throughput, highly secure applications that process billions of transactions each year. The team works in an Agile, DevOps‑centric environment and collaborates closely with product owners, compliance, and operations to keep the platform reliable, compliant, and innovative.
Position purpose
The Senior Java Developer will join a cross‑functional delivery team to design, develop, and maintain Java‑back‑end services for payment‑related applications. The role focuses on delivering clean, test‑driven code, supporting automated CI/CD pipelines and data‑integrity throughout the product lifecycle.
Core responsibilities
- Analyse functional specifications and translate them into technical designs and implementation tasks.
- Develop and enhance RESTful services using Java 21 and Spring Boot 4.
- Build and maintain event-driven services using Kafka, MongoDB and ElasticSearch for customer data processing and synchronisation.
- Design, implement, and maintain database objects in MongoDB and ElasticSearch and integrate with Backend APIs.
- Develop and maintain batch processing components for CSV file ingestion and data synchronisation across system components.
- Produce unit, integration, and contract tests using JUnit 5, Test containers, and Jest. Apply BDD/TDD practices where applicable.
- Participate in sprint planning, daily stand‑ups, backlog refinement and retrospectives; collaborate closely with Product Owners, QA, and other development teams.
- Contribute to code reviews, enforce coding standards, and mentor peers on best practices.
- Diagnose and resolve production incidents, ensuring security compliance and minimal downtime.
- Document technical decisions, APIs (OpenAPI/Swagger), and configuration of items in Confluence and JIRA.
Contributing responsibilities
- Act as a proactive team player – share knowledge, raise blockers early, and help meet delivery timelines.
- Provide clear status updates in sprint ceremonies and on the team Kanban board.
- Embrace continuous learning – explore new frameworks (e.g., NiFi,KafkaConnect) and adopt best practices in event-driven architecture and data processing.
- Support the creation and maintenance of CI pipelines (GitLab‑CI) and deployment automation (ArgoCD, Docker).
Technical competencies
Required
- Java 21
- Spring Boot (4x)
- Spring Batch
- Event-driven Architecture
- MongoDB
- Kafka.
- JUnit 5, Test containers
- ElasticSearch
- JIRA, Confluence
- Agile (Scrum/Kanban)
Nice‑to‑have
- GitLab‑CI, Docker,Openshift
- ArgoCD
- Kibana
Behavioral competencies
- Communication – articulate technical concepts to both IT and business audiences; produce clear documentation.
- Analytical ability – break down complex requirements, identify edge cases, and propose robust solutions.
- Flexibility & independence – adapt quickly to changing priorities while taking ownership of deliverables.
- Customer orientation – understand end‑user impact and strive for high‑quality, secure products.
Specific qualifications
- Minimum 4–8 years of professional software development experience with Java in an Agile environment.
- Bachelor's degree in computer science, Engineering, or a related discipline (or equivalent practical experience).
- Familiarity with payments, banking, or financial‑services applications is a plus but not mandatory.
- Proficient English (written & spoken).
Location
[Chennai, India] – Hybrid model (on‑site 2–3 days per week, remote the rest).
Other relevant information
- Agile methodology – Scrum with two‑week sprints; backlog managed in JIRA.
- Testing methodology – Test‑Driven Development (TDD) and Behaviour‑Driven Development (BDD) using JUnit 5, Test containers, and Cucumber.
- Infrastructure – Docker‑based development, GitLab‑CI pipelines, and ArgoCD for continuous delivery to Kubernetes clusters.
- Security – regular static code analysis (SonarQube) and dependency checks.