DEV Community

Cover image for Quarkus - Java for Kubernetes
Ritabrata Das
Ritabrata Das

Posted on

Quarkus - Java for Kubernetes

🚀 Getting Back in the Game with Quarkus – Supersonic Java for the Cloud

Hey devs! After a bit of a blogging hiatus (four years, to be exact!), I'm back—and what better way to return than with something that redefines Java for the modern cloud: Quarkus.

In this post, I’ll walk you through what Quarkus is, why it matters, and how you can get started fast—even if you're still nursing a hangover from heavyweight Java EE setups. 😅


🔍 What is Quarkus?

Quarkus is a Kubernetes-native Java framework tailored for GraalVM and HotSpot, crafted to make Java a top-tier citizen in the world of containers and serverless. Developed by Red Hat, it’s built on proven libraries like Hibernate, RESTEasy (JAX-RS), Vert.x, and Eclipse MicroProfile.

💡 Why Quarkus Exists:

  • Java is awesome, but its traditional frameworks are not cloud-native.
  • Cold start times, memory bloat, and long build cycles have made Java fall behind newer languages in the microservices world.
  • Quarkus fixes that.

Image description

⚡ Key Features That Got Me Hooked

Feature Why It Rocks
Fast Boot Time Quarkus boots in milliseconds, making it suitable for serverless.
Low Memory Usage Native builds use less RAM than traditional JVMs.
Live Coding Real-time reload without restarting the server.
Kubernetes Native Built for containers and Kubernetes out-of-the-box.
Developer Joy Simple configuration, dev UI, and zero-config REST endpoints.

Image description

Image description

🔧 Getting Started in 3 Commands

Here’s how to scaffold a Quarkus project in seconds:

# 1. Generate the project
mvn io.quarkus.platform:quarkus-maven-plugin:3.10.1:create \
    -DprojectGroupId=org.acme \
    -DprojectArtifactId=my-quarkus-app \
    -DclassName="org.acme.GreetingResource" \
    -Dpath="/hello"

# 2. Enter the project
cd my-quarkus-app

# 3. Start in dev mode (hot reload FTW!)
./mvnw quarkus:dev
Enter fullscreen mode Exit fullscreen mode

You’ll get a simple REST endpoint at http://localhost:8080/hello returning a friendly greeting.


📦 Native Compilation with GraalVM

Native compilation is where Quarkus shines.

./mvnw package -Pnative
./target/my-quarkus-app-1.0.0-runner
Enter fullscreen mode Exit fullscreen mode

You get a tiny binary, fast startup, and lower resource consumption—perfect for cloud deployments.


✅ Advantages of Using Quarkus

  • Blazing Fast Startup Time – Critical for serverless and autoscaling environments.
  • 🧠 Developer Productivity – Live reload, dev UI, and easy-to-add extensions speed up development.
  • 🐳 Cloud-Native by Design – Built for Docker/Kubernetes with out-of-the-box support.
  • 🛠️ Modern Tech Stack – Supports imperative and reactive programming models.
  • 🧬 Native Compilation – Thanks to GraalVM, apps can compile to small, fast executables.
  • 💼 Enterprise-Ready – Supported by Red Hat and built on top of mature libraries.

⚠️ Disadvantages / Limitations

  • 🧊 Cold Start for Native Builds – Native compilation times can be long and require GraalVM setup.
  • 🧩 Immature Ecosystem (compared to Spring) – Fewer integrations and community plugins.
  • 🧪 Learning Curve – Concepts like reactive programming or Panache might take getting used to.
  • 🔍 Debugging Native Binaries – Debugging GraalVM-compiled apps can be more complex.
  • 📦 Not a Drop-in Spring Replacement – Some Spring features may not work out-of-the-box.

Image description

🧩 Extension Ecosystem

Quarkus offers a wide range of extensions. Just run:

./mvnw quarkus:list-extensions
Enter fullscreen mode Exit fullscreen mode

Need Kafka? Redis? Panache for ORM? Just add the extension and you’re good to go.


🔗 Cloud-Ready by Default

Deploying to Kubernetes or OpenShift? Quarkus simplifies it with built-in configurations and Kubernetes descriptors generation.

./mvnw clean package -Dquarkus.kubernetes.deploy=true
Enter fullscreen mode Exit fullscreen mode

Boom—your app is on Kubernetes.


🧠 Final Thoughts

If you’ve been avoiding Java for greenfield cloud-native projects, Quarkus might change your mind. It brings performance, simplicity, and joy back to Java development in a way that’s actually fun again.

This is just the beginning—next up, I’ll explore reactive programming with Quarkus and integrating it with Kafka and PostgreSQL.

Stay tuned—and happy coding! 👨‍💻🔥


Have questions, thoughts, or suggestions? Drop a comment below or hit me up on Instagram / GitHub!

NB - I am coming back to writing articles after 4 years. Support me at:

buy me a coffee

Top comments (4)

Collapse
 
dotallio profile image
Dotallio

Love how you break down why Quarkus finally makes Java feel fun again! Have you tried it in production on real Kubernetes clusters yet?

Collapse
 
ritabratadas343 profile image
Ritabrata Das

Yes, but it is still in process. Will surely bring it upto production.

Collapse
 
nathan_tarbert profile image
Nathan Tarbert

pretty cool comeback, feels good seeing people fired up about tools like quarkus again - you ever think tech stacks like this end up shaping how teams work together or is it just about the code

Collapse
 
ritabratadas343 profile image
Ritabrata Das

True Nathan. Glad to see people still believe in Java tech.