Welcome to my blog! 馃憢

Hi, I’m Matheus Oliveira. I’m a developer focused on Java, Quarkus, and Cloud. Here I share technical guides and experiences from my daily life.
NES-style pixel art: a retro game console with several cartridges floating above its slot, each cartridge labeled like a plugin (NROM, MMC1, MMC3), a glowing 'ServiceLoader' label on the console reading them automatically

Java SPI: The Built-in Superpower Every Developer Should Know

There is a plugin system hiding inside the JDK that most developers never use on purpose. Java SPI (ServiceLoader) lets you add behavior without touching the code that consumes it. I show it with real code from my NES emulator, kill the fragile META-INF file with Google AutoService, cover the modern JPMS variant, and finish with how Quarkus does the same idea at build time.

June 13, 2026 路 14 min 路 Matheus Oliveira
OCI Notifications and Event-Driven Architecture

Event-Driven on the Free Tier: OCI Notifications (ONS) as an Event Bus

Discover how to implement Event-Driven Architecture on OCI Always Free using OCI Notifications (ONS). ONS delivers 1M HTTPS notifications/month and 1000 emails/month for free.

June 7, 2026 路 8 min 路 Matheus Oliveira
SNES 16-bit pixel art sky with a fluffy popcorn cloud (floccus) raining AWS service icons (S3, DynamoDB, Lambda) onto a pixel laptop, neon FLOCI sign above

Floci: a Free, Drop-in LocalStack Alternative Built on Quarkus

LocalStack Community froze in March 2026 and now asks for an auth token. Floci is the no-strings-attached replacement: a free, MIT-licensed, Quarkus-native local AWS emulator. I test it for real: AWS CLI, a real Lambda, two ways of wiring a Quarkus app (Dev Services and Testcontainers), and a LocalStack migration.

May 31, 2026 路 16 min 路 Matheus Oliveira
SNES 16-bit pixel art beat 'em up scene of a warrior absorbing database crystal power into their body while reactive energy waves radiate outward, neon ACTIVE RECORD sign in the background

The Active Record Pattern and Hibernate Reactive: Entities That Save Themselves in Quarkus

Entities that save themselves! Refactor your orders application to the Active Record pattern with PanacheEntity, learn when to choose Repository vs. Active Record, and enter the reactive world with Hibernate Reactive and @WithTransaction.

May 24, 2026 路 21 min 路 Matheus Oliveira
SNES 16-bit pixel art of a robot wizard in a red cape holding floating weather and geocoding tools, with code runes in the background

AI Agent Tools in Quarkus LangChain4j: When the REST Client Becomes the LLM's Right Hand

Build an AI agent that calls real REST APIs as tools, without writing any orchestration logic. REST Client + @Tool = automatic tool. The LLM decides when to call, which to call, and with what arguments. Everything runs locally with Ollama via Dev Services, zero API key.

May 14, 2026 路 17 min 路 Matheus Oliveira
SNES 16-bit pixel art beat 'em up scene of a street fighter shattering an in-memory list enemy while crystal database tables rise from the ground, neon PANACHE sign in the background

Persistence with Panache: From Spring Data JPA to the Repository Pattern in Quarkus

No more in-memory lists! Evolve your orders application with real persistence using Hibernate ORM with Panache in the Repository pattern. Dev Services, pagination, HQL queries and the transition from Spring Data JPA.

May 10, 2026 路 10 min 路 Matheus Oliveira
Quarkus Native on Knative cold start benchmark

Quarkus Native on Knative: 5x Faster Cold Start, 20x Less Memory

What does a 3-second cold start cost you in production? SLO breaches on every scale-from-zero event and 19x more cloud spend on memory. I benchmarked a real Quarkus app in containers and the numbers make the case.

May 3, 2026 路 8 min 路 Matheus Oliveira
Java AI libraries comparison

Java AI Libraries Compared: LangChain4j, Spring AI, and Quarkus LangChain4j

I built the same AI app with LangChain4j, Spring AI, and Quarkus LangChain4j. One of them took 92 lines. The others took 192 and 180.

April 25, 2026 路 12 min 路 Matheus Oliveira
Quarkus Logo and open-source symbols

Why You Should Be Part of the Quarkus Community

Contributing to open source doesn鈥檛 have to be scary. A true story of how interacting with the Quarkus community led to a contribution to a newly launched project in less than 48 hours.

April 18, 2026 路 5 min 路 Matheus Oliveira
Journey to become a Quarkus committer

Committer Mission: A Journey into Open Source

How a mentorship session with Luiz Real made me plan to become a Quarkus committer in 12 months.

April 4, 2026 路 5 min 路 Matheus Oliveira