- Experience: 5+ years of backend software engineering experience in a professional environment, with at least 2 years building production microservices.
- Java / Kotlin: Strong proficiency in Java (11+) and the Spring ecosystem (Spring Boot, Spring Data, Spring Security). Kotlin experience is a plus but not required.
- API Development: Solid experience designing and implementing RESTful APIs. Understanding of API versioning, error contracts, pagination, and idempotency. gRPC experience is desirable.
- Database: Robust SQL skills and experience with relational databases — PostgreSQL (preferred) or SQL Server. Experience with schema design for transactional systems, query optimisation, indexing strategies, and database migration tooling (Flyway or Liquibase).
- Messaging & Event Streaming: Experience with message brokers — Kafka (preferred) and/or IBM MQ. Understanding of event-driven architecture patterns, consumer groups, schema evolution, and at-least-once delivery guarantees.
- Testing: Proven testing discipline — unit testing (JUnit 5, Mockito), integration testing (Testcontainers), contract testing (Pact or Spring Cloud Contract), and experience building comprehensive test suites for complex business logic.