Job Description
Description ∙ Core Backend: Java 11/17+ (Spring Boot 3.x, Spring Batch, Spring Cloud Gateway, JPA/Hibernate); Scala (Akka Actors, Akka Streams, Play Framework) ∙ Data & Messaging: Apache Spark (batch invoice processing, portfolio analytics); Kafka (producers, consumers, Streams API); Elasticsearch ∙ Database: PostgreSQL, Oracle, or MongoDB; SQL optimisation; Flyway/Liquibase migrations ∙ Containers & IaC: Docker, Kubernetes (Helm awareness), Terraform IaC review ∙ Reporting & Integration: Jasper Reports; Talend ETL for bank/ERP integrations; RESTful API design ∙ Testing: JUnit 5, Mockito, ScalaTest/Specs2, Spock, REST-assured, SonarQube ∙ Agile & Tooling: Jira, Git (GitFlow/trunk-based), Jenkins/GitLab CI; Groovy (Gradle, Spock) Key Responsibilities ∙ Develop, test, and deploy Java/Scala microservices for SCF modules: invoice ingestion, deal config, funder allocation, settlement, dynamic discounting. ∙ Build and maintain Spark batch/streaming jobs for invoice reconciliation, portfolio analytics, and financial reporting. ∙ Design and implement Kafka-based event pipelines for real-time invoice processing and multi-funder allocation. ∙ Integrate bank payment gateways and ERP connectors via Talend/REST APIs with idempotent, auditable flows. ∙ Write Jasper report templates for funder statements, utilisation reports, and regulatory disclosures. ∙ Participate in code reviews, sprint ceremonies, and technical design discussions; maintain unit test coverage ≥80%. ∙ Maintain Kubernetes manifests; troubleshoot production issues via Elasticsearch and Prometheus/Grafana. Requirements ∙ 3–7 yrs backend software development (Mid: 3–5 yrs; Senior: 5–7 yrs). ∙ Strong Java (Spring Boot); Scala (Akka, Play) required. ∙ Production experience with Kafka or equivalent messaging (RabbitMQ, ActiveMQ). ∙ Hands-on Apache Spark for batch or streaming data processing. ∙ Working Docker and Kubernetes deployment knowledge. ∙ Financial services, payments, or trade finance experience preferred. ∙ Good to have: Groovy (Gradle, Spock); Talend ETL; Jasper Reports; Python for data scripting Responsibilities Key Responsibilities ∙ Develop, test, and deploy Java/Scala microservices for SCF modules: invoice ingestion, deal config, funder allocation, settlement, dynamic discounting. ∙ Build and maintain Spark batch/streaming jobs for invoice reconciliation, portfolio analytics, and financial reporting. ∙ Design and implement Kafka-based event pipelines for real-time invoice processing and multi-funder allocation. ∙ Integrate bank payment gateways and ERP connectors via Talend/REST APIs with idempotent, auditable flows. ∙ Write Jasper report templates for funder statements, utilisation reports, and regulatory disclosures. ∙ Participate in code reviews, sprint ceremonies, and technical design discussions; maintain unit test coverage ≥80%. ∙ Maintain Kubernetes manifests; troubleshoot production issues via Elasticsearch and Prometheus/Grafana. Qualifications Requirements ∙ 3–7 yrs backend software development (Mid: 3–5 yrs; Senior: 5–7 yrs). ∙ Strong Java (Spring Boot); Scala (Akka, Play) required. ∙ Production experience with Kafka or equivalent messaging (RabbitMQ, ActiveMQ). ∙ Hands-on Apache Spark for batch or streaming data processing. ∙ Working Docker and Kubernetes deployment knowledge. ∙ Financial services, payments, or trade finance experience preferred. ∙ Good to have: Groovy (Gradle, Spock); Talend ETL; Jasper Reports; Python for data scripting
Get AI-Matched to This Job
Upload your resume and our AI will score how well you match this and thousands of similar roles.