BLOG: NLJUG MASTERCLASS QUARKUS

NLJUG Academy Masterclass: Modern Development with Quarkus

By Susanne Pieterse – Java developer

Introduction

I recently had the pleasure of attending the NLJUG academy Masterclass meetup focused on modern development with Quarkus. I’m excited to share my insights with you.

First and foremost, a heartfelt shout-out to the NLJUG team and the speakers of the evening, Joran Bergfeld and Dirk Janssen!

What Was Covered?

The masterclass was about the various aspects of Quarkus, a Kubernetes-native Java framework. Here are some key takeaways:

The Quarkus CLI makes it easy to create a Quarkus application. Unlike Spring Boot’s massive starter dependencies, you need to add each dependency you need separately. This gives you fine-grained control over the dependencies that are included in your application. Fortunately, there is also a CLI command for this.

Joran Bergfeld introduced defensive programming practises like retries, fallbacks and circuit breakers, which you can add as annotations in your code. I was surprised by the ability of Quarkus to ‘automagically’ create a readiness health check by adding the SmallRye Health dependency. It also updated the kubernetes.yaml with the health and readiness checks in the deployment of the Quarkus application. The effect of adding the OpenTelemetry dependency to the project was amazing. Without any configuration it added metrics, spans and traces for observability purposes. I was not aware of these cool features of Quarkus and it made me want to tinker with it as soon as I was on my train back home.

The second speaker of the evening was Dirk Janssen, who is Technical Lead of the Airport Service Bus. This is the system that covers IT from the flight control tower to the toilet rooms. Dirk paints an impressive IT landscape covered by over 400 containers running on Open Shift or virtual machines. The cost of downtime is enormous; hence reliability is a very important consideration when choosing a new technique. With the large number of containers, it is also important to control and preferably reduce the resource usage. Quarkus, especially its native builds, enables this reduction. Native builds also have their challenges. They take away the ability to use reflection, so one needs to register these classes beforehand. Dirk’s team use their own Maven plugin that creates the large list of classes for them. Dirk showed the reduction in used resources of their containers. It was impressive and definitely proves Quarkus was a good choice for them.

As always, the mingling with fellow NLJUG members and the NLJUG organizing team is an important part of the fun of an in-person meetup. It is great to meet new people and learn about their projects.

Conclusion

The NLJUG academy masterclass left me inspired and eager to explore Quarkus further. If you missed the event, keep an eye out for future NLJUG meetups—they’re a fantastic opportunity to learn and connect with fellow developers and the NLJUG organizers.