Job description

- Technical Leadership: Code reviews, sprint-level task definition, architectural blocker resolution - Core Stack: Java (Spring Boot, Spring Cloud), Angular (TypeScript), Python - Additional Stack: Scala (Akka Streams), Groovy (Gradle/Spock) (Nice to have, only few components) - Data: Apache Spark (invoice aggregation, portfolio reporting), Elasticsearch, Talend ETL - DevOps: Docker, Kubernetes (Helm), Terraform; Jenkins/GitLab CI; Azure DevOps - Reporting: Jasper Reports — funder statements and programme utilisation report templates - Agile: Scrum/Kanban facilitation; sprint planning, retros; Jira board management - People: Mentoring/line management of 4–8 developers; 1:1s, onboarding **Key Responsibilities** - Lead daily squad activities: invoice ingestion, multi-funder allocation, settlement, supplier onboarding. - Translate epics into technical tasks; define HLD for sprint features and review LLDs. - Maintain code quality via PR reviews, pair programming, SonarQube; enforce 80%+ unit test coverage. - Own squad Definition of Done and Definition of Ready; track velocity and flag risks. - Ensure Kubernetes deployments and Helm charts are production-ready (resource limits, probes, rollback). - Mentor junior and mid-level developers; run platform knowledge-sharing sessions. - Coordinate with DevOps on pipeline improvements affecting squad-owned services. **Requirements** - 8+ yrs software engineering; 2+ yrs team lead or tech lead. - Strong Java (Spring Boot); Scala or Python; Angular knowledge preferred. - Delivered features on a cloud-native Kubernetes platform. - Fintech or financial services background advantageous. - Nice to have: Scala (Akka Streams), Groovy (Gradle/Spock)