Engineering With Java: Digest #94
AI, JVM Performance, Spring AI, Project Detroit & Modern Java
👋 Java Devs! Welcome to this week’s addition! I hope you’re all doing great.
This week, we cover essential insights on:
One Quick Announcement:
We are now planning to actively post on Youtube, mainly solving real world interview questions. So consider subscribing
Also, consider sharing your interview questions to me through DM or email (surajmishra150893@gmail.com). I will try to cover them.
📢 Get actionable Java and Spring Boot insights every week, including practical code tips and real-world, use-case-based interview questions, to help you level up your backend skills—join 8000+ subscribers for hand-crafted, no-fluff content.
First 100 paid subscribers will get the annual membership at $50/year forever that is ~ $4/mo ( 94 already converted to paid, 6 remaining)
Testimonials
Articles Of The Week
Nulling Out References Won’t Help Your Garbage Collector : This article explains that manually setting object references to null rarely helps Java's garbage collector because modern JVMs already determine when objects are no longer reachable. Explicit nulling usually adds unnecessary code and can even interfere with JVM optimizations. The only situations where it may be beneficial are long-running methods or loops where releasing large objects earlier can reduce memory pressure before the method completes. Instead of manually nulling references, developers should focus on eliminating memory leaks, reducing unnecessary object allocations, and understanding object lifecycles—letting the JVM's garbage collector do its job
Guardrails with OPA Policies in Quarkus LangChain4j : This article demonstrates how to build fast and cost-effective AI guardrails in Quarkus LangChain4j by combining Open Policy Agent (OPA) with WebAssembly (Wasm). Instead of sending every prompt to an LLM for prompt injection detection, deterministic OPA policies quickly allow or block obvious cases in under a millisecond at zero token cost, while only ambiguous prompts are escalated to an LLM for deeper analysis. This hybrid approach improves performance, reduces LLM costs, externalizes security policies from application code, and provides auditable, platform-independent guardrails for enterprise AI applications.
LLM Tool Call Reasoning Using Embabel Agentic AI Framework : The article shows how to build explainable AI agents in Spring AI by capturing the LLM's reasoning during tool selection using the Tool Argument Augmenter. Instead of only seeing which tool was called, developers can also understand why the model chose it, improving debugging, observability, and trust in AI applications. This additional reasoning can be logged, audited, or analyzed to make agent behavior more transparent and easier to troubleshoot in production.
Airbnb Shares Architecture behind Sitar-Agent Dynamic Configuration Sidecar for Kubernetes Services : This article shows how to build explainable AI agents in Spring AI by capturing the LLM's reasoning during tool selection using the Tool Argument Augmenter. Instead of only seeing which tool was called, developers can also understand why the model chose it, improving debugging, observability, and trust in AI applications. This additional reasoning can be logged, audited, or analyzed to make agent behavior more transparent and easier to troubleshoot in production.
Level Up Your Programming Game with a Java Book and Smalltalk : Author explains how writing Eclipse Collections Categorically led him back to the ideas of Smalltalk, a language that heavily influenced his approach to software design and Java development. He argues that many of Java's best practices, including cleaner APIs, method categorization, and developer productivity, can be traced back to Smalltalk. It encourages Java developers to learn from classic programming books and languages, emphasizing that timeless design principles can make us better programmer regardless of the language we use.
The AI Threat to Your Java Estate’s Security Is Coming from Both Outside and In : This article explains that AI is changing the Java security landscape from both directions: attackers are using AI to discover and exploit vulnerabilities faster, while developers are increasingly introducing AI-generated code that may contain security flaws. It argues that traditional patching cycles are no longer sufficient and emphasizes the need for complete visibility into Java runtimes, prompt JVM updates, continuous vulnerability assessment, and proactive security governance. The key message is that securing Java estate now requires managing both external AI-driven threats and the internal risks introduced by AI-assisted development.
HTTP QUERY in Java: The Missing Method for Complex REST API Searches : This article introduces the new HTTP QUERY method (RFC 10008) as a better alternative for complex search operations in REST APIs. Unlike GET, which is limited by URL length and query parameters, or POST, which doesn't accurately represent read-only operations, QUERY allows clients to send a structured request body while preserving safe and idempotent HTTP semantics.
Tuning Resilience4j Retry in Spring Boot Without Making Outages Worse : This article explains how to tune Resilience4j Retry in Spring Boot to improve reliability without amplifying failures during outages. Rather than blindly increasing retry counts, it recommends configuring retry limits, exponential backoff with jitter, selective exception handling, and combining retries with circuit breakers and timeouts. The key takeaway is that poorly configured retries can overwhelm struggling services, while well-tuned retry policies help applications recover gracefully without causing retry storms or cascading failures.
The Java Story: A Film About All of Us : This article highlights "The Java Story," a community-driven documentary that celebrates Java's 30-year journey through the people, innovations, and ecosystem that shaped one of the world's most influential programming languages. Rather than focusing solely on technical features, the film explores Java's impact on developers, open source, enterprise software, and the global community, showcasing how collaboration and continuous evolution have kept Java relevant for decades. It serves as both a historical retrospective and a tribute to the developers who continue to drive the platform forward.
📢 Most developers learn Vim by reading cheat sheets.
The fastest ones build muscle memory instead.
Gamified practice is surprisingly effective because it trains your fingers—not just your brain. Even 10 minutes a day can make navigation feel effortless, and those tiny improvements compound over thousands of edits.
Small habits. Faster coding.
Checkout: https://vimgym.io/welcome
Videos Of The Week
Scripting JS and Python with Project Detroit : Project Detroit is a new OpenJDK initiative that enables Java applications to run JavaScript (via V8) and Python (via CPython) directly inside the JVM using the javax.script API. Rather than building its own scripting engines like Nashorn, it provides a lightweight bridge to existing native runtimes, simplifying interoperability while maintaining high performance. Detroit will be distributed separately from the JDK, allowing independent versioning, and although still experimental, Oracle says it is already working well internally with plans to expand it through community feedback.
Java is entering a new era : Java 26 continues the platform’s evolution with a simpler language, richer APIs, and faster runtime, introducing features like Stream Gatherers, Scoped Values, the Foreign Function & Memory API, Structured Concurrency, HTTP/3 support, and ongoing improvements to virtual threads, GC, and Project Leyden. The language also reduces boilerplate through compact source files, module imports, primitive pattern matching, lazy constants, and other developer-friendly enhancements while strengthening performance and JVM integrity.
Idiomatic Kotlin applications with Spring Boot 4 : shares best practices for building modern Kotlin applications with Spring Boot 4, recommending Gradle Kotlin DSL, Java 25, Kotlin 2.x, WebMVC with virtual threads, and Spring’s new null-safe APIs powered by JSpecify. He highlights major improvements in Spring Boot 4, including modularization, Bean Registrar DSL, and Kotlin-friendly enhancements that simplify configuration, validation, and Java interoperability.
Spring AI 2.0: Custom Advisors for Tool & Token Logging : Author demonstrates how to build custom Spring AI Advisors, which act like AOP interceptors around LLM calls, allowing developers to execute logic before and after AI requests. He creates advisors to log available and invoked tools, monitor token usage, and improve visibility into AI interactions without changing application code. The video highlights Advisors as a powerful extension mechanism for observability, debugging, guardrails, and upcoming features like dynamic tool search in Spring AI.
In-house Blogs
Thats all for this week friends! Thanks for reading this far. If you liked it please share with your network.
Happy Coding 🚀
Suraj
Subscribe | Sponsor us | LinkedIn | Twitter | Youtube





Hey, nice. HTTP QUERY finally solving the awkward GET-vs-POST dance for search endpoints?Looks like of those subtle polishes that save a thousand hacky workarounds. Awesome. I've encountered and written way too many search APIs that abuse POST just to dodge URL length limits. Progress!