Illustration of a ring of event loop threads, each serving many connections, with one blocked thread highlighted in red

Inside the Quarkus reactive core, part 1: the event loop from the ground up

I gave Quarkus two event loops and fired 24 requests at it at once. Every one was served by one of those two threads. Part one of a series on how Quarkus runs your code, starting below Quarkus: Netty, Vert.x and the rule you cannot break.

October 18, 2026 路 13 min 路 Matheus Oliveira
Illustration of a configuration file whose highlighted lines flow into a hexagon and come out as two dashed-outline blocks with plugs

Inside ArC, part 3: the beans nobody wrote

I found beans in my application鈥檚 bytecode that no class in the project declares. In part 3 of this ArC deep dive, I show how extensions create beans from configuration, why Quarkus doesn鈥檛 run Portable Extensions and how a Quarkus extension works inside.

October 11, 2026 路 8 min 路 Matheus Oliveira
Illustration of a code block with a translucent dashed frame in front and a layer behind it, an orange arrow looping back into the block and a dependency tree with one node dissolving into particles

Inside ArC, part 2: proxies, interceptors and the bean that vanished

A constructor that runs twice, an interceptor that works even on internal calls and a bean that doesn鈥檛 even exist at runtime. In part 2 of this ArC deep dive, I show what the Quarkus build changes in application code.

October 4, 2026 路 9 min 路 Matheus Oliveira
Illustration of an editor window with lines of code connected by an electric arc to a grid of blocks representing the generated bytecode

Inside ArC, part 1: the Quarkus CDI that runs before your code does

I opened the bytecode Quarkus generates for CDI to see what the container does before the application starts. Part one of a deep dive into ArC with real experiments: discovery, validation and a create() that is just a new.

September 27, 2026 路 11 min 路 Matheus Oliveira
SNES-style pixel art status screen showing eight stacked carriers: seven running in blue and one in red, locked behind a padlock, with threads queued up behind it

Virtual Threads: A Pocket Guide

What virtual threads solve, what they break, what happens when your database slows down, and why Java 25 made all of this far simpler than it was in 2023.

August 23, 2026 路 21 min 路 Matheus Oliveira
Trace waterfall of a single request: one fast root span above a descending ladder of forty identical SELECT queries

Observability in Practice: Why Instrument, and How Quarkus Makes It Cheap

Part 1 of 2. Why observability became the market standard after OpenTelemetry graduated from the CNCF, the minimum vocabulary to follow along, and what Quarkus gives you without writing a line of code.

August 8, 2026 路 21 min 路 Matheus Oliveira
16-bit SNES pixel art of a horizontal shoot-em-up where a starfighter launches data capsules flowing along three neon lanes numbered like partitions, with three satellite drones in formation consuming each lane, KAFKA logo on the HUD

Kafka Integration in Quarkus: Reactive Messaging, @Incoming and @Outgoing

Take messaging outside the application with SmallRye Reactive Messaging. Channels vs Topics, @Incoming, @Outgoing, Emitter, automatic JSON serialization, and Dev Services starting the broker without you installing anything.

August 1, 2026 路 20 min 路 Matheus Oliveira
Minimalist diagram showing four interconnected pillars labeled Style, Characteristics, Components, and Decisions, on a dark background

Software Architecture Fundamentals: the 3 laws and 8 expectations every developer should know

Everything in software architecture is a trade-off. A deep dive into Chapter 1 of Fundamentals of Software Architecture: the 3 laws that govern every architectural decision and the 8 expectations of an architect.

July 19, 2026 路 6 min 路 Matheus Oliveira
Minimalist diagram showing a central 'Agent' node connected to four modules: Soul, Memory, Skills and Tools, on a dark purple background

Qlawkus: Build Personal AI Agents in Java with Quarkus

Introducing Qlawkus, a set of Quarkus extensions for building personal AI agents in Java: memory that鈥檚 automatically injected, procedural skills, voice-enabled messaging, and composition via agent.yml.

July 12, 2026 路 9 min 路 Matheus Oliveira
Pixel art SNES 16-bit of a retro dispatch center with a robot operator routing glowing message packages through neon rails to three distinct receiver nodes, neon SIGNALS sign above

Internal Messaging in Quarkus: Signals, @Receives, and the New Publisher-Subscriber Pattern

Decouple components with Quarkus Signals. Type-safe resolution, @Receives, pub/sub vs unicast vs request-reply, and why Spring has no native equivalent.

June 27, 2026 路 12 min 路 Matheus Oliveira