Diagnose and tune Hibernate ORM runtime behaviour in Java/Spring apps - persistence context and entity lifecycle, lazy vs eager loading, N+1 queries, fetch joins, entity graphs, projections, cascades and orphan removal, dirty checking and flush,…
Add AI/LLM capabilities to Java applications safely - model-provider abstraction (Spring AI ChatClient or a provider SDK), structured outputs with schema validation, tool calling and its authorization, retrieval-augmented generation, embeddings and vector…
Make and review software design and architecture decisions in Java codebases - SOLID and dependency direction, layered vs hexagonal (ports and adapters), package-by-feature vs by-layer, domain models and invariants, DDD where it pays off, modular monolith vs…
Review Java changes (a diff, branch, PR or files) for correctness, security, data integrity, concurrency, API compatibility, test adequacy, performance and maintainability, and judge release readiness against the repository's own standards. Covers Spring…
Core Java language and runtime guidance for writing or modifying plain Java code - records, sealed types, generics, collections, streams, exceptions, immutability, concurrency, virtual threads, CompletableFuture, java.time, I/O, JVM memory/GC, null handling…
Relational database engineering for Java applications - schema design, keys, constraints, indexes and normalization, SQL query design, transactions and isolation levels, connection pool sizing (HikariCP), migrations with Flyway/Liquibase and rollback…
Shared foundation workflow for any Java task in an existing repository (Spring Boot, web/REST, JPA/Hibernate, Android, libraries, multi-module builds). Use at the start of any Java implementation, bug fix, refactor, upgrade or review to discover the…
Diagnose and fix Java build failures, dependency conflicts, application startup and bean-wiring errors, security configuration failures, SQL/transaction/network/messaging failures and Android build problems, and plan or execute upgrades (Java versions, Spring…