Merlin Bögershausen
Software Architect and Engineer - Oracle ACE
Software Architect und Engineer - Oracle ACE
Herne, Germany
Actions
Merlin is a Software Engineer, Architect and Oracle ACE with over 10 years of experience in different domains and languages. His main focus is Java Enterprise Applications with modern and Next-Generation Java. As a Migration Engineer, he helps teams and individuals utilize new features and supports them in migrating. Besides developing, speaking at conferences and his parental role, he tries to participate in community events, teach folk to land gliders (yes, I am a Flight Instructor!) and play volleyball.
Merlin ist Softwareingenieur, Architekt und Oracle ACE mit über 10 Jahren Erfahrung in verschiedenen Bereichen und Sprachen. Sein Schwerpunkt sind Java Enterprise Applications mit modernem und Next-Generation Java. Als Migration Engineer hilft er Teams und Einzelpersonen bei der Nutzung neuer Funktionen und unterstützt sie bei der Migration. Neben der Entwicklung, dem Halten von Vorträgen auf Konferenzen und seiner Rolle als Elternteil versucht er, an Veranstaltungen der Gemeinde teilzunehmen, Leuten das Landen von Segelflugzeugen beizubringen (ja, ich bin Fluglehrer!) und Volleyball zu spielen.
Area of Expertise
Topics
Data Oriented Programming in Java
I will demonstrate the use of Records, Sealed Classes, all Patterns, Switch Expressions, Text Blocks and String Expressions in my [Data Oriented Java](https://github.com/MBoegers/DataOrientedJava) example project. I will take the attendees on the journey from modelling the Domain to implementing the logic, with a brief intro to every new feature we discover. In the end, attendees will have a grounded understanding about:
How to model for DOP in an OOP Environment?
How to make use of Patterns, Text Blocks and String Expressions?
In which direction modern Java evolved?
Open Rewrite – Dive in Automated Refactoring
Refactorings are proactive actions aimed at enhancing code quality without altering its behavior, effectively minimizing the risk of introducing new bugs. Despite being occasionally dismissed as 'costs, ballast, or dumb work,' it's essential to recognize that small refactorings represent significant rebuilding efforts, comparable to tasks such as updating frameworks or enforcing coding standards.
Software engineers and IT managers grappling with modernization challenges will find this session invaluable. Open Rewrite empowers them to streamline refactoring efforts, significantly reducing manual work and ensuring reproducibility. Its architecturally sound design facilitates easy integration into existing workflows, supporting code compliance and fostering high-quality development practices.
By the end of this session, attendees will have gained a foundational understanding of Open Rewrite. This knowledge serves as a springboard for minimizing efforts, ensuring reproducibility, and unlocking avenues for continued high-quality development in the realm of code modernization.
Kickstart your migrations - the basics of Migration Engineering with OpenRewrite
In recent years, development in the Java ecosystem has accelerated. Whether Java SE, Jakarta EE or Spring Boot - the releases and end-of-support messages are chasing each other. The number of necessary migrations is exploding and the feature pressure is not letting up.
With the open source tool OpenRewrite, migrations can be applied to projects in an automated and scalable way. The large and growing number of ready-made migrations offers solutions for many situations. Additional requirements can be implemented quickly thanks to the configuration and combinability of existing migrations. More complex adaptations are easy to implement thanks to the direct integration of Refaster templates.
This session covers the range of functions and the integration of OpenRewrite into existing projects. The basics of test-driven development of migrations will also be covered. Participants in this session will learn the basics of OpenRewrite and receive valuable tips for regular use.
A demo guided tour through the basic features of OpenRewrite needed for basic Migration Engneering Tasks.
LevelUp your Migrations - Advanced MigrationEngineering with OpenRewrite
With the open source tool OpenRewrite, migrations can be automated and executed in a scalable manner. However, every migration should be preceded by a needs analysis. What options are there if the result does not meet expectations or steps are missing?
With data tables, OpenRewrite migrations can extract detailed information from the source code and make it available for analysis. The same API is used to influence the information collected as for project-specific migrations. The resulting migrations can be stored as recipe artifacts and applied to other projects as required. Reuse reduces the effort required for further frustration-free migrations.
In this session, the necessary concepts such as Data Tables, Impertative Java Recipes, Recipe Artifact and Java Templates for extensive migration engineering with OpenRewrite are taught. After this session, participants will know the most important constructs for planning, defining and executing project-specific migrations.
A demo guided tour through the advanced, yet crucial features of OpenRewrite for Migration Engineering.
More action, more overview - concurrent programs with Java Preview features
What actually happens here and when? When does it stop, how is communication between activity strands handled? And what happens if an error occurs? This kind of confusion doesn't have to be (anymore)!
Java 23 introduces some new APIs in the context of concurrent logic: Scoped Values can pass data from a thread to its child threads, and Structured Concurrency makes it easy to treat concurrent tasks as a single unit. These features combined with Virtual Threads make concurrent programming with Java easy.
In this session we will look at what's new in concurrent programming with Java. The new APIs will make your concurrent logic easier to understand and easier to implement.
Demonstration of Structured Concurrency and Scoped Values in action.
Migration Engineering Example - Experiences in catapulting from Java EE/Spring
Great joy in the development team of a customer project: JBoss 8 and Java 17 finally get the sluggish infrastructure moving. Great joy is followed by sheer horror on the part of the project management when it becomes clear how much effort is involved in migrating the Java 8 applications. Many other teams will have a similar experience to us, but there is a way through the confusion.
With Eclipse Transfomer, Spring Boot Migrator and OpenRewrite, there are tools to help teams carry out large migrations. We used them to migrate our applications from Java EE 7 and Spring Boot 2.6 to Spring Boot 3.2 and Jakarta EE 10. At the end, we had five technologically modernized applications and still enough time to implement further features.
In this session, I would like to share my experiences from several tool-supported migrations. The participants can expect a comparison of the alternatives, pitfalls found and tips from the practice of a migration engineer.
And session about the joy and pain of Migration Engineering for Enterprise projects.
Please note that Sessionize is not responsible for the accuracy or validity of the data provided by speakers. If you suspect this profile to be fake or spam, please let us know.
Jump to top