About this role
We are looking for an Software Development Engineer to join our Managed Services engineering team. You will build and run the backend services behind our Reconciliation and Trade Status products: REST APIs, batch data loaders, real-time notifications and high-volume grid data. You will own features end to end, from design through production support, and work with a small team that values clean, tested and observable code.
What You Will Do
- Design, build and maintain Spring Boot microservices in a Gradle multi-module monorepo.
- Develop secure REST APIs with role-based authorization and consistent error contracts.
- Write and tune Spring Batch jobs and data loaders that process large datasets safely (chunked writes, restartability, no OOM).
- Work with asynchronous messaging.
- Model data in PostgreSQL with JPA/Hibernate, Envers audit history and Liquibase migrations;
- Use Redis (Redisson) for caching, including Hibernate L2 cache and TTL/eviction design.
- Write unit and integration tests (JUnit, Mockito, Rest Assured, H2) and review peers' code.
- Own production quality: structured logging, trace IDs, metrics, Dynatrace dashboards, incident triage and root-cause analysis.
- Take part in design discussions, estimation and Jira-driven delivery.
Required Qualifications
- 3–6 years of professional backend development experience, with strong Java skills (Java 17 features, concurrency, collections, streams).
- Hands-on experience with Spring Boot, Spring Data JPA, Spring Security and Hibernate.
- Solid SQL and PostgreSQL knowledge: indexing, execution plans, transactions and schema design.
- Experience building and consuming REST APIs, including authentication, authorization and validation.
- Experience with Gradle or a comparable build tool (Maven) and multi-module projects.
- Good testing discipline: unit, integration and API tests with meaningful assertions.
- Comfort with Git, CI/CD pipelines and code review workflows.
- Clear written and verbal communication; ownership mindset.
Preferred Qualifications
- Spring Batch experience, including job design and large-volume data processing.
- Messaging experience with JMS, Kafka or similar.
- Redis caching experience (Redisson, Spring Cache, Hibernate L2 cache).
- Familiarity with AWS (S3, Cognito), observability tools (Dynatrace, Datadog) and Docker/Kubernetes.
- Background in financial services, trade processing or reconciliation