JVM Languages & Frameworks
- Modern Java: Records, sealed classes, pattern matching, text blocks, virtual threads (Project Loom)
- Spring Boot 3.x: Auto-configuration, actuator, profiles, testing with @SpringBootTest
- Spring MVC & WebFlux: Reactive vs imperative — when and why
- Production concerns: Graceful shutdown, health endpoints, metrics exposure, Docker packaging
- Suitable for: developers new to Spring, teams upgrading from Spring Boot 2.x
- Kotlin fundamentals for Java developers: null safety, data classes, extension functions, coroutines
- Kotlin + Spring Boot: idiomatic use of Spring with Kotlin, DSL configuration
- Coroutines for async code: structured concurrency, Flow, suspend functions
- Interoperability with existing Java codebases
- Quarkus vs Spring Boot: startup time, memory footprint, GraalVM native build
- Reactive programming with Mutiny
- Panache ORM, RESTEasy Reactive, OpenAPI integration
- Kubernetes-native features: health checks, config maps, Quarkus extensions ecosystem
Spring Ecosystem Deep-Dives
- Spring Data JPA: Entity mapping, repository abstractions, query methods, Criteria API, N+1 problem prevention
- Hibernate internals: Session lifecycle, caching (L1/L2), lazy loading pitfalls, schema generation
- Spring Security: Filter chain, authentication providers, method-level security
- OAuth2 & OIDC: Authorization code flow, resource server configuration, JWT validation, Keycloak integration
- Spring Cloud: Config Server, Eureka, Circuit Breaker (Resilience4j), distributed tracing
- Spring Cloud Gateway: Route configuration, filters, rate limiting, JWT forwarding
- Spring Integration: Message channels, adapters, EIP patterns — email, SFTP, JMS integrations
API Design
- REST constraints and Richardson maturity model in practice
- OpenAPI 3.1: spec-first development, code generation, validation
- Versioning strategies, HATEOAS, error response standards (RFC 7807)
- API testing: RestAssured, WireMock, contract testing with Pact
- GraphQL: Schema-first design, resolvers, N+1 with DataLoader, subscriptions, federation
- gRPC: Protocol Buffers, streaming (unary/server/client/bi-directional), error handling, gRPC-Web
- SOAP & WSDL: Legacy integration patterns, JAX-WS, Spring-WS, WS-Security
- When to choose which protocol — trade-off analysis
Messaging & Event Streaming
- Core concepts: topics, partitions, offsets, consumer groups, replication
- Producer and consumer configuration: acks, idempotence, delivery guarantees
- Kafka Streams: stateless transformations, KTables, windowing, joins
- Schema Registry with Avro/Protobuf, exactly-once semantics (EOS)
- Production: monitoring consumer lag, compacted topics, retention tuning
- RabbitMQ: Exchange types (direct, fanout, topic, headers), dead-letter queues, priority queues
- Spring AMQP: RabbitTemplate, @RabbitListener, retry policy, manual acknowledgment
- ActiveMQ: JMS API, topic vs queue, persistence, ActiveMQ Artemis
Data Engineering
- Redis: Data structures, TTL strategies, pub/sub, Lua scripting, Redis Cluster, distributed locks
- PostgreSQL: Advanced query optimization, indexes (B-tree, GIN, partial), EXPLAIN ANALYZE, row-level security
- MongoDB: Document modeling, aggregation pipeline, transactions, Atlas Search
- Flyway / Liquibase: Migration strategies, rollbacks, multi-schema setups, CI integration
- BPMN 2.0 notation: tasks, gateways, events, sub-processes
- Camunda 7: Embedded vs standalone engine, JavaDelegate, Cockpit, incident management
- Camunda 8 / Zeebe: Cloud-native architecture, gRPC client, Operate, Tasklist
- Process testing, compensation transactions, saga pattern with BPMN
- GC tuning: G1GC, ZGC, Shenandoah — when to use which
- Heap analysis: heap dumps, MAT, jmap, object retention analysis
- CPU profiling: async-profiler, JFR/JMC, flame graphs
- Common Java performance anti-patterns and how to identify them in code review
Training Formats
1–5 days depending on depth. Multi-module paths available across multiple weeks with practice between sessions.
On-site, remote, or hybrid. Participants work on real coding exercises using your project's tech stack where possible.
Basic Java or OOP experience recommended for most modules. Beginner tracks available for teams starting from scratch.
German or English. Materials available in both languages.
Book a Backend Training
Whether your team needs a deep Spring Boot fundamentals course or a targeted Kafka architecture workshop — let's talk about what will actually move the needle for your project.
Get in touch