Niklas Heidloff
Application Modernization and Rabbits
#1about 5 minutes
Using a rabbit analogy to explain application modernization
A simple analogy with rabbits illustrates the core benefits of modernizing monolithic applications, such as increased agility, better user experiences, and reduced costs.
#2about 3 minutes
Understanding the benefits and strategies for modernization
Microservices improve application resiliency, and key strategies for dealing with legacy code include retiring, rehosting (lift and shift), containerizing, or refactoring.
#3about 3 minutes
Comparing the legacy and modernized e-commerce applications
A demonstration shows the original 10-year-old Dojo-based e-commerce application and its modernized, container-based counterpart with a new UI.
#4about 3 minutes
Outlining the incremental eight-step modernization process
The modernization journey is broken down into eight incremental steps, starting from containerizing a Java EE monolith to implementing micro frontends.
#5about 5 minutes
Using tools to containerize a legacy Java application
The IBM Cloud Transformation Advisor and WebSphere Application Migration Toolkit are used to analyze legacy code and automate the process of moving it into a container.
#6about 5 minutes
Separating the frontend and migrating to open source
The application is refactored by separating the frontend and backend with REST APIs using a BFF pattern, then migrating the runtime from WebSphere to Open Liberty.
#7about 9 minutes
Using the strangler pattern to extract a microservice
The Strangler Fig pattern is applied to incrementally replace parts of the monolith, using the Mono2Micro tool to identify the catalog as the first microservice to extract.
#8about 6 minutes
Using event-driven architecture to decouple microservices
To avoid creating a distributed monolith with tight coupling, an event-driven approach with Apache Kafka is used for asynchronous communication between services.
#9about 5 minutes
Improving performance with modern runtimes and reactive code
Modern Java runtimes like Quarkus, combined with efficient JVMs like OpenJ9 and reactive programming patterns, can significantly improve application performance and efficiency.
#10about 7 minutes
Decomposing the UI monolith into micro frontends
The monolithic frontend is broken down into independent micro frontends using frameworks like Vue.js and single-spa, with RxJS for event-based communication.
#11about 15 minutes
Accessing the open source project and future plans
The complete sample application is available on GitHub with scripts for easy setup, and future work includes adding CI/CD pipelines for Kubernetes and OpenShift.
Related jobs
Jobs that call for the skills explored in this talk.
Wilken GmbH
Ulm, Germany
Intermediate
Java
Maven
+1
Matching moments
02:15 MIN
Understanding the challenges of application modernization
Supercharging Static Code Analysis: Konveyor AI & LLMs
02:21 MIN
The evolution from traditional Java EE to modern runtimes
2021: Familiar APIs on Kickass Runtimes #slideless
02:16 MIN
Understanding the scope of automated modernization
Application Modernization Leveraging Gen-AI for Automated Code Transformation
02:35 MIN
Running the fully modernized Quarkus application
Supercharging Static Code Analysis: Konveyor AI & LLMs
02:13 MIN
Using software intelligence to accelerate modernization
Grappling With Clunky Old Software? Start by Understanding What’s Inside!
05:41 MIN
Q&A: Gaining buy-in and modernizing legacy applications
An Architect’s guide to reducing the carbon footprint of your applications
03:07 MIN
Challenges of modernizing and scaling monolithic frontends
Web-Fragments: incremental micro-frontends migration approach for enterprise
01:59 MIN
Discovering reactive programming through a modern Quarkus project
Is reactive the new black? Imperative vs. reactive programming with Quarkus
Featured Partners
Related Videos
Application Modernization Leveraging Gen-AI for Automated Code Transformation
Syed M Shaaf
Single Server, Global Reach: Running a Worldwide Marketplace on Bare Metal in a Cloud-Dominated World
Jens Happe
Development of reactive applications with Quarkus
Niklas Heidloff
Cloud Chaos and Microservices Mayhem
Holly Cummins
2021: Familiar APIs on Kickass Runtimes #slideless
Adam Bien
Domain-Driven Transformation—How to Bring (Back) Sustainable Architecture to Legacy and Monoliths
Henning Schwentner
Our journey with Spring Boot in a microservice architecture
Michael Eder & Philipp Frauenthaler
Quarkus. A Bliss for developers
Alex Soto
Related Articles
View all articles



From learning to earning
Jobs that call for the skills explored in this talk.

&why GmbH
Berlin, Germany
€50-70K
Junior
Intermediate
Senior
React
Next.js
TypeScript

SMG Swiss Marketplace Group
Canton de Valbonne, France
Senior

Code Healers LLC
Hinesville, United States of America
Remote
€40-50K
Intermediate
Senior
PHP
.NET
React
+2

Unisys Corporation
Municipality of Madrid, Spain
ELK
Java
REST
DevOps
Docker
+7

RM IT Professional Resources AG
Zürich, Switzerland
GIT
Java
Eclipse

ITech Consult AG
Bern, Switzerland
Senior
Java
JIRA
Docker
Angular
Kubernetes
+2

J&C Associates
Remote
Intermediate
XML
Java
Unix
Solr
+4

Akros Ag
Biel/Bienne, Switzerland
Junior
Java
Scrum
React
Spring
Docker
+7
