Practical writing on Java, Spring, AI, and the craft of software engineering.

If you're building with Java and Spring (or trying to figure out where AI fits into your development workflow) you're in the right place. I write practical, beginner-friendly deep dives on Spring Boot, Spring AI, and software engineering fundamentals, collected here in chronological order.

Filtering by tag: spring-ai

Spring AI TypeSafe: Build a Model Router From Scratch

Spring AI/

Spring AI TypeSafe: Build a Model Router From Scratch

Learn Spring AI TypeSafe by building a model router from an empty app. One Choice question to Jev picks the cheapest OpenAI model tier for every prompt.

Read article 23 min read
I Built My Own Content OS With Claude Code
· 10 min read

I Built My Own Content OS With Claude Code

How I built Content OS with Claude Code and Spring Boot to manage videos, blog posts, and newsletters, and what changes when you build software for one user.

Spring AI: Build Real Guardrails that hold
· 21 min read

Spring AI: Build Real Guardrails that hold

Learn how to build Spring AI guardrails with SafeGuardAdvisor, custom PII masking, and output rails to stop prompt injection and data leaks.

Spring AI 2.0 Tool Calling: Build a Live Claude-Style UI
· 19 min read

Spring AI 2.0 Tool Calling: Build a Live Claude-Style UI

Build a Claude-style 'Calling tool...' UI with Spring AI 2.0's ToolCallingAdvisor. Stream live tool call events over SSE from the ChatClient advisor chain.

Embabel 1.0 Is Here: AI Agent Framework for Java Goes GA
· 12 min read

Embabel 1.0 Is Here: AI Agent Framework for Java Goes GA

Embabel 1.0 is GA. What Rod Johnson's AI agent framework for the JVM means for Java developers, what changed on the road to 1.0, and how to get started.

Self-Correcting Structured Output in Spring AI 2.0
· 16 min read

Self-Correcting Structured Output in Spring AI 2.0

Learn how Spring AI 2.0 validates LLM JSON against your schema and automatically retries failures with self-correcting structured output. A beginner guide.

Can You Use Java for AI? Why Java Is Better Positioned Than You Think
· 14 min read

Can You Use Java for AI? Why Java Is Better Positioned Than You Think

Can you use Java for AI? Yes. For building real AI applications it might be the better choice. Why the JVM, Spring AI, and your existing team are enough.

Spring AI Tool Search: Stop Wasting Tokens on Tools You Don't Need
· 17 min read

Spring AI Tool Search: Stop Wasting Tokens on Tools You Don't Need

Spring AI 2.0's tool search brings dynamic tool discovery to Spring Boot—load tools on demand instead of into every request to cut token usage and cost.

Building Custom Spring AI Advisors for Tool Logging and Token Tracking
· 24 min read

Building Custom Spring AI Advisors for Tool Logging and Token Tracking

Learn to build custom Spring AI advisors with the BaseAdvisor interface to log available tools, track tool invocations, and count token usage on every LLM call.

ChatClient vs ChatModel: Which Spring AI API Should You Actually Use?
· 14 min read

ChatClient vs ChatModel: Which Spring AI API Should You Actually Use?

Spring AI gives you two ways to call an LLM. Learn the difference between ChatClient and ChatModel, when to use each, and see both in action with code examples.