Techniques for Maintainable Quarkus Applications

What You'll Learn

1Hear about using Quarkus to write more maintainable code.

2Be encouraged to experiment with new tools and techniques in order to write better code.

Over time, different people will work on a distributed system to maintain its current behavior and adapt the solution to new use cases; all these team members should work productively. Join this session to find out some techniques to calm those noisy loggers, avoid memory leaks, or have better control over your endpoints' response time; all these crafted to effectively maintain your Quarkus baked microservices.

What is your talk about?

My talk is for an audience that has already experienced a few things around microservices, already knows the concepts and experimented around those, and wants to make their current application more maintainable. I'm thinking about people that already have experience with Quarkus, but also people that haven't experienced it yet. And they're on Spring Boot, and they're thinking, can I spice it up with some benefits from Quarkus? That's another thing that I want to touch on in my talk as well — the benefits of Quarkus,  why I like it, and wanted to work with it. I love the live reload, but I'm also coming from the Spring and Spring Boot backgrounds, so it was easy to transition to Quarkus working thanks to the Quarkus Spring API compatibility. I can still play with Spring dependency injection and Spring concepts, thanks to the Quarkus Spring API compatibility. I hope you will go through my talk and listen to the techniques that I'm sharing there and maybe start combining the best of both worlds. That's the beauty of the IT world: you can always explore, see which new frameworks or libraries improve your current work, and choose what fits best for your application performance.

Can you give me an example of one of the techniques you'll talk about?

One of the techniques that I'm talking about is fine-tuning logs and separating the control on those at different locations in the application. I would also like to bring to the public the topics of unit testing and integration testing spiced with a bit of flavor of metrics. I'm talking about how you can assess the performance of some of your endpoints and choose what to improve. Another thing that the attendees will notice is that I preferred working with GraphQL because by using it, I can fetch precisely what is required. Also, it allows multiple resource requests in a single query call, which reduces time and bandwidth by decreasing the amount of network round trips to the server. In a distributed architecture, each microservice can define its schema, and by using schema stitching, you can weave them into one schema accessible by the client.

What are the key takeaways?

How to use Quarkus capabilities in order to write software that is easier to maintain. That maintenance is not just about bug fixing, but also about optimizing existing functionality and adjusting code to prevent future issues. I hope that what I will show will ignite the curiosity of the attendees to try new approaches in their current work. As professionals, we are not making code for ourselves. We're making code to cooperate better within the teams that we are part of, without forgetting the outcomes from that code: functionalities for end-users.


Ana Maria Mihalceanu

Solutions Architect @IBM & Java Champion
Ana is Java Champion, Application Architect, co-founder of Bucharest Software Craftsmanship Community, and a constant adopter of challenging technical scenarios involving Java-based frameworks and multiple cloud providers. She is an active supporter of technical communities’ growth through... Read more Find Ana Maria Mihalceanu at:

Wednesday May 19 / 09:10AM EDT (40 minutes)

TRACK Current and Future Java and JVM languages TOPICS JavaAPIProgramming ADD TO CALENDAR Calendar IconAdd to calendar