[{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"A talk on git? In this day and age?! Yes. Especially in this day and age. AI agents are running increasingly obscure git commands in our terminals, and most of us just nod along, pretending we know what rerere does. If the machines get to have fun with git, so do we.<br><br>So to understand git better, Alexander built an RTS game with git at its core, and in this session you will see it in action! Expect jumps between alternate timelines using branches, time travel back and forth through history, and a front row seat to what happens when a merge conflict occurs between two buildings.<br><br>Somewhere between the conquests and the explosions, the weird parts of git start to make sense. Detached heads, rebases, the plumbing underneath, all of it becomes a lot less mysterious once you have seen it blow up an energy plant. Beginners will leave with a solid feel for how git actually works, veterans with a fresh look at a tool they use every day. Come for the explosions, stay for the fun and giggles!","fieldGroup":null,"fieldGroupValues":[],"id":24218,"keywords":[{"name":"rebase"},{"name":"branches"},{"name":"merge"},{"name":"git"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Alexander, a 36-year-old Software Engineer at JDriven, holds dual Dutch and Greek nationality. He earned his master’s degree in Game Studies from the University of Amsterdam, where he discovered his passion for gamification and software engineering. Alexander aims to bridge the gap between game development and software engineering, believing that both industries have much to learn from each other. He is dedicated to integrating technologies and methodologies from both fields. Additionally, he enjoys experimenting with new technologies and cutting-edge sdk&#39;s.","blueskyUsername":"glycin.bsky.social","company":"JDriven","countryName":"Netherlands","firstName":"Alexander","fullName":"Alexander Chatzizacharias","id":10163,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-da804363-5740-431f-acd7-b3a9c4ad99ab.jpg","lastName":"Chatzizacharias","linkedInUsername":"alexander-chatzizacharias","mastodonUsername":"","twitterHandle":"glyc1n"}],"summary":"An interactive talk uses an RTS game built around Git to explain branches, merges, rebases, detached heads, and conflicts. Through time travel, alternate timelines, and explosive gameplay, beginners gain intuition and veterans get a fresh perspective on how Git really works.","timeSlots":[],"title":"Conquest, time travel and explosions using Git","totalFavourites":13,"track":{"id":2758,"name":"Mind the Geek","description":"Developer candy: stuff we want to know about but dont (generally) at work, Robotics, biological computing, cybernetics, AI, new toys, tomorrows world","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-robot-arm.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"For years, Python has reigned supreme in the data science and machine learning landscapes, leaving Java developers with a lingering sense of FOMO. But things have changed. With the advent of lightweight data frames, blazing-fast native file parsers, and interactive notebooks, Java has evolved into a formidable environment for data engineering, exploration, and deep learning.<br>In this code-driven, interactive and hands-on session, we will break down the myth that you have to context-switch to Python for data science. We will build a complete predictive machine learning pipeline entirely in Java, utilizing an elite stack of modern JVM tools:<br><br>JTaccuino: For interactive, Jupyter-style exploratory data analysis directly inside a Java notebook environment.<br>Hardwood: The ultra-fast, zero-dependency Apache Parquet reader optimized for modern multi-core JVM performance to ingest large datasets.<br>DFLib:A lightweight, expressive Java DataFrame library to clean, filter, and manipulate our data.<br>DeepNetts: A pure Java based deep learning development toolkit for building, training, and evaluating neural networks, featuring CPU or GPU acceleration.<br>gog4j: An exclusive first look at a highly anticipated, unreleased Java plotting API based on the grammar of graphics to natively visualize data and model metrics right in the notebook.<br><br>Paging all Java Developers interested in doing math, science, AI, QC and more with Java - join us to shape Java&#39;s future in scientific computing.","fieldGroup":null,"fieldGroupValues":[],"id":22914,"keywords":[{"name":"machinelearning"},{"name":"java"},{"name":"dataframes"},{"name":"deeplearning"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#00FF00","description":null,"dinerInvite":true,"duration":120,"freeTickets":2,"id":984,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":2,"name":"Hands-on Lab","pause":false,"scheduleInSmallRoom":true,"slug":"lab120"},"speakers":[{"anonymizedBio":null,"bio":"TBD","blueskyUsername":"","company":"Airbus","countryName":"Germany","firstName":"Sven","fullName":"Sven Reimers","id":7633,"imageUrl":"https://lh3.googleusercontent.com/a-/AFdZucoNxDrZRM-rxLR5unTKC2gX_lJcPO2h_HRwBs4pJA=s96-c","lastName":"Reimers","linkedInUsername":"","mastodonUsername":"","twitterHandle":""},{"anonymizedBio":null,"bio":"Zoran Sevarac is a seasoned software engineer, university professor of Artificial Intelligence, and passionate Java developer with more than two decades of experience in software engineering, AI research, and open-source innovation.<br>He is the creator of two pioneering AI development platforms built entirely in Java — Neuroph and Deep Netts — which made AI development more accessible to the Java community. His work bridges modern AI technologies with the reliability, performance, and scalability of the Java ecosystem.<br>A Duke’s Choice Award winner, Java Champion, and member of the JCP Executive Committee, Zoran has been instrumental in driving the evolution of AI support in Java. His mission is to simplify AI adoption, enable GPU acceleration through Project Panama and the Vector API, and bring high-performance, energy-efficient, and FinOps-friendly AI to enterprise systems.","blueskyUsername":"","company":"Deep Netts ","countryName":"Serbia","firstName":"Zoran","fullName":"Zoran Sevarac","id":23009,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-c08270b6-3020-4fc8-a6aa-395616d4bd0f.jpg","lastName":"Sevarac","linkedInUsername":"zoran-sevarac-phd-49a9a411","mastodonUsername":"","twitterHandle":""}],"summary":"This practical session shows how Java can handle end-to-end data science without switching to Python. Using JTaccuino, Hardwood, dflib, DeepNetts, and a new plotting API, participants will build a complete predictive machine learning pipeline in Java, from data exploration to visualization and neural network training.","timeSlots":[],"title":"Java is for Data Science, Too: Building an End-to-End ML Pipeline Without Leaving the JVM","totalFavourites":1,"track":{"id":2754,"name":"Java Language & Platform","description":"Project Loom, Leyden, Valhalla, Panama, and the ever evolving JVM.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-coffee-mug.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"Your mission is to turn a bloated CVE-infested container image into a low-noise image with low vulnerability exposure and clear operational posture. You have 45 minutes before the explosive attack hits. Mission possible! This session provides a straight path towards building more secure and maintainable Java container images. We will identify the key culprits such as stale dependencies, outdated base, lack of provenance, and excessive privileges. Then, we will draft a step-by-step plan to:<br><ul><li>Pick a minimal and well-maintained base image,</li><li>Shrink privileges,</li><li>Prove provenance with version pinning, signatures and SBOMs,</li><li>Scan and classify with CVSS rules to cut noise and fix what’s exploitable,</li><li>Automatically monitor for updates with Dependabot/Renovate.</li></ul><br>Expect a before/after scan comparison, copy-and-paste Dockerfile instructions, verification checklist, and a clear and reproducible path towards hardened Java container images that provide an impenetrable lock-box for your applications.<br><br>","fieldGroup":null,"fieldGroupValues":[],"id":49254,"keywords":[{"name":"containerization"},{"name":"vulnerabilities"},{"name":"hardening"},{"name":"provenance"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":null,"description":null,"dinerInvite":true,"duration":40,"freeTickets":1,"id":5151,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":null,"name":"Lunch Talk","pause":false,"scheduleInSmallRoom":false,"slug":"lunch-talk"},"speakers":[{"anonymizedBio":null,"bio":"Years of experience in software engineering and the team&#39;s leading roles combined with his passion for Java made Pasha know all the hidden details in this IT niche. As a Developer Advocate for @Bellsoft, he educates the public on the latest software tools built by BellSoft and helps to create and test instruments for developers. He writes in Kotlin, speaks at conferences, composes a new articles, or maintains his pet projects.","blueskyUsername":"asm0dey.site","company":"Bellsoft","countryName":"Germany","firstName":"Pasha","fullName":"Pasha Finkelshtein","id":7634,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-a2b5ea87-cb3b-4cf7-ba56-5d667977ed3b.jpg","lastName":"Finkelshtein","linkedInUsername":"asm0dey","mastodonUsername":"","twitterHandle":"asm0di0"}],"summary":"A lunch session on hardening Java container images by reducing CVE noise and operational risk. It covers choosing minimal base images, shrinking privileges, pinning versions, signing and SBOMs, using CVSS-based scanning, and automating updates with Dependabot/Renovate, with practical Dockerfile guidance and verification steps.","timeSlots":[],"title":"Mission Possible: The 45-Minute Path to Bullet-Proof Java Container Images","totalFavourites":1,"track":{"id":2754,"name":"Java Language & Platform","description":"Project Loom, Leyden, Valhalla, Panama, and the ever evolving JVM.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-coffee-mug.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"AI now writes most of your test code, and that changes the skill you need. The bottleneck is no longer typing tests by hand; it&#39;s knowing what good tests look like, where each kind belongs, and how to prompt AI to produce them. Without that understanding, you get tests that pass but verify nothing.<br><br>This 3-hour session gives you the full picture of testing Spring Boot applications, so you can direct AI with confidence instead of trusting it blindly.<br><br>We&#39;ll cover the complete testing pyramid: fast unit tests, sliced tests that load only the part of the context you need, and integration tests that exercise the real thing with Testcontainers. For each level, you&#39;ll see when to reach for it, what it actually proves, and how to prompt AI to write it well.<br><br>Along the way you&#39;ll collect practical patterns and recipes you can apply directly to your own codebase, plus the common pitfalls that produce slow, flaky, or misleading tests. We&#39;ll close with quick wins that improve almost any Spring Boot test suite.<br><br>Whether you&#39;re newer to Spring Boot testing or want to sharpen how you collaborate with AI tools, you&#39;ll leave knowing not just how to write tests, but how to judge whether the ones AI hands you are worth keeping.","fieldGroup":null,"fieldGroupValues":[],"id":7006,"keywords":[{"name":"testcontainers"},{"name":"ai"},{"name":"springboot"},{"name":"testing"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":180,"freeTickets":2,"id":959,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Deep Dive","pause":false,"scheduleInSmallRoom":false,"slug":"deep180"},"speakers":[{"anonymizedBio":null,"bio":"Philip helps developers ship software more often and sleep better at night, pairing actionable technical content with hands-on consulting.<br><br>When he&#39;s not writing or consulting, he&#39;s an indie hacker chasing his next side project, a frequent Southeast Asia traveler, a committed squash player, a hopeful padel newbie, and a fan of jogging in nature.","blueskyUsername":null,"company":"PragmaTech GmbH","countryName":"Germany","firstName":"Philip","fullName":"Philip Riecks","id":5840,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-bc0996c3-73b4-4bc5-bd2e-3890875cb5d3.jpg","lastName":"Riecks","linkedInUsername":"rieckpil","mastodonUsername":null,"twitterHandle":"rieckpil"}],"summary":"This 3-hour session teaches Spring Boot testing across the full testing pyramid—unit, sliced, and integration tests with Testcontainers—so you can guide AI to generate useful tests, spot misleading ones, avoid common pitfalls, and improve your test suite with practical patterns and quick wins.","timeSlots":[],"title":"Prompt It Right: Spring Boot Testing in the AI Era","totalFavourites":6,"track":{"id":1701,"name":"Development Practices","description":"All about Getting Stuff Done right. Methodologies, better practices, etc.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-hearts-card.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"Java’s story is about much more than the evolution of a programming language. It is the story of a community that, more than once, could have watched something remarkable quietly fade away—but instead chose to fight for it, rebuild it, open it up, and pass it forward.<br><br>From its beginnings at Sun Microsystems to OpenJDK, the JVM ecosystem, and the transition from Java EE to Jakarta EE, this documentary traces 31 years of innovation, disruption, reinvention, and community.<br><br>The story is told by the people who shaped it, including James Gosling, Joshua Bloch, James Duncan Davidson, Tim Lindholm, Kim Polese, Carla Schroer, Sharat Chander, and many others.<br><br>Through their memories and perspectives, we revisit the decisions, breakthroughs, challenges, and communities that turned Java into one of the most influential software platforms ever created.<br><br>Thirty-one years later, Java is still here—not just because of the technology, but because generations of people decided it was worth carrying forward.<br>","fieldGroup":null,"fieldGroupValues":[],"id":50101,"keywords":[{"name":"java"},{"name":"jakartaee"},{"name":"jvm"},{"name":"openjdk"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#7f1ce8","description":null,"dinerInvite":true,"duration":75,"freeTickets":null,"id":32051,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":null,"name":"Documentary","pause":false,"scheduleInSmallRoom":false,"slug":"doc-movie"},"speakers":[{"anonymizedBio":null,"bio":"Georges Saab is the Senior Vice President of Development for the Java Platform Group at Oracle. His group is responsible for Java Standard Edition including the Java language, core libraries, and the Java Virtual Machine. Georges is a 35 year veteran of programming language and platform development. His work with the Java platform began as a developer of Java Standard Edition at JavaSoft and Sun Microsystems, where he was a founder of the Swing group and Java Webstart, and continued as he ran development of the JRockit JVM for many years at BEA Systems. Georges is the Chair of the OpenJDK governing board.","blueskyUsername":null,"company":"Oracle","countryName":"United States of America","firstName":"Georges","fullName":"Georges Saab","id":50051,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-e81f731a-26bb-4e81-803c-4252372b3e61.jpg","lastName":"Saab","linkedInUsername":null,"mastodonUsername":null,"twitterHandle":null}],"summary":"A documentary tracing 31 years of Java’s evolution—from Sun Microsystems to OpenJDK and Jakarta EE—through the voices of its creators and community. It highlights innovation, reinvention, and the collective effort that kept Java alive as one of the world’s most influential software platforms.","timeSlots":[],"title":"The Java Story | The Official Documentary","totalFavourites":5,"track":{"id":2754,"name":"Java Language & Platform","description":"Project Loom, Leyden, Valhalla, Panama, and the ever evolving JVM.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-coffee-mug.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"The Java platform has always been about performance, reliability, and a rich developer ecosystem. But what if those same capabilities could become the foundation for building modern polyglot applications?<br><br>In this session, we&#39;ll unveil a new pre-compiled, pre-optimized Micronaut runtime built on GraalVM that delivers fast startup, low memory footprint, and a consistent programming model across Java, Kotlin, Python, and other Micronaut-supported languages.<br><br>Unlike approaches that require expensive native image builds before you see the benefits, this runtime is pre-compiled ahead of time, keeping the developer feedback loop fast. Make a source change, restart, and you&#39;re back in milliseconds—while still taking advantage of GraalVM&#39;s performance and native deployment capabilities when you&#39;re ready for production.<br><br>You&#39;ll see how Micronaut&#39;s dependency injection, configuration, testing, observability, and cloud-native features extend naturally across languages, enabling polyglot applications without sacrificing operational consistency. We&#39;ll also explore why this architecture is an ideal fit for AI-powered systems, combining Java&#39;s production strengths with the flexibility of Python where it makes sense.<br><br>If you&#39;re interested in the future of Java, GraalVM, cloud-native runtimes, and the next generation of polyglot application development, this session offers an early look at what&#39;s coming next.<br>","fieldGroup":null,"fieldGroupValues":[],"id":16444,"keywords":[{"name":"micronaut"},{"name":"graalvm"},{"name":"python"},{"name":"graalpy"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Graeme Rocher is the creator of several popular Open Source projects including Grails (https://grails.org) and Micronaut (https://Micronaut.io) and co-author of &quot;The Definitive Guide to Grails&quot; (Springer - https://link.springer.com/book/10.1007/978-1-4302-0871-6). Graeme currently works as an Architect at Oracle. Graeme is a member of the Java Champions (https://twitter.com/java_champions) and 2018 was awarded the Groundbreaker award by Oracle (https://developer.oracle.com/groundbreakers/) for his work on Open Source.","blueskyUsername":"","company":"Oracle","countryName":"Spain","firstName":"Graeme","fullName":"Graeme Rocher","id":16381,"imageUrl":"https://lh3.googleusercontent.com/a/AATXAJzhbdYUh7mbNrEpoDq6EodpI71GUlmEK-1k0lb_=s96-c","lastName":"Rocher","linkedInUsername":"graemerocher","mastodonUsername":"","twitterHandle":"graemerocher"},{"anonymizedBio":null,"bio":"Thomas Wuerthinger is a Vice President at Oracle leading programming language implementation teams for languages including Python, JavaScript, and Java. He is the architect of the Graal compiler and the Truffle self-optimizing runtime system. Previously, he worked on the Crankshaft optimizing compiler of V8 at Google, and the Maxine research virtual machine at Sun Microsystems. He received a PhD degree from JKU Linz for his research about dynamic code evolution.","blueskyUsername":"thomaswue.dev","company":"Oracle","countryName":"Switzerland","firstName":"Thomas","fullName":"Thomas Wuerthinger","id":16383,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-4f0ca29a-e775-47ce-be77-6e01a95e9abe.jpg","lastName":"Wuerthinger","linkedInUsername":"thomaswue","mastodonUsername":"https://mastodon.online/@thomaswue","twitterHandle":"thomaswue"}],"summary":"This talk shows how Micronaut, GraalPy, and GraalVM let Python gain Java’s structure, tooling, and native performance without losing simplicity. It explores building polyglot applications, integrating Python and Java cleanly, and using AI to enhance workflows and developer experiences.","timeSlots":[],"title":"Faster Development with Java, Python, and Micronaut","totalFavourites":5,"track":{"id":2754,"name":"Java Language & Platform","description":"Project Loom, Leyden, Valhalla, Panama, and the ever evolving JVM.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-coffee-mug.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"Getting a local LLM running on your GPU from inside Java usually stalls at the installation step — which SDK, which backend, and how do you even tell if the GPU is being used? This hands-on lab removes the guesswork.<br><br>Working at your own laptop, you&#39;ll install and wire up the GPULlama3.java + TornadoVM stack from scratch: adding TornadoVM via Maven Central, and configuring DevoxxGenie inside IntelliJ IDEA as a local, GPU-backed AI assistant.<br><br>Once the stack is running, we&#39;ll go hands-on with <a href=\"https://www.tornadovm.org/tooling\" rel=\"noopener noreferrer\" target=\"_blank\">TornadoVM&#39;s tooling ecosystem</a>: the TornadoInsight IDE plugin for real-time compatibility checks and in-IDE task testing, TornadoPulse for reading profiling logs, and TornadoViz for visualizing how your code actually maps onto the GPU. Along the way you&#39;ll run and modify small exercises to see JIT-compiled Java execute on your hardware, and — if you&#39;re on an NVIDIA GPU — capture a basic profile with Nsight Systems.<br><br>We&#39;ll close by looking ahead at some early, ongoing exploration into what GPU-accelerated local inference could look like baked directly into an IDE assistant (e.g., <a href=\"https://genie.devoxx.com/\" rel=\"noopener noreferrer\" target=\"_blank\">DevoxxGenie</a>) - more a glimpse of a direction than a finished feature.<br><br>No prior GPU programming or TornadoVM experience required. By the end, you&#39;ll have a working local GPU-accelerated LLM setup on your own machine, plus the tools to inspect and debug it - a foundation you can carry straight into your own projects.","fieldGroup":null,"fieldGroupValues":[],"id":20651,"keywords":[{"name":"java"},{"name":"tornadovm"},{"name":"llm"},{"name":"gpu"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#00FF00","description":null,"dinerInvite":true,"duration":120,"freeTickets":2,"id":984,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":2,"name":"Hands-on Lab","pause":false,"scheduleInSmallRoom":true,"slug":"lab120"},"speakers":[{"anonymizedBio":null,"bio":"Dr. Athanasios Stratikopoulos (male) is a Research Fellow at the University of Manchester with specialization on heterogeneous architectures and reconfigurable accelerators. He has authored more than 20 research articles in the field of hardware acceleration, system software and programming languages. Currently his work involves heterogeneous architectures ranging from low-power devices to high-end cloud deployments. He is one of the lead developers of TornadoVM and has been part of the team for the last eight years. In addition to his core contributions to the system&#39;s technical development, Dr. Stratikopoulos leads the project&#39;s communication and dissemination efforts, helping to articulate its goals and advancements to both academic and industrial audiences through talks, documentation, and outreach activities.","blueskyUsername":"stratika.bsky.social","company":"TornadoVM","countryName":"United Kingdom","firstName":"Thanos","fullName":"Thanos Stratikopoulos","id":7649,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-1eb3708e-af15-4778-a560-15ebbea2b133.jpg","lastName":"Stratikopoulos","linkedInUsername":"stratika","mastodonUsername":"","twitterHandle":"thanos_str"},{"anonymizedBio":null,"bio":"I am an Associate Professor (Reader) at The University of Manchester and a Chief Engineer at Pierer Innovation.I currently lead the TornadoVM and MaxineVM projects and I am the technical coordinator of the Horizon Europe/UKRI AERO project. In addition I am the PI of the EU Horizon Europe/UKRI P2CODE, TANGO, and ENCRYPT projects.My work focuses on both hardware and software. In particular, I am interested in embedded systems, micro-architecture, hw/sw co-designed CPUs and VMs, Heterogeneous Acceleration, Compilers, Virtual Machines and Garbage Collection.","blueskyUsername":"kotselidis.net","company":"University of Manchester","countryName":"UK","firstName":"Christos","fullName":"Christos Kotselidis","id":19779,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocJ-pxqHhRG9lMhvBsm7RliPrVLhsyhgaBJQMrzmQZgJ2KKM1RVe=s96-c","lastName":"Kotselidis","linkedInUsername":"kotselidis","mastodonUsername":"","twitterHandle":""},{"anonymizedBio":null,"bio":"I&#39;m a Research Associate at the University of Manchester and lead developer of TornadoVM, an open-source framework that lets Java applications run on GPUs and other accelerators without leaving the JVM. My work sits at the intersection of managed runtimes and compilers - JIT-compiling Java bytecode into GPU code, and bringing modern hardware features like tensor cores, low-precision arithmetic and quantization into reach for Java developers.","blueskyUsername":"maryxek.bsky.social","company":"University of Manchester","countryName":"UK","firstName":"Mary","fullName":"Mary Xekalaki","id":49105,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-a82d2879-53f1-4330-b9cb-64cc383a1b02.jpg","lastName":"Xekalaki","linkedInUsername":"mary-xekalaki","mastodonUsername":"","twitterHandle":"MXekalaki"}],"summary":"Hands-on lab to set up a local GPU-backed LLM in Java using GPULlama3.java, TornadoVM, and DevoxxGenie. Participants install, configure, run, profile, and debug GPU acceleration with TornadoInsight, TornadoPulse, and TornadoViz, gaining a working local inference setup and practical tooling experience.","timeSlots":[],"title":"From Install to Insight: A Hands-On GPU Lab for Java Developers","totalFavourites":1,"track":{"id":2754,"name":"Java Language & Platform","description":"Project Loom, Leyden, Valhalla, Panama, and the ever evolving JVM.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-coffee-mug.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Spec-Driven Development is a way of working with AI coding agents where the specification drives the code, not the prompt. I use Spec-Driven Development according to the AI Unified Process (AIUP) in several customer projects, and in this deep dive, I show how it works in practice.<br><br>We will build a business application from scratch, and also learn how to work on brownfield projects. We write specifications, let an AI agent generate the code, run it, and add tests that check the code against the spec. When the requirements change, we update the spec and regenerate the code rather than patching the code by hand.<br><br>We will explore the harness: the rules, context, and tests around the agent that keep its output predictable enough for real work. By the end, you will know what Spec-Driven Development is, where it helps, where it does not, and how to try it on your own stack.<br>","fieldGroup":null,"fieldGroupValues":[],"id":4098,"keywords":[{"name":"brownfield projects"},{"name":"specifications"},{"name":"spec-driven development"},{"name":"ai coding agents"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":180,"freeTickets":2,"id":959,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Deep Dive","pause":false,"scheduleInSmallRoom":false,"slug":"deep180"},"speakers":[{"anonymizedBio":null,"bio":"Simon Martinelli is a Java Champion, Vaadin Champion, and Oracle ACE Pro with over three decades of experience as a software architect, developer, consultant, and trainer. He is the creator of the AI Unified Process (AIUP) and a strong advocate of Spec-Driven Development.<br><br>As the owner of Martinelli LLC, he coaches teams to get up to speed with AI-driven development. He regularly shares his insights through international conferences, articles, and his blog, Keep IT Simple (<a href=\"https://martinelli.ch/\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"background-color: transparent; color: rgb(51, 122, 183);\">https://martinelli.ch</a>), where he writes about AI, architecture, and modern Java development.<br>He is also a lecturer at two universities in Switzerland, where he teaches software architecture, persistence, DevOps, and cloud-native development.","blueskyUsername":"martinelli.ch","company":"Martinelli GmbH","countryName":"Switzerland","firstName":"Simon","fullName":"Simon Martinelli","id":3912,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-8784fd05-8251-4fa9-be7b-35c1216e84b9.jpg","lastName":"Martinelli","linkedInUsername":"simonmartinelli","mastodonUsername":null,"twitterHandle":"simas_ch"}],"summary":"Spec-Driven Development uses specifications, not prompts, to guide AI coding agents. This deep dive shows how to build and evolve applications by writing specs, generating code, testing against requirements, and updating specs when needs change. It covers harness design, practical use, limits, and adoption on your own stack.","timeSlots":[],"title":"From Developer to Builder: A Spec-Driven Development Deep Dive","totalFavourites":34,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"For most developers, AI assistance started as &quot;smart autocomplete.&quot; That story has changed completely. <br><br>Today, GitHub Copilot can take a request in plain language and carry it out for you — in your editor, terminal, desktop application or in the cloud while you focus on something else. We&#39;ve moved from <em style=\"color: rgb(31, 35, 40);\">autocomplete</em> to <strong style=\"color: rgb(31, 35, 40);\"><em>autopilot</em></strong>.<br><br>This 3-hours deep dive is built around live demos and real projects. Step by step, we&#39;ll see the many places where AI can help across your workflow: writing and understanding code in the <strong style=\"color: rgb(31, 35, 40);\">IDE</strong>, <strong style=\"color: rgb(31, 35, 40);\">CLI</strong>, and in the <strong style=\"color: rgb(31, 35, 40);\">Copilot App</strong> — then moving into the software delivery lifecycle with PR <strong style=\"color: rgb(31, 35, 40);\">review</strong>, feature creation using cloud agents, and <strong style=\"color: rgb(31, 35, 40);\">security</strong>.<br><br>You&#39;ll also learn how to customize Copilot for your own projects and needs, using <strong style=\"color: rgb(31, 35, 40);\">Skills</strong>, <strong style=\"color: rgb(31, 35, 40);\">Agents</strong>, and MCP to connect it to your tools, data, and conventions — and how to automate real work with agentic workflows in plain language, across several languages and tools.<br><br>You&#39;ll leave with more than a &quot;wow&quot;: concrete techniques to improve quality, <strong style=\"color: rgb(31, 35, 40);\">control cost,</strong> and set the right guardrails, administration, and governance. Expect many <strong style=\"color: rgb(31, 35, 40);\">demonstrations</strong> and plenty of <strong style=\"color: rgb(31, 35, 40);\">Q&amp;A</strong>.<br><br>What you&#39;ll learn:<br><ul><li>Using Copilot across the IDE, CLI, App and cloud</li><li>AI in the SDLC: PR review, cloud agents, and security</li><li>Customizing with agents, skills, and custom instructions</li><li>Automating tasks with agentic workflows</li><li>Improving quality and controlling cost</li><li>Guardrails, administration, and governance for teams</li></ul>","fieldGroup":null,"fieldGroupValues":[],"id":23529,"keywords":[{"name":"security"},{"name":"governance"},{"name":"copilot"},{"name":"automation"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":180,"freeTickets":2,"id":959,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Deep Dive","pause":false,"scheduleInSmallRoom":false,"slug":"deep180"},"speakers":[{"anonymizedBio":null,"bio":"Tug helps organisations across the EMEA region unlock the full potential of AI-powered development.<br><br>Tug is passionate about bringing GitHub Copilot, since 2021, to developer communities — from enterprise teams to local meetups. He regularly speaks, runs hands-on workshops and assist teams on the adoption of GitHub Copilot and AI Based SDLC.<br><br>Before joining GitHub, &quot;Tug&quot; built an extensive career in the tech ecosystem, including roles as, DevRel at Redis, <br>Technical Evangelist at MapR, MongoDB, and Couchbase, Product Manager &amp; Developer on Oracle&#39;s JavaEE platform<br><br>Deeply committed to the developer community, Tugdual is also the co-founder of the Nantes JUG (Java User Group), which has gathered developers and architects in the Nantes region monthly since 2008.<br><br>","blueskyUsername":"tgrall.bsky.social","company":"GitHub","countryName":"France","firstName":"Tugdual","fullName":"Tugdual Grall","id":23042,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocId9nAOVVNnr7PqLAezCQ0dDnbc0KMkMVW4oMswd0yW2Iujc1Go=s96-c","lastName":"Grall","linkedInUsername":"tugdualgrall","mastodonUsername":"https://mastodon.social/@tgrall","twitterHandle":"tgrall"}],"summary":"This talk explores the rise of agentic workflows and context engineering in AI-assisted development. Using GitHub Copilot’s latest tools, it shows how teams delegate end-to-end tasks, from architecture scaffolding to PRs, and how developers, SREs, DevOps, and PMs shift from writing code to expressing intent.","timeSlots":[],"title":"From Autocomplete to Autopilot: How AI Is Changing the Developer Experience","totalFavourites":17,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Java gets faster every year—often without developers changing a single line of application code. But what actually changed inside the JDK, which improvements matter to real applications, and how do the engineers working on Java know that an optimization is truly an improvement?<br><br>Returning to Devoxx for the yearly Java performance update, we will explore a curated selection of performance work delivered since last year. We will visit the standard libraries, the HotSpot runtime, the JIT compilers, and the garbage collectors to see how improvements at every layer combine to make modern Java applications faster, more scalable, and more resource-efficient.<br>Along the way, we will examine enhancements to startup and warmup, allocation and memory footprint, garbage-collection throughput, virtual-thread scalability, vectorization, and frequently used library operations. For selected optimizations, we will look beneath the API to understand the implementation techniques involved—and see why a seemingly small change can sometimes produce a surprisingly large result.<br><br>Attendees will learn which improvements arrive automatically when upgrading, which require explicit configuration or particular coding patterns, and how to evaluate their impact on real workloads. Expect measurements, implementation details, practical advice, and a glimpse of the performance work already taking shape for future Java releases.<br>Upgrade your JDK, bring your benchmarks—and stay on the fast path.","fieldGroup":null,"fieldGroupValues":[],"id":23543,"keywords":[{"name":"optimization"},{"name":"performance"},{"name":"java"},{"name":"jdk"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Per Minborg is a manager in the Java Core Library team at Oracle and is also a member of the Panama project team. He is an inventor and developer with more than 25 years of Java coding experience. He has been a frequent contributor to various open-source projects, is a regular speaker at events, Oracle JavaOne alumnus, and co-author of the publication Modern Java.","blueskyUsername":"pminborg.bsky.social","company":"Oracle","countryName":"Sweden","firstName":"Per-Ake","fullName":"Per-Ake Minborg","id":23047,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-a388bc3b-5180-411a-a4a7-5631e4341892.jpg","lastName":"Minborg","linkedInUsername":"per-%C3%A5ke-minborg-448a623b6/?lipi=urn%3Ali%3Apage%3Ad_flagship3_feed%3B4pm%2B8nsET3GGj6bkmM3geg%3D%3D","mastodonUsername":null,"twitterHandle":null}],"summary":"This talk surveys recent Java performance improvements across the JDK—libraries, HotSpot, JIT, and GC—showing how they boost startup, memory use, throughput, and virtual-thread scalability. It explains what upgrades deliver automatically, what needs tuning, and how engineers measure real-world impact.","timeSlots":[],"title":"The Yearly Java Performance Update for 2026","totalFavourites":13,"track":{"id":2754,"name":"Java Language & Platform","description":"Project Loom, Leyden, Valhalla, Panama, and the ever evolving JVM.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-coffee-mug.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Somewhere in your estate is a Java service old enough to vote. REST endpoints by the dozen, one SOAP relic nobody will admit to, session auth, and the person who understood it all has retired. It works, which is why nobody touches it. And now the business wants AI agents to use it.<br>Every enterprise is under pressure to connect AI agents to systems that were never designed for them, yet most MCP material assumes a greenfield project or a toy demo. This session addresses the situation attendees actually face: a brownfield estate of REST and SOAP services that cannot be rewritten. It is demo-driven, built on the official MCP Java SDK, Spring AI, and Spring for GraphQL, and it is honest about the failure modes: tool sprawl from auto-generation, auth translation, oversized responses, and unsafe retries against non-idempotent writes. Attendees leave with a reusable pattern set (facade first, curation over generation, read-only first, approval gates) they can apply to their own estate the following week.<br>","fieldGroup":null,"fieldGroupValues":[],"id":16426,"keywords":[{"name":"authentication"},{"name":"brownfield"},{"name":"facade"},{"name":"mcp"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Željko has spent over 15 years in IT, mostly consulting for banks and insurance companies, with a focus on modernising legacy systems. Along the way, he developed deep expertise in JVM-based technologies and has become a go-to voice on topics such as API design. When he&#39;s not untangling someone else&#39;s technical debt, he&#39;s happily creating his own through a growing collection of personal projects he enthusiastically starts and occasionally finishes. Željko is passionate about sharing knowledge in a way that actually sticks, which usually means keeping things practical, a little entertaining, and free of unnecessary jargon.<br>He is a GraphQL Ambassador and a member of the GraphQL AI Working Group","blueskyUsername":"","company":"Chronomill","countryName":"Ireland","firstName":"Željko","fullName":"Željko Kozina","id":16365,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-7290d103-d1e2-442b-8434-ddde35301e4f.jpg","lastName":"Kozina","linkedInUsername":"zkozina","mastodonUsername":"","twitterHandle":""}],"summary":"A demo-driven session on connecting AI agents to legacy Java, REST, and SOAP enterprise systems using MCP, Spring AI, and GraphQL. It tackles real brownfield challenges—auth, tool sprawl, oversized responses, and unsafe retries—and offers reusable patterns for secure, practical integration.","timeSlots":[],"title":"No Country For Old APIs. Wrapping legacy Java services as MCP tools without rewriting them.","totalFavourites":7,"track":{"id":1252,"name":"Architecture & Modernization","description":"Designing for agentic workflows, event-driven systems, and legacy transformation.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-blockchain.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"Quarkus keeps growing and evolving while maintaining its focus on an efficient runtime and developer productivity. It offers a vibrant and ever-expanding ecosystem of 800+ publicly available extensions (the Quarkus universe or Quarkiverse), and is maintained by a community of 1000+ contributors. It is also now part of the CommonHaus Foundation, bolstering our commitment to open-source development and inspiring greater community participation.<br><br>Members of the Quarkus core team and extensions contributors will be present at Devoxx, and will be happy to discuss anything around the Quarkus ecosystem.<br><br>Bring your questions, share your challenges, and contribute your ideas to shape the future of Quarkus. Discover how you can become an active part of this vibrant community and take advantage of this unique opportunity to Ask Us Anything. Don’t miss out on being part of the conversation that’s setting the direction for Java’s next big leap, including all the work the Quarkus team has been doing around Agentic AI.<br><br>See you there!","fieldGroup":null,"fieldGroupValues":[],"id":10037,"keywords":[{"name":"agentic ai"},{"name":"quarkus"},{"name":"open-source"},{"name":"ecosystem"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":60,"freeTickets":1,"id":954,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"BOF","pause":false,"scheduleInSmallRoom":true,"slug":"bof60"},"speakers":[{"anonymizedBio":null,"bio":"Dimitris is an open source veteran with 25+ years of experience in IT and he is currently a (Red Hat) Sr.Director of Engineering at IBM in charge of the Cloud Native Runtimes group that includes Quarkus, Vert.x, SpringBoot and Node.js. He also served as the JBoss AS project lead and he has been a JBoss addict and contributor from the early start-up days. He worked previously at Intracom and Motorola in the areas of NMS/OSS, designing reusable frameworks and distributed systems. Dimitris studied computer science at the Technological Educational Institute of Athens and received an M.Sc. by research from University College Dublin, Ireland.<br> <br> Dimitris is a passionate advocator of Opensource &amp; Red Hat technologies and has presented on a variety of events and conferences around the world. He has been an invited speaker at various Java/Linux community events and user groups, and he has delivered inspirational talks on technology and Open Source in universities and educational institutes. In his spare time he has also helped with the organization of technology enablement events for children, like Scratch Days, Devoxx4Kids and JCrete4Kids.","blueskyUsername":"","company":"IBM","countryName":"Switzerland","firstName":"Dimitris","fullName":"Dimitris Andreadis","id":10167,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-c540ac38-0fdf-40cb-b0fe-8a357abd1f87.jpg","lastName":"Andreadis","linkedInUsername":"dandreadis","mastodonUsername":"","twitterHandle":"dandreadis"}],"summary":"Quarkus is a fast-growing Java framework with 800+ extensions and 1,000+ contributors, now under the CommonHaus Foundation. Meet core team and contributors at Devoxx to discuss the ecosystem, share ideas, and ask anything—especially about Quarkus, community involvement, and its work on Agentic AI.","timeSlots":[],"title":"Quarkus Community BOF","totalFavourites":2,"track":{"id":2754,"name":"Java Language & Platform","description":"Project Loom, Leyden, Valhalla, Panama, and the ever evolving JVM.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-coffee-mug.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Redaction is often treated like a final step. Add black boxes, blur a name, pixelate a screenshot, export the file, done. But recent headlines have reminded everyone that &quot;hidden&quot; is not the same as &quot;gone.&quot; In practice, many redactions fail in predictable ways. Sometimes the underlying text remains in the PDF. Sometimes image-based redactions leave enough signal behind to detect what was covered. And sometimes the surrounding sentence context gives away exactly what was meant to stay private. Recent media coverage around heavily redacted files has exposed a hard truth: concealment is not the same thing as data removal.<br><br>This session is a live, technical walk-through of how modern redaction failures happen and how AI can expose them. We will demo detection methods for finding redacted text in documents, show how poorly redacted PDFs can be recovered, and end with examples of recovering information from redacted or pixelated images. More importantly, we will also cover what proper redaction looks like in practice. Along the way, we will connect document analysis, computer vision, and language models to a simple point: privacy controls fail when teams confuse visual hiding with real removal. Bring your curiosity and maybe a little paranoia. ","fieldGroup":null,"fieldGroupValues":[],"id":5549,"keywords":[{"name":"computervision"},{"name":"pdf"},{"name":"privacy"},{"name":"redaction"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"David vonThenen is an AI/ML Engineer where he focuses on production AI systems, enterprise AI strategy, and architectures for explainable, governable, and reliable generative AI. His work spans Agentic AI, Graph RAG, Document RAG, AI memory systems, multi-agent architectures, OpenSearch, Neo4j, data lineage, provenance, and AI governance.<br><br>David has more than 20 years of experience building production software across AI/ML, speech and NLP, Kubernetes, cloud-native platforms, storage, virtualization, and backup/recovery. He combines hands-on engineering with technical strategy, open-source leadership, developer advocacy, and customer-facing architecture work.","blueskyUsername":"davidvonthenen.com","company":"NetApp","countryName":"United States of America","firstName":"David","fullName":"David vonThenen","id":5837,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-d587c9f9-77e0-493c-a194-848fe54258c3.jpg","lastName":"vonThenen","linkedInUsername":"davidvonthenen","mastodonUsername":null,"twitterHandle":"davidvonthenen"}],"summary":"This session demonstrates how redactions fail in PDFs and images, and how AI can recover hidden text or visual content. It also explains proper redaction practices, showing that true privacy requires removing data, not just visually obscuring it.","timeSlots":[],"title":"Underneath the Black Marker: AI Techniques for Detecting and Reversing Redactions","totalFavourites":null,"track":{"id":1255,"name":"Security, Trust & Compliance","description":"Guardrails, prompt injection defence, model governance, and supply-chain security.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-surveillance-camera.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"What we call virtual is actually physical. Every bit of data we store, move, or erase is represented by a physical state, and every physical system obeys the laws of nature.<br><br>So let’s look beneath the abstractions of our digital world. What are the physical properties of the information we handle? Does data have weight? How much energy does it take to store or delete information? What really travels through our networks, at what speed, and can information ever truly disappear?<br><br>Our curiosity then takes us beyond binary computation into the quantum realm. How do superposition, uncertainty, and measurement challenge our understanding of state and information? How do stable, observable states emerge from a world governed by quantum rules?<br><br>After unveiling the simple math behind AI last year, Marianne now explores the physical foundations of computation. Without a formal background in physics, she follows her curiosity into the depths of our digital systems and resurfaces with what is hidden beneath the abstractions.","fieldGroup":null,"fieldGroupValues":[],"id":22909,"keywords":[{"name":"computation"},{"name":"information"},{"name":"quantum"},{"name":"physics"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":null,"description":null,"dinerInvite":true,"duration":40,"freeTickets":1,"id":5151,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":null,"name":"Lunch Talk","pause":false,"scheduleInSmallRoom":false,"slug":"lunch-talk"},"speakers":[{"anonymizedBio":null,"bio":"Marianne Hoornenborg is a Lead for the Dutch Java community NLJUG and works in the CIO Office at the Dutch Chamber of Commerce (KVK) where she started her Java career a decade ago. She is passionate about promoting gender diversity and challenging stereotypes about our profession.<br><br>As an international speaker, Marianne explores the concepts that are hidden beneath the surface of the technology we use every day. Her talks invite curiosity, challenge assumptions and turn complex ideas into fun discoveries. She aims for the audience to enjoy her talks as much as she enjoyed preparing them. ","blueskyUsername":"marianne-h.bsky.social","company":"NLJUG and KVK (Dutch Chamber of Commerce)","countryName":"Netherlands","firstName":"Marianne","fullName":"Marianne Hoornenborg","id":21546,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-1d970225-bbf3-48a0-b336-b5fe908dad5c.jpg","lastName":"Hoornenborg","linkedInUsername":"mhoornenborg","mastodonUsername":null,"twitterHandle":null}],"summary":"This proposal explores the physical foundations of information and computation, asking how data is stored, moved, and erased in the real world. It examines energy, speed, and disappearance of information, then extends into quantum effects and how stable states emerge beneath digital abstractions.","timeSlots":[],"title":"What rules the virtual? How our systems obey physical laws.","totalFavourites":4,"track":{"id":2758,"name":"Mind the Geek","description":"Developer candy: stuff we want to know about but dont (generally) at work, Robotics, biological computing, cybernetics, AI, new toys, tomorrows world","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-robot-arm.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"More and more of us use <strong style=\"background-color: rgb(18, 19, 20); color: rgb(201, 209, 217);\">**Coding Assistants**</strong> that excel at <strong style=\"background-color: rgb(18, 19, 20); color: rgb(201, 209, 217);\">**writing code**</strong>.<br><br>They are <strong style=\"background-color: rgb(18, 19, 20); color: rgb(201, 209, 217);\">**good**</strong> and they are <strong style=\"background-color: rgb(18, 19, 20); color: rgb(201, 209, 217);\">**expensive**</strong>!<br><br>For our business needs, we need <strong style=\"background-color: rgb(18, 19, 20); color: rgb(201, 209, 217);\">**more specialised AI agents**</strong> that are as good<br>or ever better, but for a much <strong style=\"background-color: rgb(18, 19, 20); color: rgb(201, 209, 217);\">**cheaper**</strong> price.<br><br>The same underlying models can be used to write<br>more <strong style=\"background-color: rgb(18, 19, 20); color: rgb(201, 209, 217);\">**specialized, cheaper, more predictable AI agents**</strong>.<br><br>We&#39;ll start by writing very disposable agents in literally seconds, <strong style=\"background-color: rgb(18, 19, 20); color: rgb(201, 209, 217);\">**without code**</strong>.<br><br>And then we&#39;ll demonstrate how to grow such agent into solving a real business case.<br>We&#39;ll iterate on the agent, we&#39;ll give it tools and then we&#39;ll evaluate it and optimize it with <strong style=\"background-color: rgb(18, 19, 20); color: rgb(201, 209, 217);\">**solid evals**</strong>.<br>We&#39;ll monitor its costs and see how changing models help or degrade.<br><br>Finally, we&#39;ll discover how multiple agents can connect and collaborate in production<br>with <strong style=\"background-color: rgb(18, 19, 20); color: rgb(201, 209, 217);\">**MCP, ACP and A2A**</strong>.<br><br>All of that can be done with almost no code, leveraging [Docker Agent](<u style=\"background-color: rgb(18, 19, 20); color: rgb(187, 190, 191);\">https://docker.github.io/docker-agent/</u>),<br>an open-source project and a real Swiss Army knife for AI agent creation.","fieldGroup":null,"fieldGroupValues":[],"id":19714,"keywords":[{"name":"optimization"},{"name":"ai"},{"name":"agents"},{"name":"docker"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":180,"freeTickets":2,"id":959,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Deep Dive","pause":false,"scheduleInSmallRoom":false,"slug":"deep180"},"speakers":[{"anonymizedBio":null,"bio":"Engineer at Docker, working an AI agents.","blueskyUsername":null,"company":"Docker","countryName":"France","firstName":"David","fullName":"David Gageot","id":19756,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-00adb09a-3b25-4aa0-a9c0-c7a771d40845.jpg","lastName":"Gageot","linkedInUsername":null,"mastodonUsername":null,"twitterHandle":null}],"summary":"The proposal shows how to build cheaper, specialized AI agents with minimal code using Docker Agent. It covers creating disposable agents quickly, iterating to solve real business problems, adding tools, evaluating and optimizing performance, monitoring costs, and connecting multiple agents for production collaboration.","timeSlots":[],"title":"Specialized AI Agents: from concept to production","totalFavourites":5,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"<strong style=\"color: rgb(34, 34, 34);\">Compiling governed agent workflows from an enterprise context graph</strong><br><br>An agent&#39;s control flow should be a build artifact, not a runtime decision.<br><br>Most agent talks show how to build an agent. We ask what your architecture review will ask: who decided that this agent is allowed to call the security platform, and what happens when that policy changes?<br><br>Imagine that our goal is to assess our company’s exposure (overall risk) for a customer using an enterprise context graph as the source of truth. Think of it as a semantic CMDB of systems, capabilities, policies, permissions, and MCP tools. Then a deterministic compiler projects a business operation from that graph into LangChain4j code. The generated workflow goes through git, CI, tests, and human review like any production artifact. The process is almost 100% deterministic: the LLM agent just writes the summary report.<br><br>The LLM does not redesign production control flow at runtime. Why add hallucination risk to a workflow designed to estimate risk? <br>The familiar generate, review, ship pattern reacts to authoritative enterprise decisions recorded in the graph. But the changes don’t take effect until they are tested and approved.<br><br>Attendees to this intermediate talk will come away with an intro to knowledge/context graphs and the enterprise knowledge layer, plus a live demo and git repo showing the pattern in Java.","fieldGroup":null,"fieldGroupValues":[],"id":44601,"keywords":[{"name":"agentic"},{"name":"workflow"},{"name":"compiler"},{"name":"context-graph"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":null,"description":null,"dinerInvite":true,"duration":40,"freeTickets":1,"id":5151,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":null,"name":"Lunch Talk","pause":false,"scheduleInSmallRoom":false,"slug":"lunch-talk"},"speakers":[{"anonymizedBio":null,"bio":"Jeremy one of those curious folks with both a technical and a strategic streak. Passionate about people and entrepreneurship, integration and automation. Through technical/business roles at Neo4j, Dagger, GitHub, Twistlock, and Puppet, Jeremy has both zoomed in and zoomed out a lot, acquiring an appreciation for the details and an ever-broader sense of the big architectural picture.","blueskyUsername":"jeremyadams.bsky.social","company":"Neo4j","countryName":"United States of America","firstName":"Jeremy","fullName":"Jeremy Adams","id":9607,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-3277ed72-ce58-4dcf-bfa8-00762b465e5b.jpg","lastName":"Adams","linkedInUsername":"jeremy-adams-pdx","mastodonUsername":"","twitterHandle":"jpadamspdx"}],"summary":"A deterministic compiler turns an enterprise context graph into governed agent workflows in Java, with control flow treated as a build artifact. The LLM only writes summaries, while code passes through Git, CI, tests, and human review, reducing hallucination risk and enabling policy-controlled changes.","timeSlots":[],"title":"Agents Shouldn't Control Control Flow","totalFavourites":2,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"AI has fundamentally changed software development. But in a world of autonomous coding agents and AI-assisted creation, do developers even need a traditional IDE anymore? Is the terminal becoming our primary home once again, or are we moving toward something entirely different?<br>In this session, Martin takes the audience on a journey through the history of developer tools to the present AI inflection point. He will:<br><ul><li>Reflect on what human engineers actually need from their environment in 2026.</li><li>Analyze whether the IDE is evolving or being replaced by terminal-based workflows like Claude Code.</li><li>Discuss the evolving role of AI agents as the new &quot;power users&quot; of development tools.</li><li>Summarize the implications for both toolsmiths and software engineers in the years to come.</li></ul>","fieldGroup":null,"fieldGroupValues":[],"id":17782,"keywords":[{"name":"ai"},{"name":"terminal"},{"name":"ide"},{"name":"agents"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":null,"description":null,"dinerInvite":true,"duration":40,"freeTickets":1,"id":5151,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":null,"name":"Lunch Talk","pause":false,"scheduleInSmallRoom":false,"slug":"lunch-talk"},"speakers":[{"anonymizedBio":null,"bio":"Martin works at Broadcom on developer tooling for Spring and Spring Boot. He leads the team that ships all the Spring Tools for Visual Studio Code, Cursor, Claude Code, Eclipse, Theia, Codespaces, and more.","blueskyUsername":"martinlippert.bsky.social","company":"Broadcom","countryName":"Germany","firstName":"Martin","fullName":"Martin Lippert","id":18082,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-a43eb907-1696-440a-8220-c6e0e225f9e3.jpg","lastName":"Lippert","linkedInUsername":"martin-lippert-9a1909","mastodonUsername":"","twitterHandle":"martinlippert"}],"summary":"This session explores how AI is reshaping developer tools, questioning the future of traditional IDEs versus terminal-based workflows. It examines what engineers need in 2026, how AI agents are becoming power users, and what these shifts mean for tool builders and software engineers.","timeSlots":[],"title":"Is the IDE dead ?","totalFavourites":14,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"You call APIs you don&#39;t control... and sooner or later they will have an outage. Will your app survive their outage? Or will they drag you down with them?<br><br>The first step in guarding against remote outages is to wrap calls in try-except statements. As long as we catch the error and log a message, we call our guardrails done. But just &quot;not crashing&quot; is a very low bar, and underneath it something worse can still be happening.<br><br>Imagine you are calling GitHub and their API goes down. You have 500 background tasks that all fires a request to GitHub, wait for the socket to time out, fail, get rescheduled, and try again. Now your workers are all sitting on dead sockets doing nothing, and no other task can get a free worker. Congratulations: someone else&#39;s outage is now your outage.<br><br>This talk is about better strategies for fighting unreliable remote APIs. I won&#39;t present any heroic distributed-systems wizardry, just a handful of boring but battle-tested patterns that stop other people&#39;s failures from amplifying into yours. <br><br>How to actually honor a rate limit without rewriting your codebase (cache the 429, let Redis&#39; TTL be the waiting period). How to resume a 5,000-record sync from page 47 instead of starting from page 1. How a circuit breaker turns &quot;good manners for the other<br>company&quot; into plain self-defense for yours. <br><br>It&#39;s all real code pulled from a multi-tenant production system. We can&#39;t make other people&#39;s APIs reliable. We can only stop their bad day from becoming ours.<br>","fieldGroup":null,"fieldGroupValues":[],"id":7035,"keywords":[{"name":"outages"},{"name":"ratelimit"},{"name":"circuitbreaker"},{"name":"apis"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Ines takes complicated systems and finds the arrangement that makes them work like poetry.<br><br>Two decades into building software, she&#39;s learned that the hard part is rarely the code. It&#39;s making a system, and the reasons behind it, legible to the people who build on it, use it, and live with it.<br><br>She reads a lot of poetry, which turns out to be the same job: the right arrangement of words making something complex suddenly feel simple. In her talks she does that with software, blending technical depth with a focus on the people around the code.","blueskyUsername":"","company":"","countryName":"Slovenia","firstName":"Ines","fullName":"Ines Panker","id":7604,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocLNlh1gNsJdiz5UPDhCOOocXcWj-XVOiZXd2CjmRtRWKVVQSzQ=s96-c","lastName":"Panker","linkedInUsername":"ines-panker","mastodonUsername":"","twitterHandle":""}],"summary":"The talk explains how to protect your app from outages in APIs you don’t control. Beyond try-except, it covers practical patterns like caching 429s, resuming syncs, and using circuit breakers to prevent external failures from cascading into your own production system.","timeSlots":[],"title":"Their API Went Down. So Why Is My App on Fire?","totalFavourites":8,"track":{"id":1701,"name":"Development Practices","description":"All about Getting Stuff Done right. Methodologies, better practices, etc.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-hearts-card.png"}},{"afterVideoURL":null,"audienceLevel":"ADVANCED","description":"Microservices are hard, that&#39;s probably the only thing we all agree on when it comes to microservices.<br><br>The promise of autonomy, scalability, and independent delivery often deliver something completely different: distributed spaghetti or lasagna. Where we have these blobs spread over the network, with synchronous call chains, unclear ownership, fragile transactions, and teams arguing where the “real” business logic should live.<br><br>This session looks at microservices from a pragmatic architecture perspective rooted in real experience. Not as a hype (anti-)pattern, but as a set of trade-offs around boundaries, ownership, communication, and consistency. <br><br>We will explore how Domain-Driven Design can help define service boundaries, but also where DDD terminology gets misused. What is a bounded context? How large should a service be? Can one microservice contain multiple APIs? When does orchestration make sense? Should we layer services?<br><br>The goal of this talk is not to sell microservices or dismiss them. The goal is to give developers and architects better mental models for designing services that are cohesive, autonomous, and understandable.<br><br>Attendees will leave with practical heuristics for spotting bad service boundaries, avoiding accidental distributed monoliths, and choosing communication patterns that fit the business problem instead of the architecture diagram.","fieldGroup":null,"fieldGroupValues":[],"id":12751,"keywords":[{"name":"boundaries"},{"name":"ddd"},{"name":"orchestration"},{"name":"microservices"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"I’m a freelance software architect and engineering leader with 20+ years of experience in building, rescuing, and scaling business-critical software platforms across consulting, product, and enterprise environments. My strength sits at the intersection of architecture, people, and delivery. I’ve led teams from a few developers to full departments, designed technical strategies, combining strategic oversight with hands-on technical leadership and worked closely with business stakeholders to align technology with real-world needs. ","blueskyUsername":"","company":"Sofico","countryName":"Belgium","firstName":"Steven","fullName":"Steven Hillaert","id":3910,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocLs6Pu2B0uwDjIEHZbyZ-3DhqPhAT0bCQ8bP_sS8NWxNkEbRpKQfQ=s96-c","lastName":"Hillaert","linkedInUsername":"stevenhillaert","mastodonUsername":"","twitterHandle":""}],"summary":"A pragmatic talk on microservices trade-offs: defining service boundaries, ownership, communication, and consistency using Domain-Driven Design. It explains common pitfalls like distributed monoliths, unclear boundaries, and fragile transactions, and offers practical heuristics for building cohesive, autonomous, understandable services.","timeSlots":[],"title":"Microservices Without the Distributed Mess","totalFavourites":15,"track":{"id":1252,"name":"Architecture & Modernization","description":"Designing for agentic workflows, event-driven systems, and legacy transformation.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-blockchain.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"In 2009, every big enterprise said &quot;continuous delivery won&#39;t work here.&quot; In 2026, the same rooms say &quot;the dark factory won&#39;t work here.&quot; It was never about the technology being ready. It&#39;s about the organization being ready. Readiness is a socio-technical problem, not a technical one.<br><br>This talk applies Conway&#39;s Law all the way up, through four layers of enablement:<br><br>0. Enable the agent : this is where the tech is standing today (context + harness).<br>1. Enable the team : the new mentality of fixing system instead of the code, the changing role, winning over skeptics, new planning/retro ceremonies, and measuring evolution by human-touches-down and sharing-up.<br>2. Enable the platform: the shared context, harness and infra substrate teams and agents both stand on: model routing, MCP gateways, sandboxes, skill/harness registries, evals, guardrails, paved roads that stay easy paths (not cages), and FinOps that optimizes rather than caps.<br>3. Enable the organization: the VP of Engineering&#39;s job: hiring and interviewing for the new roles, defending a maturing ROI, right-sizing teams, keeping humans able to judge in the &quot;dim factory,&quot; and building the real moat : capturing knowledge.<br><br>**Target audience**:<br>Engineering leaders, platform/DevEx engineers, and senior ICs driving agentic-coding adoption. It&#39;s for anyone past &quot;we gave them coding tools&quot; and asking why it isn&#39;t scaling across the org.","fieldGroup":null,"fieldGroupValues":[],"id":21671,"keywords":[{"name":"organization"},{"name":"platform"},{"name":"readiness"},{"name":"agents"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Patrick is a true pioneer—credited with coining the term DevOps, co-authoring the DevOps Handbook, and launching the very first DevOpsDays back in 2009. Since then, he’s been shaping the tech industry with his unmatched ability to bring development, operations, and now GenAI together in truly transformative ways. He now works at Tessl where he shapes up Product Devrel and the AI Native Dev community.<br><br>Here’s why you don’t want to miss this:<br>🔹 Independent consultant at the cutting edge of GenAI and DevOps<br>🔹 Fractional CTO, advisor, and workshop leader<br>🔹 Former VP of Engineering, Distinguished Engineer, CTO<br>🔹 Guided teams at industry giants like Atlassian and Snyk<br>🔹 Active speaker, community builder, and lifelong learner<br><br>Patrick is all about raising the bar—helping companies embed engineering rigor into their GenAI journeys, inspiring teams to embrace AI for automation, and advising GenAI platforms on how to truly deliver value. He bridges the gap between management and engineering with a rare mix of deep tech expertise and people-first thinking.<br><br>💬 Ready to hear where the future of DevOps, GenAI, and software delivery is headed? This is your chance.","blueskyUsername":"","company":"Tessl","countryName":"Belgium","firstName":"Patrick","fullName":"Patrick Debois","id":21519,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-481871d5-5634-4b17-bee7-759446ce2816.jpg","lastName":"Debois","linkedInUsername":"patrickdebois","mastodonUsername":"","twitterHandle":"patrickdebois"}],"summary":"The talk argues that “dark factory” readiness is organizational, not technical. Using Conway’s Law, it outlines four enablement layers: agent, team, platform, and organization. It targets engineering leaders scaling agentic coding beyond tools, focusing on roles, rituals, infrastructure, ROI, and knowledge capture.","timeSlots":[],"title":"The Rise of Agent Enablement: Coding Agents Don't Scale Themselves. Neither Do Your Teams.","totalFavourites":2,"track":{"id":1253,"name":"People, Practices & Career","description":"Leading teams, engineering culture, and career resilience.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-deepfake-ai.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"<strong>Description</strong><br>This talk challenges the perception that innovation cannot thrive in highly regulated environments like banking. As engineers working within strict rules and predefined tech stacks, we showcase how AI is actively transforming our daily work. We explore concrete initiatives such as instruction files, agent-based automation, skills-driven architectures, emerging agentic hubs and internal prompt libraries that enhance knowledge sharing. We also highlight how tools like Copilot significantly boost developer productivity.<br>Beyond enterprise use, we share our involvement in ING’s Devoxx4Kids initiative, where we inspire children aged 7-14 to explore technology. We present two platforms we developed: <strong>CodeKids Lab</strong>, which teaches programming through playful interaction and <strong>Cybersecurity Lab</strong>, which raises awareness of digital threats in an engaging way. AI plays a key role in enabling both innovation and education.<br><br><br><strong>Key Takeaways</strong><br><ul><li>AI can thrive even in constrained, regulated environments</li><li>Tangible gains in developer productivity through AI tooling</li><li>AI can extend beyond business value to create social impact</li><li>A real example of engineers turning curiosity into meaningful initiatives</li></ul><br><br><strong>Target Audience</strong><br>This presentation targets software engineers, tech leads and innovation enthusiasts working in regulated industries, as well as developers interested in applied AI. It also appeals to educators and professionals passionate about using IT for social good and inspiring the next generation.","fieldGroup":null,"fieldGroupValues":[],"id":9023,"keywords":[{"name":"education"},{"name":"productivity"},{"name":"ai"},{"name":"innovation"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"IT Engineer with 13+ years of experience evolving across multiple roles, from Operations to Team Leadership, Project Management, and currently Lead Java Engineer.<br>My journey has given me a strong end to end understanding of systems, delivery, and people management.<br>I bring a hands-on technical mindset combined with leadership and ownership, enabling me to bridge the gap between business needs and engineering execution.","blueskyUsername":"","company":"ING","countryName":"Belgium","firstName":"Ayoub","fullName":"Ayoub Hammou Ahabchane","id":8683,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-51e04d12-13b3-4cc8-bb6b-1ef8f869b597.jpg","lastName":"Hammou Ahabchane","linkedInUsername":"ayoub-hammou-ahabchane-3ba21a69","mastodonUsername":"","twitterHandle":""},{"anonymizedBio":null,"bio":"Curious by nature, enthusiastic about new technologies, and always ready to take on challenges with a positive mindset.<br><br>For the past 8 years, I have been developing backend and frontend applications using <strong>Spring Boot</strong> and <strong>Lit HTML</strong>, with a strong focus on quality, performance, and user experience.<br><br>Alongside my work, I have a strong passion for <strong>cybersecurity</strong>, <strong>knowledge sharing</strong>, and <strong>artificial intelligence</strong>. I combined these three areas to design awareness workshops accessible to young audiences (from age 10 and up). The goal is to clearly and simply illustrate online risks — such as phishing, deepfakes, public Wi-Fi, VPNs, authentication, and SSL — and help them understand what is dangerous and what is not.<br><br>To support this educational approach, I leveraged AI to build an interactive platform accessible to everyone: 👉 https://kamelzar.github.io/CyberQuestKids/html/workshop.html#","blueskyUsername":"","company":"ING","countryName":"Belgium","firstName":"Kamel","fullName":"Kamel Zaraoui","id":8684,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-28ae1d02-a57f-4fa1-b5fe-8010caf6a1cd.jpg","lastName":"Zaraoui","linkedInUsername":"kamel-zaraoui-2bbb79159","mastodonUsername":"","twitterHandle":""}],"summary":"This talk shows how AI drives innovation in regulated banking, improving developer productivity through agentic automation, prompt libraries and Copilot. It also highlights social impact via Devoxx4Kids, where engineers built playful coding and cybersecurity learning platforms for children, inspiring the next generation.","timeSlots":[],"title":"Rewriting the rules: How AI transforms engineering and inspiring young minds","totalFavourites":3,"track":{"id":2758,"name":"Mind the Geek","description":"Developer candy: stuff we want to know about but dont (generally) at work, Robotics, biological computing, cybernetics, AI, new toys, tomorrows world","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-robot-arm.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"AI is transforming how we write software and the applications we build, introducing entirely new security challenges.<br><br>In this session, we’ll explore two critical areas of AI security. First, we’ll look at agentic coding and the risks of AI agents that read untrusted content, execute commands, and interact with your development environment. Next, we’ll examine AI-powered applications, covering threats such as prompt injection, tool abuse, poisoned retrieval, and memory manipulation.<br><br>The focus is on practical defence. You’ll learn proven mitigation strategies, architectural patterns, and the current landscape of AI security tooling, including guardrails, runtime protection, and security testing frameworks. Through live demos and real-world examples, you’ll leave with actionable techniques to build and use AI systems more securely.","fieldGroup":null,"fieldGroupValues":[],"id":16439,"keywords":[{"name":"security"},{"name":"guardrails"},{"name":"ai"},{"name":"promptinjection"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":180,"freeTickets":2,"id":959,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Deep Dive","pause":false,"scheduleInSmallRoom":false,"slug":"deep180"},"speakers":[{"anonymizedBio":null,"bio":"Staff Developer Advocate for Snyk, Java Champion, Oracle Ace Pro, and Software Engineer with over a decade of hands-on experience in creating and maintaining software. He is passionate about Java, (Pure) Functional Programming and Cybersecurity. Brian is a JUG leader for the Virtual JUG and the NLJUG. He also co-leads the DevSecCon community and is a community manager for Foojay. He is a regular international speaker on mostly Java-related conferences like JavaOne, Devnexus, Devoxx, Jfokus, JavaZone and many more. Besides all that, Brian is a military reserve for the Royal Netherlands Air Force and a Taekwondo Master / Teacher.","blueskyUsername":"brianvermeer.nl","company":"Snyk","countryName":"Netherlands","firstName":"Brian","fullName":"Brian Vermeer","id":8695,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocIVtHtowJv_NiNRnihOsjh4F37Gwk5jjlcoLoxADz1WPzaLlDTS=s96-c","lastName":"Vermeer","linkedInUsername":"brianvermeer","mastodonUsername":"","twitterHandle":"brianverm"}],"summary":"This session covers AI security for agentic coding and AI-powered apps, including risks like prompt injection, tool abuse, poisoned retrieval, and memory manipulation. It emphasizes practical defenses, architectural patterns, and security tooling, with live demos and real-world examples to help build and use AI systems more securely.","timeSlots":[],"title":"    AI Security Deep Dive, Securing Agents and AI Applications","totalFavourites":20,"track":{"id":1255,"name":"Security, Trust & Compliance","description":"Guardrails, prompt injection defence, model governance, and supply-chain security.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-surveillance-camera.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Most AI features look the same: a chat panel bolted onto the side of the app. Chat is the command line of the AI era, powerful but lazy. In this lab, you&#39;ll build the alternative with your own hands: real ML models running inside the browser, powering interfaces that see, suggest, and react in real time, with no API key, no round trip, and no user data leaving the device.<br>We start on familiar ground: a Spring Boot + Kotlin service running pose estimation on the JVM with DJL. You&#39;ll measure its round-trip latency and write the number down. Then we move the model into the browser with LiteRT.js and WebGPU, step by step: first inference on a static image, then a live camera feed with a real-time skeleton overlay. In the final act, you&#39;ll race your browser against your own backend and produce the latency comparison that explains when AI belongs on-device, in the cloud, or nowhere at all.<br>You&#39;ll leave with a working project on your laptop, two bonus labs (in-browser semantic search and a camera-driven form that fills itself) to continue on the train home, and a decision framework you can defend in your next architecture discussion. The GDPR argument for inference that never leaves the device comes free with the code.<br>No machine learning background required. If you can build a Spring service and read TypeScript, you&#39;re good-to-go.","fieldGroup":null,"fieldGroupValues":[],"id":23520,"keywords":[{"name":"webgpu"},{"name":"ai"},{"name":"browser"},{"name":"latency"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#00FF00","description":null,"dinerInvite":true,"duration":180,"freeTickets":2,"id":968,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":2,"name":"Hands-on Lab","pause":false,"scheduleInSmallRoom":true,"slug":"lab18"},"speakers":[{"anonymizedBio":null,"bio":"Consultant @Consid, Organizer of Google Developer Group Chapter Stuttgart, Father, Husband and Bowler<br>Regularly sneaking frontend content to Java Conferences","blueskyUsername":"hmpfn.bsky.social","company":"Consid","countryName":"Germany","firstName":"Marcel","fullName":"Marcel Bagemihl","id":12002,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocJwfd_rXwWABVgw-xZIM9R-ZWdQO4IScSEi6kBSHk18uf7cq76m=s96-c","lastName":"Bagemihl","linkedInUsername":"mbagemihl","mastodonUsername":"","twitterHandle":""},{"anonymizedBio":null,"bio":"Stefan Ludwig is a Consulting Software Engineer who cares deeply about building software that outlives its first release. His home turf is Kotlin and Spring Boot on the backend, deployed to Kubernetes on AWS, but over the years he has worked with enough languages, frameworks, and cloud setups to know there is no silver bullet. Stefan believes that good engineering is as much about pipelines, monitoring, and deployment strategies as it is about code, and that the best solutions emerge when developers talk directly to the people who use their software.","blueskyUsername":"","company":"Consid","countryName":"Germany","firstName":"Stefan","fullName":"Stefan Ludwig","id":23035,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-a0d162ff-9f64-416a-a2d5-836f96faa9a7.jpg","lastName":"Ludwig","linkedInUsername":"stefan-ludwig-a84003173","mastodonUsername":"","twitterHandle":""}],"summary":"This lab shows how to replace chat-style AI with real-time, on-device browser inference. Participants compare JVM backend pose estimation with in-browser WebGPU models, then build live camera overlays and measure latency. They leave with a working project, extra labs, and a framework for choosing cloud vs. device AI.","timeSlots":[],"title":"Beyond the Chatbox: Ship On-Device AI in Your Browser","totalFavourites":5,"track":{"id":1254,"name":"Cloud Native, Data & Infrastructure","description":"Kubernetes, platform engineering, vector DBs, model serving, and GPU orchestration.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-server-settings.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"&quot;Whether you think you can or you think you can&#39;t – you&#39;re right.&quot;<br><br>In software, we trust the logic of our systems, but the &quot;human hardware&quot; running the code often executes a background process of self-doubt. Imposter Syndrome isn&#39;t a permanent bug; it&#39;s a physiological response hard-coded into our biology. From junior devs facing their first pull request to Java Champions keynote-ing at international conferences, the &quot;fraud detection&quot; alert is a universal experience.<br><br>This session deconstructs the neuroscience behind this phenomenon—from the amygdala&#39;s &quot;fight-or-flight&quot; triggers to the cognitive effects of cortisol. We will move beyond the &quot;soft skill&quot; fluff to examine practical, iterative steps for managing these triggers. Learn how to reframe self-doubt as a signal for growth, optimize your response to code reviews, and lean into the discomfort of the unknown to thrive in an industry that changes every week.<br><br>You’ll walk away with tools you can apply immediately, whether you’re debugging unfamiliar code, speaking up in design discussions, or stepping into a bigger role","fieldGroup":null,"fieldGroupValues":[],"id":9046,"keywords":[{"name":"growth"},{"name":"impostersyndrome"},{"name":"neuroscience"},{"name":"selfdoubt"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Expat Brit, artist, athlete, traveler, and technology community junkie. Vincent works as a Senior Community Manager at Neo4j, is a Java Champion, a steering committee member of MicroProfile, a board member of the Atlanta Java Users Group since 2008, and runs Devnexus, which is the largest community AI/Java conference in the USA.<br><br>Vincent has a degree in 3D Design from the University of Wolverhampton, United Kingdom, and, in another life, was a full-time athlete competing at World Championship level in whitewater kayaking.","blueskyUsername":null,"company":"Neo4j","countryName":"United States of America","firstName":"Vincent","fullName":"Vincent Mayers","id":9608,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-f6ffe4ab-1e88-45a9-b47d-572232f3b9c5.jpg","lastName":"Mayers","linkedInUsername":"vincentmayers","mastodonUsername":null,"twitterHandle":"vincentmayers"}],"summary":"This session explains the neuroscience behind imposter syndrome in software teams and offers practical strategies to manage self-doubt, respond better to feedback, and grow through discomfort. Attendees will gain immediately usable tools for code reviews, design discussions, and stepping into larger roles.","timeSlots":[],"title":"rm -rf self-doubt: Debugging Impostor Syndrome for Developers","totalFavourites":16,"track":{"id":1253,"name":"People, Practices & Career","description":"Leading teams, engineering culture, and career resilience.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-deepfake-ai.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"The world as we know it is changing rapidly, and the old order is crumbling. In these uncertain times, it is tempting to lose faith in the future. But what if this is precisely the beginning of something new? <strong style=\"background-color: transparent;\"><em>Fuck the System – and Other Bad Ideas for the Future</em></strong> <em style=\"background-color: transparent;\">(Fuck The System, en andere slechte ideeën voor de toekomst)</em> unravels the chaotic forces at play behind the geopolitical scenes and asks a fundamental question: can Europe grow into a strong player in the emerging world order? What do we need to build a Europe that is sovereign, resilient, and radically innovative? <br><br>This is a manifesto to understand the present and imagine the future – thought-provoking, sharp, and unorthodox. It breaks with old logic and prejudices and sees in today’s disorder the seed of something better. For thinkers and doers, for citizens, entrepreneurs, and policymakers who believe that Europe can be more than an old continent in crisis.","fieldGroup":null,"fieldGroupValues":[],"id":49751,"keywords":[{"name":"sovereignty"},{"name":"innovation"},{"name":"resilience"},{"name":"europe"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#b4e62c","description":null,"dinerInvite":true,"duration":45,"freeTickets":2,"id":994,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Closing Keynote","pause":false,"scheduleInSmallRoom":false,"slug":"key50"},"speakers":[{"anonymizedBio":null,"bio":"Jo Caudron is an internationally acclaimed keynote speaker with more than 30 years of experience on stages across Europe and beyond. Known for his inspiring and provocative storytelling, he weaves together insights on disruption, transformation, and the future of our society. What began as a focus on digital innovation and technology has evolved into a much broader mission: helping organizations, leaders, and citizens understand how profound societal, economic, and geopolitical shifts are reshaping the world - and how we can turn that uncertainty into opportunity.<strong style=\"background-color: transparent;\">​</strong>","blueskyUsername":null,"company":null,"countryName":"Belgium","firstName":"Jo","fullName":"Jo Caudron","id":49701,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-7aa19f72-a79a-4dde-b5fe-b911859b0c1f.jpg","lastName":"Caudron","linkedInUsername":null,"mastodonUsername":null,"twitterHandle":null}],"summary":"A provocative manifesto exploring today’s geopolitical upheaval and asking how Europe can become sovereign, resilient, and innovative in the emerging world order. It challenges old assumptions, reimagines the future, and appeals to citizens, entrepreneurs, policymakers, and thinkers seeking a stronger Europe.","timeSlots":[],"title":"F*ck The System, and other bad ideas for the future","totalFavourites":11,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Interacting with foreign libraries from Java has never been easier, thanks to the Foreign Function &amp; Memory (FFM) API. But interacting with entire foreign language runtimes, like JavaScript or Python, remains hard.<br> <br>Historically, Java tried to solve this by rewriting these runtimes in Java. Nashorn, introduced in JDK 8, successfully brought JavaScript to Java applications. However, due to increasing maintenance costs and compatibility lags, it was deprecated in Java 11 and later removed in Java 15.<br><br>Project Detroit paves a new way forward: instead of implementing bespoke language runtimes from scratch, it leverages FFM to embed industry-standard native runtimes like V8 and CPython in the safety and comfort of your Java application.<br><br>This session is a deep dive into the obscure art of runtime bridging. From juggling two garbage collectors to avoiding virtual thread pinning, we will show what really happens when the JVM rubber meets the foreign road.","fieldGroup":null,"fieldGroupValues":[],"id":23527,"keywords":[{"name":"python"},{"name":"ffm"},{"name":"v8"},{"name":"javascript"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Maurizio Cimadamore is a compiler architect at Oracle. He is currently working on the language and runtime aspects of many foundational projects that will change the shape of the Java platform, such as Project Valhalla and Project Panama.<br>In the previous years, he has contributed to the design and implementation of several features of the Java programming language, such as diamond inference, lambda expressions and local variable type-inference. Maurizio holds a PhD in language design and implementation.","blueskyUsername":null,"company":"Oracle","countryName":"Italy","firstName":"Maurizio","fullName":"Maurizio Cimadamore","id":21513,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-66579526-c2c5-46b5-87ed-6bb6f34121af.jpg","lastName":"Cimadamore","linkedInUsername":null,"mastodonUsername":null,"twitterHandle":null}],"summary":"Project Detroit uses Java’s Foreign Function & Memory API to embed native runtimes like V8 and CPython directly into Java applications. It replaces custom reimplementations like Nashorn with standard runtimes, exploring challenges such as garbage collection coordination and virtual thread pinning.","timeSlots":[],"title":"Project Detroit: From Foreign Libraries to Foreign Language Runtimes","totalFavourites":4,"track":{"id":2754,"name":"Java Language & Platform","description":"Project Loom, Leyden, Valhalla, Panama, and the ever evolving JVM.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-coffee-mug.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"GraalVM is taking exciting leaps forward, powered by its community of users, contributors, and early adopters.<br><br>Join core members of the GraalVM team to discuss what’s next for the project. We’ll share updates on Crema, which enables dynamic class loading to Native Image and brings together the best of the AOT and JIT worlds. We’ll also cover the latest developments in GraalOS, GraalPy, GraalWasm, and other areas across the GraalVM ecosystem, as well as GraalVM-related updates in Micronaut, Quarkus, and Spring. Finally, we’ll take a sneak peek at the project roadmap and what the users can expect next.<br><br>Bring your questions, feedback, and ideas for the future. This BOF is your opportunity to connect with the community and help shape the next chapter of GraalVM!","fieldGroup":null,"fieldGroupValues":[],"id":24206,"keywords":[{"name":"graalvm"},{"name":"nativeimage"},{"name":"graalwasm"},{"name":"graalpy"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":60,"freeTickets":1,"id":954,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"BOF","pause":false,"scheduleInSmallRoom":true,"slug":"bof60"},"speakers":[{"anonymizedBio":null,"bio":"Thomas Wuerthinger is a Vice President at Oracle leading programming language implementation teams for languages including Python, JavaScript, and Java. He is the architect of the Graal compiler and the Truffle self-optimizing runtime system. Previously, he worked on the Crankshaft optimizing compiler of V8 at Google, and the Maxine research virtual machine at Sun Microsystems. He received a PhD degree from JKU Linz for his research about dynamic code evolution.","blueskyUsername":"thomaswue.dev","company":"Oracle","countryName":"Switzerland","firstName":"Thomas","fullName":"Thomas Wuerthinger","id":16383,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-4f0ca29a-e775-47ce-be77-6e01a95e9abe.jpg","lastName":"Wuerthinger","linkedInUsername":"thomaswue","mastodonUsername":"https://mastodon.online/@thomaswue","twitterHandle":"thomaswue"},{"anonymizedBio":null,"bio":"Fabio Niephaus is a senior research manager on the GraalVM project at Oracle. He works on GraalPy, GraalWasm, and other Graal Languages, GraalVM Native Image, developer tools, and the overall GraalVM developer experience.","blueskyUsername":"fniephaus.com","company":"Oracle","countryName":"Germany","firstName":"Fabio","fullName":"Fabio Niephaus","id":18057,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocI36wdxsTUDlY7nGdiA5a2FaCduN2Tb9WYzBhsx_07uMvIollc8PQ=s96-c","lastName":"Niephaus","linkedInUsername":"fniephaus","mastodonUsername":"https://mastodon.social/@fniephaus","twitterHandle":"fniephaus"},{"anonymizedBio":null,"bio":"Shaun has been a member of the Java community for over 25 years and has presented at many developer conferences and user groups around the world. He’s brought multiple Java application deployment cloud services to market and has been an active participant in multiple open source projects including GraalVM and the Java Persistence API (JPA) reference implementation, EclipseLink. Shaun currently leads Graal developer relations and product at Oracle.","blueskyUsername":"ssmith.bsky.social","company":"Oracle","countryName":"Canada","firstName":"Shaun","fullName":"Shaun Smith","id":24155,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocLJpsvwH9bY4vzucOaWZuwPF_YjXoTl8TvuKayFwEO0wRH_VWjF2A=s96-c","lastName":"Smith","linkedInUsername":"shaunmsmith","mastodonUsername":"https://mastodon.social/@shaunmsmith","twitterHandle":"shaunmsmith"}],"summary":"Join GraalVM core members for updates on Crema, enabling dynamic class loading in Native Image, and news across GraalOS, GraalPy, GraalWasm, Micronaut, and the broader ecosystem. This community BOF invites questions, feedback, and ideas to help shape GraalVM’s future.","timeSlots":[],"title":"GraalVM Community BOF","totalFavourites":2,"track":{"id":2754,"name":"Java Language & Platform","description":"Project Loom, Leyden, Valhalla, Panama, and the ever evolving JVM.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-coffee-mug.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"In the 1970s, model trains were a popular hobby. Thanks to low production costs, anyone could afford a small HO gauge layout. The system was simple: a train, a motor, 12V DC in the track, and off you go!<br><br>Fifty years later, we took our trains out of the attic with a big idea in mind: to convert them to digital. With some Seeed Studio, Bluetooth, and TinyGo, we managed to get a functional railway network, were we can manage speed, direction, and lights of each train individually.<br><br>This talk speaks about hardware and software architecture for embedded systems, in a retrospective format about all our successes (and mistakes) during the conception of this project. Everything is open-source, so don&#39;t hesitate to use it, fork it, and enhance it!","fieldGroup":null,"fieldGroupValues":[],"id":9036,"keywords":[{"name":"digital conversion"},{"name":"model trains"},{"name":"bluetooth"},{"name":"embedded systems"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"French developer working at Zenika. I spent 5 years working for a sovereign cloud provider, deploying OpenStack at scale and extending it with Golang-written software. Passionate about everything related to IT, especially if it&#39;s new to me!<br><br>Also, I like trains, so I put some RP2040/nRF52840 in my HO models to control them. Have a look at https://github.com/trainberry if you&#39;re interested!<br><br>Oh, and, as my name can prefigure it, I&#39;m French... Sorry if I make some english mistakes.<br><br>","blueskyUsername":"florian.forestier.re","company":"Zenika","countryName":"France","firstName":"Florian","fullName":"Florian FORESTIER","id":8696,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocLatBLU2zKU17CC2f1JFbRUurY_4zUYQUO80dqhsiKIfg2f4i81=s96-c","lastName":"FORESTIER","linkedInUsername":"florian-forestier","mastodonUsername":null,"twitterHandle":null},{"anonymizedBio":null,"bio":"I&#39;m a developper in a sovereign cloud infrastructure. My day-to-day life is filled with Openstack, Golang, DevOps automations and network problems !<br><br>I&#39;m passionate about IT, photography and lots of different drawing or sculpting technics. To sum up : I love learning as much as I can !","blueskyUsername":null,"company":"BeYs Cloud","countryName":"France","firstName":"Justine","fullName":"Justine Bachelard","id":8697,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-34c987ce-cf32-424d-a942-b4d1c29344b7.jpg","lastName":"Bachelard","linkedInUsername":"justine-bachelard-1240a11b9","mastodonUsername":null,"twitterHandle":null}],"summary":"A retro model train hobby project was modernized with Seeed Studio hardware, Bluetooth, and TinyGo to create a digital railway network with individual train control for speed, direction, and lights. The talk covers embedded hardware/software architecture, lessons learned, and open-source implementation.","timeSlots":[],"title":"My old trains have a second life, with TinyGo!","totalFavourites":3,"track":{"id":2758,"name":"Mind the Geek","description":"Developer candy: stuff we want to know about but dont (generally) at work, Robotics, biological computing, cybernetics, AI, new toys, tomorrows world","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-robot-arm.png"}},{"afterVideoURL":null,"audienceLevel":"ADVANCED","description":"Every proxy you run today was designed for a world where routing decisions live in paths, hosts, and headers. AI traffic broke that assumption. Which model? Which provider? Is this an MCP call or a chat completion? The answers are buried in JSON bodies - invisible to nginx, awkward in Envoy, and increasingly the difference between a demo and a production system.<br>This talk introduces Praxis, an open-source proxy framework built for AI infrastructure. We&#39;ll look at what makes AI workloads genuinely different - body-based routing, credential isolation, streaming-first traffic, token-denominated cost, and agent protocols like MCP - and why bolting these onto existing proxies keeps failing. Then we&#39;ll dig into why Praxis is written in Rust: zero unsafe code and Rustls in the most exposed component of your stack, predictable latency with no GC jitter, and the ability to stand on Cloudflare&#39;s battle-tested Pingora rather than reimplementing HTTP.<br>Crucially, Praxis is a framework for building proxies, not just a proxy. Everything is a filter - routing, rate limiting, guardrails, model selection - and your custom filters use the same traits as the built-ins, compiling straight into the binary. The same primitives compose into an AI gateway, an ingress, an egress proxy, or a mesh sidecar. Whatever your use case, you can assemble it from config in minutes - and when no filter fits, write your own and make the proxy truly yours.","fieldGroup":null,"fieldGroupValues":[],"id":27452,"keywords":[{"name":"rust"},{"name":"ai"},{"name":"proxy"},{"name":"mcp"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Alex Snaps is a senior principal software engineer at Red Hat, where he works on several open source projects related, directly or indirectly, to the CNCF-hosted Kuadrant project — most recently shifted focus on AI networking and gateway infrastructure. Passionate about distributed systems, programming languages, and performance-related topics, he&#39;s currently deep in Rust, tackling systems-level problems from streaming parsers to WebAssembly targets. He has had the good fortune of combining his passion with open source development for nearly 20 years — having written his first lines of code at the age of 8, and never stopped since, more than 40 years later.","blueskyUsername":"alex.wcgw.dev","company":"Red Hat","countryName":"Canada","firstName":"Alex","fullName":"Alex Snaps","id":27401,"imageUrl":"https://avatars.githubusercontent.com/u/509058?v=4","lastName":"Snaps","linkedInUsername":"alexsnaps","mastodonUsername":"","twitterHandle":""}],"summary":"Praxis is an open-source Rust proxy framework built for AI traffic, enabling body-based routing, credential isolation, streaming, token-cost controls, and MCP support. Unlike traditional proxies, it uses composable filters for routing, guardrails, rate limiting, and custom logic, letting teams build AI gateways, ingress, egress, or sidecars quickly.","timeSlots":[],"title":"The Praxis proxy or: How I Learned to Stop Worrying and Love AI workloads","totalFavourites":1,"track":{"id":1254,"name":"Cloud Native, Data & Infrastructure","description":"Kubernetes, platform engineering, vector DBs, model serving, and GPU orchestration.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-server-settings.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Agentic AI demos are easy. Building agentic systems that are reliable, observable, secure, testable, and ready for production is where the real challenge begins.<br><br>In this hands-on lab, you&#39;ll build an enterprise-grade agentic AI application from the ground up using LangChain4j and its Quarkus extension. Along the way, you&#39;ll learn how to connect remote tools and agents through emerging interoperability standards such as MCP and A2A. You&#39;ll also explore how to encapsulate business capabilities as reusable skills, enforce governance through guardrails, and implement resilience patterns such as fault tolerance, retries, and persistence to ensure reliable execution of long-running agent workflows.<br><br>Finally, we&#39;ll cover one of the most overlooked aspects of agentic development: testing. You&#39;ll learn practical techniques for validating agent behavior, mocking tools and models, and building automated tests that provide confidence before deployment.<br><br>By the end of the lab, you&#39;ll leave with a complete, working agentic application and a set of proven patterns for building AI systems that can move beyond prototypes and into production. Note that this lab will be based on the last part of a 3-sections workshop, but if you lack any prior knowledge you will be also allowed to work on the former 2 parts and proceed at your own pace.","fieldGroup":null,"fieldGroupValues":[],"id":7036,"keywords":[{"name":"agentic"},{"name":"governance"},{"name":"testing"},{"name":"langchain4j"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#00FF00","description":null,"dinerInvite":true,"duration":120,"freeTickets":2,"id":984,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":2,"name":"Hands-on Lab","pause":false,"scheduleInSmallRoom":true,"slug":"lab120"},"speakers":[{"anonymizedBio":null,"bio":"Mario is a senior principal software engineer at IBM working as Drools project lead. Among his interests there are also high performance systems and generative AI, being an active contributor of widely adopted projects like Quarkus and LangChain4j. He is also a Java Champion, the JUG Milano coordinator, a frequent speaker and the co-author of &quot;Modern Java in Action&quot; published by Manning.","blueskyUsername":null,"company":"IBM","countryName":"Italy","firstName":"Mario","fullName":"Mario Fusco","id":3932,"imageUrl":"https://lh3.googleusercontent.com/a-/AOh14GinuLQCwL67BBgfGsiWRl3mu3Ya0TbDffhYFiXX=s96-c","lastName":"Fusco","linkedInUsername":"mario-fusco-3467213","mastodonUsername":null,"twitterHandle":"mariofusco"},{"anonymizedBio":null,"bio":"Georgios works for IBM as a Senior Principal Software Engineer and is currently one of the most active contributors to Quarkus, where he works in all sorts of areas, including but not limited to LangChain4j, RESTEasy Reactive, Spring compatibility, Kubernetes support, testing, Kotlin, and more.<br><br>He is also an enthusiastic promoter of Quarkus who never misses a chance to spread the Quarkus love!","blueskyUsername":null,"company":"IBM","countryName":"Greece","firstName":"Georgios","fullName":"Georgios Andrianakis","id":3945,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-95904645-1695-4adf-b24c-41926050b4b4.jpg","lastName":"Andrianakis","linkedInUsername":"georgios-andrianakis","mastodonUsername":null,"twitterHandle":"geoand86"},{"anonymizedBio":null,"bio":"Kevin Dubois is a software architect and platform engineer with a career spanning over 20 years. He is often featured as a keynote speaker at conferences around the world where he shares his experience and knowledge about cloud native &amp; AI software development, developer experience, open source and Java. Kevin is also an author and Java Champion. He currently works as a Senior Principal Developer Advocate at IBM, and is  Technical Lead for the CNCF Developer Experience Technical Advisory Group as well as an ambassador for the Agentic AI Foundation.","blueskyUsername":"kevindubois.com","company":"IBM","countryName":"Switzerland","firstName":"Kevin","fullName":"Kevin Dubois","id":5843,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocInnMfs42NN14UEEtFboGAF5baXQdsTFdbDo_ZuR1DADFHUONPEfA=s96-c","lastName":"Dubois","linkedInUsername":"kevindubois","mastodonUsername":"https://mastodon.social/@kevindubois","twitterHandle":"kevindubois"}],"summary":"Hands-on lab building a production-ready agentic AI app with LangChain4j and Quarkus. Learn to integrate tools via MCP/A2A, add reusable skills, guardrails, resilience, and testing. Gain practical patterns for reliable, observable, secure, and testable agent workflows, leaving with a working enterprise-grade application.","timeSlots":[],"title":"Building Production-Ready Agentic Systems with LangChain4j and Quarkus","totalFavourites":6,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Java frameworks have long relied on reflection, classpath scanning and runtime dynamism to deliver flexibility, but at a significant cost in terms of startup time, memory footprint, and raw throughput. The main goal of this talk is demonstrating with a recently introduced practical optimization how the radically different architecture of Quarkus unlocks performance gains that traditional frameworks simply cannot achieve.<br><br>Using the case studies of JSON serialization, REST Client and Quarkus LangChain4j we will walk through how a Quarkus extension can leverage Quarkus&#39;s build-time indexing to identify and inspect the application&#39;s domain model at build time, and Gizmo to generate optimized bytecode that completely replaces Jackson&#39;s reflection-heavy serialization machinery. The result is not just cleaner execution, but measurable performance improvements—demonstrating double-digit throughput gains while reducing latency and runtime overhead.<br><br>Beyond the specific optimization, this talk reveals a deeper insight: many “dynamic” features in Java are only necessary because frameworks lack build-time knowledge. By embracing ahead-of-time metaprogramming, Quarkus redefines what is possible in the JVM ecosystem.<br><br>Attendees will leave with a clear mental model of Quarkus’ architecture, a practical understanding of build-time metaprogramming, and a fresh perspective on how rethinking the boundary between build and runtime can unlock entirely new performance and footprint frontiers.","fieldGroup":null,"fieldGroupValues":[],"id":5537,"keywords":[{"name":"performance"},{"name":"reflection"},{"name":"quarkus"},{"name":"metaprogramming"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":180,"freeTickets":2,"id":959,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Deep Dive","pause":false,"scheduleInSmallRoom":false,"slug":"deep180"},"speakers":[{"anonymizedBio":null,"bio":"Mario is a senior principal software engineer at IBM working as Drools project lead. Among his interests there are also high performance systems and generative AI, being an active contributor of widely adopted projects like Quarkus and LangChain4j. He is also a Java Champion, the JUG Milano coordinator, a frequent speaker and the co-author of &quot;Modern Java in Action&quot; published by Manning.","blueskyUsername":null,"company":"IBM","countryName":"Italy","firstName":"Mario","fullName":"Mario Fusco","id":3932,"imageUrl":"https://lh3.googleusercontent.com/a-/AOh14GinuLQCwL67BBgfGsiWRl3mu3Ya0TbDffhYFiXX=s96-c","lastName":"Fusco","linkedInUsername":"mario-fusco-3467213","mastodonUsername":null,"twitterHandle":"mariofusco"},{"anonymizedBio":null,"bio":"Georgios works for IBM as a Senior Principal Software Engineer and is currently one of the most active contributors to Quarkus, where he works in all sorts of areas, including but not limited to LangChain4j, RESTEasy Reactive, Spring compatibility, Kubernetes support, testing, Kotlin, and more.<br><br>He is also an enthusiastic promoter of Quarkus who never misses a chance to spread the Quarkus love!","blueskyUsername":null,"company":"IBM","countryName":"Greece","firstName":"Georgios","fullName":"Georgios Andrianakis","id":3945,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-95904645-1695-4adf-b24c-41926050b4b4.jpg","lastName":"Andrianakis","linkedInUsername":"georgios-andrianakis","mastodonUsername":null,"twitterHandle":"geoand86"},{"anonymizedBio":null,"bio":"I&#39;ve been working for many years in the computer field. In the last 15 years I&#39;ve cultivated a strong passion in Java development and the under the hood details of OpenJDK, C and (x86) Assembly.<br>Big fan of DDD (Domain Driven Design) world, I&#39;ve developed several Event-Sourcing high performance solutions in the medical and IoT field.<br>I&#39;m an active member of various online communities on performance (<a href=\"https://groups.google.com/forum/#!forum/mechanical-sympathy\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"background-color: transparent; color: rgb(27, 100, 143);\">https://groups.google.com/forum/#!forum/mechanical-sympathy</a>), Senior Principal (Software) Performance Engineer and Performance Lead for Red Hat/IBM on Quarkus, Red Hat Top Inventor (2019).<br>I&#39;ve collaborated to different projects related high-performance computing both as committer and contributors eg Quarkus, Vert-x, Netty committer, JCTools author, PMC of ActiveMQ Apache Artemis (Messaging Broker), HdrHistogram, JGroups-raft, ...","blueskyUsername":"","company":"IBM","countryName":"Italy","firstName":"Francesco","fullName":"Francesco Nigro","id":5826,"imageUrl":"https://lh3.googleusercontent.com/a/AItbvmlsKs3_saDtZgJ0buTR5LvusOsvlGmdbC7cEeks=s96-c","lastName":"Nigro","linkedInUsername":"","mastodonUsername":"","twitterHandle":"forked_franz"}],"summary":"The talk shows how Quarkus uses build-time indexing and bytecode generation to replace reflection-heavy Java framework mechanisms, improving startup, memory, latency, and throughput. Case studies in JSON serialization, REST clients, and LangChain4j demonstrate double-digit performance gains and the power of ahead-of-time metaprogramming.","timeSlots":[],"title":"The Quarkus advantage: Turning build-time metaprogramming into runtime performances","totalFavourites":6,"track":{"id":1252,"name":"Architecture & Modernization","description":"Designing for agentic workflows, event-driven systems, and legacy transformation.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-blockchain.png"}},{"afterVideoURL":null,"audienceLevel":"ADVANCED","description":"What does it take to rebuild the core of a crypto exchange while it is already operating 24/7?<br><br>In 2018, Bitvavo&#39;s exchange ran on a familiar startup stack: Node.js, Go, Redis, MySQL, and Kafka. It helped the company move fast and grow, but as trading volume increased, the same architecture began to show its limits. Latency became harder to predict, shared infrastructure became a bottleneck, and proving correct order processing became just as important as making it fast.<br><br>This talk is the story of how we rebuilt the exchange core into a deterministic, replayable, low-latency trading platform. We moved away from database-centered processing and redesigned the system around an ordered log, a replicated state machine, Raft consensus, and a reliable UDP transport.<br><br>I&#39;ll share the engineering trade-offs behind that migration: where determinism helps, where it hurts, what changes when state lives in memory, and how far you can push the JVM when garbage collection, networking, and operating-system noise are all part of the latency budget.<br><br>The result is a production system with sub-millisecond end-to-end latency, around 5 microseconds of internal processing time, and capacity for 100,000 orders per second. But the real story is not just the numbers — it is what we had to unlearn, redesign, and operationalize to make a financial system both fast and correct.<br>","fieldGroup":null,"fieldGroupValues":[],"id":9029,"keywords":[{"name":"deterministic"},{"name":"consensus"},{"name":"trading"},{"name":"latency"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Oleg Lobanov is a Staff Engineer at Bitvavo, where he works on the core trading platform behind roughly half of Europe&#39;s euro-denominated spot crypto volume. He brings two decades of software engineering experience — more than ten years of it building low-latency trading systems and high-scale e-commerce platforms. His focus is the JVM, distributed systems, and the kind of performance engineering where microseconds and determinism genuinely matter.","blueskyUsername":"","company":"Bitvavo","countryName":"Netherlands","firstName":"Oleg","fullName":"Oleg Lobanov","id":8689,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-cbda3b84-b3f9-4e69-9a55-69096722a354.jpg","lastName":"Lobanov","linkedInUsername":"oleglobanov","mastodonUsername":"","twitterHandle":""}],"summary":"Bitvavo rebuilt its live crypto exchange core for deterministic, replayable, low-latency processing. Replacing database-centered architecture with an ordered log, replicated state machine, Raft, and reliable UDP delivered sub-millisecond latency and 100,000 orders/second, while balancing correctness, operational complexity, and JVM performance constraints.","timeSlots":[],"title":"From a startup stack to 5 microseconds: inside a crypto trading engine","totalFavourites":4,"track":{"id":1252,"name":"Architecture & Modernization","description":"Designing for agentic workflows, event-driven systems, and legacy transformation.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-blockchain.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":" As Java enters the AI era, developers are looking for ways to run local large language models (LLMs) without leaving the JVM. This session presents lessons learned from building GPU-accelerated LLM inference engines natively in Java using TornadoVM, an open-source framework that transparently offloads Java programs to GPUs and other accelerators.<br>Beyond generating optimized CUDA code directly from Java, TornadoVM now provides seamless access to the NVIDIA software ecosystem, enabling Java applications to leverage libraries such as cuBLAS, cuDNN, cuFFT, and CUDA runtime APIs without requiring JNI or manually written native code. This allows developers to combine high-level Java programming with the performance of NVIDIA&#39;s AI and HPC libraries.<br>Using GPULlama3.java, a lightweight GPU-accelerated inference engine for Llama models, the session explores techniques for supporting quantized data types (FP16, Q8, and Q4), integrating with Quarkus and LangChain4J, and optimizing LLM inference directly in Java. Along the way, attendees will see how modern Java can target GPUs while interoperating with the broader NVIDIA ecosystem.<br>The session concludes by discussing how TornadoVM complements emerging JVM technologies such as Project Babylon and Project Panama, and how these efforts are helping establish Java as a first-class platform for AI, accelerated computing, and high-performance machine learning.","fieldGroup":null,"fieldGroupValues":[],"id":19730,"keywords":[{"name":"java"},{"name":"tornadovm"},{"name":"llm"},{"name":"gpu"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Dr. Athanasios Stratikopoulos (male) is a Research Fellow at the University of Manchester with specialization on heterogeneous architectures and reconfigurable accelerators. He has authored more than 20 research articles in the field of hardware acceleration, system software and programming languages. Currently his work involves heterogeneous architectures ranging from low-power devices to high-end cloud deployments. He is one of the lead developers of TornadoVM and has been part of the team for the last eight years. In addition to his core contributions to the system&#39;s technical development, Dr. Stratikopoulos leads the project&#39;s communication and dissemination efforts, helping to articulate its goals and advancements to both academic and industrial audiences through talks, documentation, and outreach activities.","blueskyUsername":"stratika.bsky.social","company":"TornadoVM","countryName":"United Kingdom","firstName":"Thanos","fullName":"Thanos Stratikopoulos","id":7649,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-1eb3708e-af15-4778-a560-15ebbea2b133.jpg","lastName":"Stratikopoulos","linkedInUsername":"stratika","mastodonUsername":"","twitterHandle":"thanos_str"},{"anonymizedBio":null,"bio":"Michalis Papadimitriou is a Senior Software Engineer at Neo4j and a Research Fellow at the University of Manchester. His core expertise includes open-source software development, hardware abstractions for high-level programming languages, compiler optimizations for GPU computing, and enabling large language model (LLM) inference on GPUs for the Java Virtual Machine (JVM).<br>He is focused on advancing high-performance AI and graph computing systems, with particular interest in GPU acceleration for machine learning workloads on the JVM through the TornadoVM framework, and continues to actively maintain the open-source GPULlama3.java project.<br>Before joining Neo4j, Michalis was a Research Fellow at the University of Manchester, where he contributed to the TornadoVM project as a Staff Software Engineer. Prior to that, he worked across a range of software stacks at Huawei Technologies and contributed to the open-source machine learning compiler Apache TVM while at OctoAI (formerly OctoML), which was later acquired by NVIDIA.","blueskyUsername":"mikepapadim.bsky.social","company":"Neo4j","countryName":"United Kingdom","firstName":"Michalis","fullName":"Michalis Papadimitriou","id":19768,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-85f7f25f-5f2c-4526-bed6-489be66ed5e1.jpg","lastName":"Papadimitriou","linkedInUsername":"michalis-papadimitriou","mastodonUsername":"","twitterHandle":"mikepapadim"},{"anonymizedBio":null,"bio":"TornadoVM","blueskyUsername":"","company":"TornadoVM","countryName":"United Kingdom","firstName":"Orion","fullName":"Orion Papadakis","id":49104,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocIQezQ2mlrR6otSHj3OK1aG_zKZMKPfr0c6b75C1Of0ruqBeoY8Lw=s96-c","lastName":"Papadakis","linkedInUsername":"orionpapadakis","mastodonUsername":"","twitterHandle":"OrionPapadakis"}],"summary":"The session shows how Java can run GPU-accelerated local LLMs natively with TornadoVM, using NVIDIA libraries without JNI. It covers GPULlama3.java, quantized inference, Quarkus and LangChain4J integration, and how TornadoVM plus Project Babylon/Panama position Java as a strong AI and HPC platform.","timeSlots":[],"title":"Building LLM Inference Engines in Java with TornadoVM and the NVIDIA Ecosystem","totalFavourites":3,"track":{"id":2754,"name":"Java Language & Platform","description":"Project Loom, Leyden, Valhalla, Panama, and the ever evolving JVM.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-coffee-mug.png"}},{"afterVideoURL":null,"audienceLevel":"ADVANCED","description":"Time to dive a little deeper, beyond the usual AI agent intros. When building your <strong style=\"background-color: transparent; color: rgb(0, 0, 0);\">multi-agent systems</strong>, you’ll often be combining basic bricks like sequential, parallel, or loop flows. With those components, you create more complex patterns, like reflection loops, and reviewer/critique agents. <br><br>However the path to <em style=\"background-color: transparent; color: rgb(0, 0, 0);\">&quot;AI-nlightment&quot;</em> might require you to make choices with the routing pattern, or to shepherd a swarm of agents to collaborate together. We&#39;ll talk about different approach to <strong style=\"background-color: transparent; color: rgb(0, 0, 0);\">planning</strong> (from programmatic to <strong style=\"background-color: transparent; color: rgb(0, 0, 0);\">goal oriented</strong>).We&#39;ll uncover the concept of <strong style=\"background-color: transparent; color: rgb(0, 0, 0);\">progressive disclosure</strong> used in skills. We&#39;ll see that AI agents can improve baselines with the <strong style=\"background-color: transparent; color: rgb(0, 0, 0);\">LLM-as-Judge</strong> pattern. And we&#39;ll finish with discussing <strong style=\"background-color: transparent; color: rgb(0, 0, 0);\">agent loop</strong> approaches.<br><br>As a committer on both <strong style=\"background-color: transparent; color: rgb(0, 0, 0);\">LangChain4j</strong> and <strong style=\"background-color: transparent; color: rgb(0, 0, 0);\">ADK for Java</strong> (Agent Development Kit), it’ll be my pleasure to guide you through this agentic adventure, and help you make the right choices and use the right abstractions on your journey.","fieldGroup":null,"fieldGroupValues":[],"id":19708,"keywords":[{"name":"routing"},{"name":"reflection"},{"name":"planning"},{"name":"agents"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Guillaume Laforge is a Developer Advocate at Google, focusing on Generative AI and AI agent engineering. He&#39;s also a Java Champion, the co-founder of the Apache Groovy programming language, and a founding member of Les Cast Codeurs podcast. <br>He&#39;s a committer on LangChain4j and Agent Development Kit for Java.","blueskyUsername":"glaforge.dev","company":"Google","countryName":"France","firstName":"Guillaume","fullName":"Guillaume Laforge","id":2951,"imageUrl":"https://lh3.googleusercontent.com/a-/AFdZucoQ5lU7oZBBSXSkv4PJE8-JzMxuHatM3ouR8sOOnl8=s96-c","lastName":"Laforge","linkedInUsername":"glaforge","mastodonUsername":"https://uwyn.net/@glaforge","twitterHandle":"glaforge"}],"summary":"This talk explores advanced multi-agent system patterns beyond basics, including routing, swarms, planning approaches, progressive disclosure in skills, LLM-as-Judge evaluation, and agent loops. Drawing on experience with LangChain4j and ADK for Java, it helps developers choose the right abstractions for building effective agentic systems.","timeSlots":[],"title":"Choose your own adventure in agentic design patterns","totalFavourites":13,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"I built the javadocs.dev MCP server to help Java, Kotlin, and Scala developers give their agents more efficient access to documentation for the libraries they use. But until recently I didn&#39;t know if it was better than what base models, or base models with web search/fetch, use. I created a custom eval framework to provide verifiable evidence that the javadocs.dev MCP is up to 5x more token efficient than what the standard agents provide and provides correct answers, unlike the base models. This session will share the learned best practices for building and implementing evals that can provide the feedback you need to improve your agent skills &amp; MCPs.","fieldGroup":null,"fieldGroupValues":[],"id":21690,"keywords":[{"name":"documentation"},{"name":"javadocs"},{"name":"evals"},{"name":"mcp"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":30,"freeTickets":2,"id":957,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Tools-in-Action","pause":false,"scheduleInSmallRoom":false,"slug":"tia30"},"speakers":[{"anonymizedBio":null,"bio":"Christian Tzolov is an R&amp;D Software Engineer on Broadcom&#39;s Spring team, where he leads Spring AI and is one of the maintainers of the MCP Java SDK project. He serves as an Ambassador for the Agentic AI Foundation (AAIF) and focuses on integrating AI with enterprise Java and advancing how developers build intelligent applications.","blueskyUsername":"tzolov.bsky.social","company":"Spring Team","countryName":"Netherlands","firstName":"Christian","fullName":"Christian Tzolov","id":18070,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-970401c2-a699-4f02-8855-f855f219221a.jpg","lastName":"Tzolov","linkedInUsername":"tzolov","mastodonUsername":"","twitterHandle":"christzolov"},{"anonymizedBio":null,"bio":"Professional software developer since 1997, with much of that time spent helping developers build software that doesn&#39;t suck. A Typed Pure Functional Programming zealot who often compromises on his ideals to just get stuff done. Currently a Developer Advocate for AWS and AAIF Technical Committee member.","blueskyUsername":"jamesward.com","company":"AWS","countryName":"United States of America","firstName":"James","fullName":"James Ward","id":21535,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-607b90ef-e5ff-4f70-b91c-a3082787114d.jpg","lastName":"Ward","linkedInUsername":"JamesWard","mastodonUsername":"","twitterHandle":"JamesWard"}],"summary":"The speaker built the javadocs.dev MCP server to give Java, Kotlin, and Scala agents efficient library documentation access. They created a custom eval framework showing it is up to 5x more token-efficient and more accurate than base models or web search. The session shares best practices for effective evals.","timeSlots":[],"title":"Exquisite Evals for Skills & MCPs","totalFavourites":4,"track":{"id":1701,"name":"Development Practices","description":"All about Getting Stuff Done right. Methodologies, better practices, etc.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-hearts-card.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Using API keys to access LLM models offers an easy and fast way to get started with AI development work. But using API keys in production is an anti-pattern - they do not represent an agent identity, are not cryptographically secure, not easy to refresh while easy enough to leak and can remain active long after someone who allocated them left.<br><br>Workload Identity Federation (WIF) is a mechanism that can help migrate from API keys to short term access tokens that an AI agent can acquire in exchange for its workload identity token. With Anthropic, OpenAI and other LLM providers moving away from API keys and offering top-class Workload Identity Federation integration, it is the right time to learn about WIF.<br><br>In this session we will learn how SPIFFE (Secure Production Identity Framework for Everyone) and Kubernetes service tokens can be used as verifiable workload identifies for either multi-cluster or single cluster deployments.<br><br>We will finish with a demo that shows a Quarkus LangChain4j application that uses a SPIFFE provisioned JWT workload identity token to integrate with Anthropic Workload Identity Federation for a secure LLM access.","fieldGroup":null,"fieldGroupValues":[],"id":16443,"keywords":[{"name":"anthropic"},{"name":"workload identity federation"},{"name":"spiffe"},{"name":"api keys"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Sergey Beryozkin is a member of the Quarkus Security team where he focuses on OpenId Connect, Workload Identity and MCP security. He was an Apache Software Foundation (ASF) CXF JAX-RS (Java API for RESTful Web Services) implementation and security support project lead for many years. He is interested in how distributed systems can interoperate at scale and still remembers about Corba. He has lived in Dublin, Ireland for more than a quarter of a century, is an aspiring cyclist, a keen walker and club chess player.","blueskyUsername":null,"company":"IBM / Red Hat","countryName":"Ireland","firstName":"Siarhei","fullName":"Siarhei Biarozkin","id":16379,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocLvQ2qhKsI3Q0jnu6k2znruJUxHjVZksTRWeG4Tyiwq1-ziqtlY=s96-c","lastName":"Biarozkin","linkedInUsername":"sberyozkin","mastodonUsername":null,"twitterHandle":null}],"summary":"The session explains why API keys are unsafe for production LLM access and how Workload Identity Federation replaces them with short-lived tokens. It covers SPIFFE and Kubernetes service tokens as workload identities, then demonstrates a Quarkus LangChain4j app using SPIFFE-issued JWTs with Anthropic WIF.","timeSlots":[],"title":"Say Goodbye to LLM API keys with Workload Identity Federation","totalFavourites":2,"track":{"id":1255,"name":"Security, Trust & Compliance","description":"Guardrails, prompt injection defence, model governance, and supply-chain security.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-surveillance-camera.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Vidocq, an open source implementation of the Jakarta EE Core Profile and MicroProfile, written in pure Java, with zero external dependencies and validated by 5,650 official TCK tests started as an experiment a few month ago by checking if a coding agent with detailed specs and TCKs could build a complte Java stack from scratch. <br><br>A few month later, here we are, a functional stack with no less than15 independent modules covering the entire Core Profile and MicroProfile ! Join me in this exciting live coding session where I will introduce you to Vidocq by building from scratch a complete application using most of the available modules. <br><br>No slides, just live &quot;human&quot; coding and maybe a bit of vibe coding for the 5 last minutes. And the end of the session, my goal is to give you the appetite to try out this stack and helping promoting this exciting European sovereign project ! ","fieldGroup":null,"fieldGroupValues":[],"id":22933,"keywords":[{"name":"vidocq"},{"name":"vibecoding"},{"name":"microprofile"},{"name":"jakartaee"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":30,"freeTickets":2,"id":957,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Tools-in-Action","pause":false,"scheduleInSmallRoom":false,"slug":"tia30"},"speakers":[{"anonymizedBio":null,"bio":"Sébastien Blanc is a Passion-Driven-Developer with one primary goal : Make the Developers Happy. He likes to share his passion by giving talks that are pragmatic, fun and focused on live coding.","blueskyUsername":"sebi2706.bsky.social","company":"SCIAM","countryName":"France","firstName":"Sebastien","fullName":"Sebastien Blanc","id":21521,"imageUrl":"https://lh3.googleusercontent.com/a-/AOh14GghdlsQf-LeH_np8EgyP0zMkqdtdA3aeHvPYsYOag=s96-c","lastName":"Blanc","linkedInUsername":"sébastien-blanc-08a73b1","mastodonUsername":"","twitterHandle":"sebi2706"}],"summary":"Vidocq is an open-source, pure Java implementation of Jakarta EE Core Profile and MicroProfile with zero external dependencies, validated by 5,650 TCK tests. This live coding session will build a complete application from scratch, showcase its 15 modules, and promote this European sovereign Java stack.","timeSlots":[],"title":"30 minutes to build your first Vidocq app, the 100% European Sovereign Java stack with zero external dependencies","totalFavourites":6,"track":{"id":2754,"name":"Java Language & Platform","description":"Project Loom, Leyden, Valhalla, Panama, and the ever evolving JVM.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-coffee-mug.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"Shipping code is good. Shipping a new feature without breaking the rest of the system is even better!<br><br>Every release today brings the risk of regressions or bad interactions between existing and new functionality. And what about deploying to only a subset of users? That’s even trickier.<br><br>Feature flagging decouples code deployment from feature activation, allowing you to turn blocks on or off at runtime without redeploying.<br><br>Fortunately, this practice has been growing with open‑source tools and solid engineering habits. However, beyond simple if‑then‑else, most available solutions are proprietary, heavy or costly to set up.<br><br>OpenFeature, a CNCF project, offers an open specification for unified feature flagging, usable both server‑ and client‑side regardless of the backing store.<br><br>In this workshop we’ll add a new feature to an existing Java/Angular application and drive its activation through feature flags. Along the way we’ll cover key topics: error handling, A/B testing, progressive rollouts, targeting and observability.<br><br>By the end, you’ll know how to deliver faster, safer and with confidence.","fieldGroup":null,"fieldGroupValues":[],"id":10022,"keywords":[{"name":"observability"},{"name":"rollouts"},{"name":"openfeature"},{"name":"feature-flagging"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#00FF00","description":null,"dinerInvite":true,"duration":180,"freeTickets":2,"id":968,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":2,"name":"Hands-on Lab","pause":false,"scheduleInSmallRoom":true,"slug":"lab18"},"speakers":[{"anonymizedBio":null,"bio":"With over two decades of experience as a seasoned software architect, I am fueled by a passion for technology, cloud computing, and software development. Throughout my career, I have designed, built, and managed systems of varying scales across a diverse range of industries, including insurance, financial services, and mobility.<br><br>I take great pleasure in sharing my insights and experiences with others, whether by teaching, speaking at conferences, organizing hands-on workshops, or writing articles. By engaging with the community, I aim to inspire and provide practical insights drawn from my hands-on experience.","blueskyUsername":"touret.info","company":"Magellan","countryName":"France","firstName":"Alexandre","fullName":"Alexandre Touret","id":3949,"imageUrl":"https://lh3.googleusercontent.com/a-/AOh14Gi-vA-Ux4ew98kunpGudWlNMR_Olk594JYXJb_I9Q=s96-c","lastName":"Touret","linkedInUsername":"atouret","mastodonUsername":"https://piaille.fr/@alexandre","twitterHandle":null},{"anonymizedBio":null,"bio":"<br>https://twitter.com/<br>I am a Senior Cloud Engineer at Magellan with over 15 years of experience in software architecture, ci/cd, infrastructure, project management, and teaching. I build our platform engineering and software factories, whether on private or public Cloud. I have expertise in cloud platforms, Kubernetes, and innovative project management, with a strong background in R&amp;D and production projects. <br>I also teach Java and cloud Transformation at several french universities.<br><br>Finally, I have a personal blog [here](https://blog.malkav30.ovh/), where I write about Java, Kubernetes and cloud technologies.<br>","blueskyUsername":"malkav30.bsky.social","company":"Magellan","countryName":"France","firstName":"Philippe","fullName":"Philippe Duval","id":10157,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-d9d1d5b7-5289-458c-86fb-22499919dc5f.jpg","lastName":"Duval","linkedInUsername":"phduval","mastodonUsername":"","twitterHandle":"malkav30"}],"summary":"This workshop shows how to add a feature to a Java/Angular app using feature flags with OpenFeature. It covers safe releases, error handling, A/B testing, progressive rollouts, targeting, and observability—helping teams decouple deployment from activation and ship faster with less risk.","timeSlots":[],"title":"From code to control: master deployments with Feature Flagging and OpenFeature","totalFavourites":8,"track":{"id":1252,"name":"Architecture & Modernization","description":"Designing for agentic workflows, event-driven systems, and legacy transformation.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-blockchain.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"Staying up to date with Modern Java can feel overwhelming. If you don’t have any experience with recent Java versions (or at all), features like Structured Concurrency or Stream Gatherers might sound exciting, but also scary: “How do I even get started with that?”<br><br>Fear not! In this deep dive Marit and Piotr will take their time to explain and demo the new exciting things and also show you how to use them in your IDE, so that the next day you can start having fun and profit with modern Java in your favorite tools on your own.<br><br>As a bonus you’ll also see how to improve your IDEA-fu and understand vector search with multi-modal (text &amp; images) models.","fieldGroup":null,"fieldGroupValues":[],"id":9752,"keywords":[{"name":"java"},{"name":"structuredconcurrency"},{"name":"stream"},{"name":"ide"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":180,"freeTickets":2,"id":959,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Deep Dive","pause":false,"scheduleInSmallRoom":false,"slug":"deep180"},"speakers":[{"anonymizedBio":null,"bio":"Marit van Dijk is a Java Champion and Developer Advocate at JetBrains with over 20 years of software development experience. She’s passionate about building great software with great people, and making developers’ lives easier.<br>Marit regularly presents at international conferences and shares her expertise through webinars, podcasts, blog posts, videos, and tutorials. She’s also a contributor to the book “<a href=\"https://www.oreilly.com/library/view/97-things-every/9781491952689/\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"background-color: transparent; color: rgb(0, 122, 204);\">97 Things Every Java Programmer Should Know</a>” (O’Reilly Media).","blueskyUsername":"maritvandijk.bsky.social","company":"JetBrains","countryName":"Netherlands","firstName":"Marit","fullName":"Marit van Dijk","id":3913,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-d8bef2fa-e65f-48a9-94b5-ffe3aba590a7.jpg","lastName":"van Dijk","linkedInUsername":"maritvandijk","mastodonUsername":"https://mastodon.social/@maritvandijk","twitterHandle":"MaritvanDijk77"},{"anonymizedBio":null,"bio":"Notorious engineer at work and after hours, tracing meanders of the art of software engineering. Remote Software Gardener, mostly working in web-oriented Java gardens. Java Champion. Docker Captain. Testcontainers Champion. Programming usually in Java (since 1.3), Scala and Go, but in other languages too. Fan of agility, seen mostly as choosing the right tools and approaches after asking the right questions. Developer, trainer and conference speaker. In his talks, Piotr covers not only hardcore Java but also software architecture, computer security, and soft-skills.","blueskyUsername":"piotrprz.bsky.social","company":"Elastic","countryName":"Poland","firstName":"Piotr","fullName":"Piotr Przybyl","id":16384,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-378903c1-6e22-40fd-89cd-46195162ee5a.jpg","lastName":"Przybyl","linkedInUsername":"piotrprzybyl","mastodonUsername":"https://mstdn.social/@piotrprz","twitterHandle":"piotrprz"}],"summary":"This session introduces modern Java features like Structured Concurrency and Stream Gatherers, making them approachable for beginners and experienced developers alike. Marit and Piotr will explain the concepts and demonstrate how to use them in your IDE, helping you confidently start using modern Java tools.","timeSlots":[],"title":"Learning modern Java the playful way","totalFavourites":21,"track":{"id":2754,"name":"Java Language & Platform","description":"Project Loom, Leyden, Valhalla, Panama, and the ever evolving JVM.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-coffee-mug.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Getting a generative AI prototype to impress a demo audience is easy. Getting it to behave reliably in production is another story. In production, you don&#39;t control what users ask or what the model answers. That&#39;s not a bug, that&#39;s the whole point of using LLMs. But it is also what makes evaluation genuinely hard, and what separates a convincing proof of concept from a trustworthy production system.<br><br>This session tackles the core paradox of building with large language models: how do you harness their creativity while maintaining control over their outputs? We will use a RAG-based chatbot as our running example, a real-world case where you have to guarantee output quality without ever controlling what users actually ask, and where linguistic fluency and factual accuracy constantly pull in opposite directions, to show what a complete, reproducible evaluation pipeline actually looks like in practice.<br><br>Along the way, we will cover why traditional metrics fall short, how to use LLMs as judges and where that approach quietly fails, when human evaluation is non-negotiable, and how to set up continuous monitoring to catch drift before your users do.<br><br>You will leave with practical frameworks and a clear methodology to make evaluation a constant driver of development, from the first prototype to the last production release.","fieldGroup":null,"fieldGroupValues":[],"id":10016,"keywords":[{"name":"rag"},{"name":"llm"},{"name":"generativeai"},{"name":"evaluation"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":null,"description":null,"dinerInvite":true,"duration":40,"freeTickets":1,"id":5151,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":null,"name":"Lunch Talk","pause":false,"scheduleInSmallRoom":false,"slug":"lunch-talk"},"speakers":[{"anonymizedBio":null,"bio":"Erin Pacquetet is a Senior AI and Data Scientist at SCIAM, where she designs, develops, and deploys production-grade AI products.<br>At the intersection of linguistics and computer science, she brings a creative, human-centered approach to hard engineering problems, translating product challenges into robust, scalable AI architectures that work for both technical teams and business stakeholders.<br>Her expertise spans prompt design and optimization, advanced data pipeline management, model evaluation, and the integration of industrial-grade AI systems.<br>Beyond her industry work, Erin is an active researcher and community contributor. She regularly speaks at meetups and conferences on topics including AI model analysis, pragmatic AI integration in software development, and human–machine interaction through language.","blueskyUsername":"","company":"SCIAM","countryName":"France","firstName":"Erin","fullName":"Erin Pacquetet","id":8657,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-221944f9-cdfb-40ed-93c6-0c8a396d106e.jpg","lastName":"Pacquetet","linkedInUsername":"erinpacquetet","mastodonUsername":"","twitterHandle":""}],"summary":"This session explores how to evaluate generative AI systems reliably despite their unpredictability. Using a RAG chatbot case study, it covers adapting metrics for accuracy, coherence, and business value; the limits of traditional and LLM-as-a-judge methods; the role of human review; and continuous monitoring for drift.","timeSlots":[],"title":"Measuring the Unmeasurable: Evaluating Generative AI in Practice","totalFavourites":12,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Last year at Devoxx, we introduced the first version of LangChain4j&#39;s agentic framework and explored the core patterns behind agentic AI systems.<br><br>Since then, real-world usage, community feedback, and a lot of experimentation have taught us that production-ready agentic systems need more than a fixed set of predefined patterns. Different use cases need different trade-offs, and a predefined list can only take you so far.<br><br>In this session, we&#39;ll show how LangChain4j&#39;s agentic support has evolved. We have moved toward a more flexible orchestration model that lets developers compose their own strategies, while also allowing us to grow the library of built-in patterns. We will demonstrate in practice how these new patterns work discussing their respective pros and cons and fields of applicability.<br><br>We&#39;ll also cover the operational capabilities added to the framework to make these workloads production-ready. You&#39;ll see how to observe and trace agent execution, persist state, recover long-running workflows after failures, and handle human-in-the-loop pauses without losing control of the process.<br><br>Join us as we demonstrate these new features along with their trade-offs, and learn what it takes to build robust, production-ready agentic systems.","fieldGroup":null,"fieldGroupValues":[],"id":7018,"keywords":[{"name":"observability"},{"name":"agentic"},{"name":"orchestration"},{"name":"langchain4j"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Mario is a senior principal software engineer at IBM working as Drools project lead. Among his interests there are also high performance systems and generative AI, being an active contributor of widely adopted projects like Quarkus and LangChain4j. He is also a Java Champion, the JUG Milano coordinator, a frequent speaker and the co-author of &quot;Modern Java in Action&quot; published by Manning.","blueskyUsername":null,"company":"IBM","countryName":"Italy","firstName":"Mario","fullName":"Mario Fusco","id":3932,"imageUrl":"https://lh3.googleusercontent.com/a-/AOh14GinuLQCwL67BBgfGsiWRl3mu3Ya0TbDffhYFiXX=s96-c","lastName":"Fusco","linkedInUsername":"mario-fusco-3467213","mastodonUsername":null,"twitterHandle":"mariofusco"},{"anonymizedBio":null,"bio":"Kevin Dubois is a software architect and platform engineer with a career spanning over 20 years. He is often featured as a keynote speaker at conferences around the world where he shares his experience and knowledge about cloud native &amp; AI software development, developer experience, open source and Java. Kevin is also an author and Java Champion. He currently works as a Senior Principal Developer Advocate at IBM, and is  Technical Lead for the CNCF Developer Experience Technical Advisory Group as well as an ambassador for the Agentic AI Foundation.","blueskyUsername":"kevindubois.com","company":"IBM","countryName":"Switzerland","firstName":"Kevin","fullName":"Kevin Dubois","id":5843,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocInnMfs42NN14UEEtFboGAF5baXQdsTFdbDo_ZuR1DADFHUONPEfA=s96-c","lastName":"Dubois","linkedInUsername":"kevindubois","mastodonUsername":"https://mastodon.social/@kevindubois","twitterHandle":"kevindubois"}],"summary":"LangChain4j’s agentic framework has evolved from fixed patterns to flexible orchestration, letting developers compose strategies for different use cases. The session covers new built-in patterns, their trade-offs, and production features like tracing, state persistence, failure recovery, and human-in-the-loop pauses.","timeSlots":[],"title":"A Year of Agentic AI Evolution: Lessons Learned Building Production-grade Agentic Systems","totalFavourites":29,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Most organizations adopt AI with an efficiency promise: faster delivery, leaner processes, fewer costs, more automation. That is useful — but it is only one possible game.<br><br>There is a second path: using AI to increase customer value. Better products, smarter services, more relevant experiences, faster learning from real usage, and stronger relationships with users. The problem is that these two paths often require different rules:<br><br>Efficiency asks: How can we deliver the same thing faster and cheaper? <br>Customer value asks: What can we now make possible that was impossible before?<br><br>In this session, we will explore the strategic choice behind AI adoption. Are we using AI to optimize existing processes, or to redesign the value we create? We will look at common traps: automating broken workflows, measuring productivity instead of impact, treating developers as cost factors, and accelerating delivery without improving user outcomes.<br>Participants will learn how to distinguish efficiency-driven AI from value-driven AI, how hidden metrics shape AI adoption, and how teams can ask better questions before introducing new tools, agents, or automation.<br><br>This is not a talk about specific AI tools. It is a conversation about the game we design around AI: the incentives, feedback loops, roles, metrics, and customer value assumptions that determine whether AI makes software merely cheaper — or genuinely better.<br><br>Target audience: anyone involved in AI adoption, software delivery, or product strategy.","fieldGroup":null,"fieldGroupValues":[],"id":17751,"keywords":[{"name":"efficiency"},{"name":"value"},{"name":"ai"},{"name":"automation"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":180,"freeTickets":2,"id":959,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Deep Dive","pause":false,"scheduleInSmallRoom":false,"slug":"deep180"},"speakers":[{"anonymizedBio":null,"bio":"<blockquote><strong>Dr. Miriam Sasse</strong> is Lead Agile Transformation &amp; Organizational Design at <strong>S&amp;N Group</strong>, where she helps organizations navigate digital transformation and Artificial Intelligence. Her work bridges software engineering, systems thinking, organizational design, and game design. She holds a PhD in Machine Learning for manufacturing systems and is the author of <em>LEVEL UP!</em>, a book exploring what software teams, leaders, and organizations can learn from professional game designers. Miriam is a frequent international speaker known for interactive talks that challenge conventional thinking and inspire new perspectives on leadership, collaboration, and AI.</blockquote><h2></h2>","blueskyUsername":null,"company":"S&N Invent","countryName":"Germany","firstName":"Miriam","fullName":"Miriam Sasse","id":16386,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-e189329b-6677-4bc7-990c-87b03871e01b.jpg","lastName":"Sasse","linkedInUsername":"dr-miriam-sasse","mastodonUsername":null,"twitterHandle":null}],"summary":"This session examines two AI adoption strategies: efficiency gains or customer value creation. It explores how incentives, metrics, and workflows can lead teams to automate broken processes or improve outcomes. Participants will learn to distinguish cost-cutting AI from value-driven AI and ask better strategic questions.","timeSlots":[],"title":"Cheaper or Better? The Strategic Choice Behind AI Adoption","totalFavourites":10,"track":{"id":2758,"name":"Mind the Geek","description":"Developer candy: stuff we want to know about but dont (generally) at work, Robotics, biological computing, cybernetics, AI, new toys, tomorrows world","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-robot-arm.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"AI agents don&#39;t just trust MCP servers. They trust Skills too. Both are attack surfaces, yet most teams treat neither as part of the same trust model.<br><br>In this talk, we introduce toxic flows: trust paths through an agent stack where tool descriptions, MCP responses, and Skill definitions can leak sensitive context, manipulate agent decisions, and trigger unintended actions without the model violating a single instruction. We demonstrate this live.<br><br>This session is not about adding authentication or wrapping everything in TLS. It&#39;s about understanding how trust failures emerge, how they mirror familiar software risks like dependency confusion and unsafe deserialization, and how to design MCP servers and Skill integrations that reduce trust, contain blast radius, and keep agent systems defensible.<br><br>Attendees will leave with a practical framework for identifying trust boundaries, evaluating agent integrations, and hardening their AI stack against toxic flows.<br>","fieldGroup":null,"fieldGroupValues":[],"id":9035,"keywords":[{"name":"deserialization"},{"name":"trust"},{"name":"mcp"},{"name":"skills"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Staff Developer Advocate for Snyk, Java Champion, Oracle Ace Pro, and Software Engineer with over a decade of hands-on experience in creating and maintaining software. He is passionate about Java, (Pure) Functional Programming and Cybersecurity. Brian is a JUG leader for the Virtual JUG and the NLJUG. He also co-leads the DevSecCon community and is a community manager for Foojay. He is a regular international speaker on mostly Java-related conferences like JavaOne, Devnexus, Devoxx, Jfokus, JavaZone and many more. Besides all that, Brian is a military reserve for the Royal Netherlands Air Force and a Taekwondo Master / Teacher.","blueskyUsername":"brianvermeer.nl","company":"Snyk","countryName":"Netherlands","firstName":"Brian","fullName":"Brian Vermeer","id":8695,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocIVtHtowJv_NiNRnihOsjh4F37Gwk5jjlcoLoxADz1WPzaLlDTS=s96-c","lastName":"Vermeer","linkedInUsername":"brianvermeer","mastodonUsername":"","twitterHandle":"brianverm"}],"summary":"This talk introduces “toxic flows” in AI agent stacks: trust paths through MCP servers and Skills that can leak context, manipulate decisions, and trigger unintended actions. It shows how trust failures arise, parallels familiar software risks, and offers a framework for identifying boundaries and hardening agent integrations.","timeSlots":[],"title":"Toxic Flows in MCP Servers and Skills: What Your Agent Blindly Trusts","totalFavourites":7,"track":{"id":1255,"name":"Security, Trust & Compliance","description":"Guardrails, prompt injection defence, model governance, and supply-chain security.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-surveillance-camera.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"What happens when an organization grows from a few co-founders into 10,000 people?<br><br>In a big organization, the developer experience isn&#39;t something you sit down and design. It&#39;s the sum of countless small changes, layered year after year. It emerges slowly, pulled in different directions by three forces: <br><ul><li>the dead weight of history, baked into bureaucratic processes and controls; </li><li>the endless transformation projects that promise heaven but just swap one mess for another; </li><li>and the developers stuck in the middle, bearing the pressure. </li></ul><p class=\"ql-indent-1\"><br>Through real-life scenarios, we&#39;ll show how small changes to implementation, not grand top-down strategy, are often what make a developer&#39;s life easier.<br><br><strong style=\"color: rgb(0, 0, 0);\">Key Takeaways:</strong><br><ul><li>How developer experience grows alongside an organization, from a team of 5 to 10,000+.</li><li>How history, transformation efforts, and developers themselves each leave their mark.</li><li>What internal developer communities can do to shift things and how, even as one developer, you can change the details for the greater good.</li></ul>","fieldGroup":null,"fieldGroupValues":[],"id":7022,"keywords":[{"name":"bureaucracy"},{"name":"developer experience"},{"name":"internal tools"},{"name":"scalability"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Makan Sepehrifar is a software architect who is interested in how people think and behave in organizations. He sees software architecture as a craft and believes that every challenge has both a technical side and a social side, and both need attention at the same time. Coming from a strong developer background, he has led many teams across different domains and organizations, always working to connect technology with human needs and team dynamics.<br>He is passionate about the future of Developer Experience and how Generative AI and Agentic AI are reshaping the way developers work. Makan focuses on how these technologies can improve developer satisfaction and help teams become more adaptive and effective. He is a public speaker on Developer Experience practices and AI in this space, and he has been part of several Generative AI adoption teams in different companies, helping them use AI in a practical and effective way.","blueskyUsername":"makan1869.bsky.social","company":"Productboard","countryName":"Netherlands","firstName":"Makan","fullName":"Makan Sepehrifar","id":5847,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-68014c00-8dd0-4467-9ac6-f205258d440d.jpg","lastName":"Sepehrifar","linkedInUsername":"makan1869","mastodonUsername":"","twitterHandle":""},{"anonymizedBio":null,"bio":"Soroosh is a software engineer and software architecture enthusiast, passionate about building simple but impactful solutions. With over 15 years of experience in diverse domains, including Telecom, Media &amp; Entertainment, and E-Commerce. He has worked with small startups and large enterprises serving 80 million active subscribers. Currently working as a Solution Architect at Rabobank. Soroosh strongly believes in the power of collaborative learning and enjoys sharing his experiences and insights with other developers.","blueskyUsername":null,"company":"Rabobank","countryName":"Netherlands","firstName":"Soroosh","fullName":"Soroosh Khodami","id":8669,"imageUrl":"https://lh3.googleusercontent.com/a/AAcHTtdOw1DaVsLzC-GyXIj6Db1K0D66F-cMGH5gQp9I0Q=s96-c","lastName":"Khodami","linkedInUsername":"sorooshkhodami","mastodonUsername":null,"twitterHandle":"sorooshkh"}],"summary":"This talk explores how developer experience deteriorates as organizations scale, creating bureaucratic friction and outdated internal tools. It argues that copying DevEx models from companies like Google or Netflix is misguided, and offers strategies for engineers to shape and resist tool-driven bureaucracy.","timeSlots":[],"title":"Emergent DevEx: The Good, the Bad, and the Legacy","totalFavourites":7,"track":{"id":1253,"name":"People, Practices & Career","description":"Leading teams, engineering culture, and career resilience.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-deepfake-ai.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"For almost three years now John has been building private (local, shared server, private data room and private cloud) systems for his customers, mostly financial institutions, large banks, but also legal, medical and government work. Most of these organisations simply can&#39;t use the frontier models, even if hosted in the EU. It&#39;s not just cost, it&#39;s the need for long-term support, SLAs, total privacy, ownership, accountability, governance, repeatability, the list goes on... There&#39;s Bedrock and Vertex from Amazon and Google, and companies like RunPod with EU instances, but renting 24/7 costs roughly half the hardware&#39;s purchase price every month.<br><br>For an office of about 10–50 people, not coders, a small redundant cluster of Mac Minis or Studios, NVIDIA DGX Sparks or even both are perfect for the job, dedicated or shared. John will start with setting up the machines, what needs networking and what doesn&#39;t, which models work best, adding tools and access to local data feeds, even private ones. He&#39;ll also cover KV-cache loading from SSD for near-instant document access to replace RAG. These models can code but that&#39;s not the main goal here, it&#39;s for private internal and customer data.<br><br>This will be a technical talk but you will walk away with enough knowledge to start replacing your team&#39;s dependence on OpenAI, Anthropic and other frontier models. Open-weight models all the way.<br>","fieldGroup":null,"fieldGroupValues":[],"id":27453,"keywords":[{"name":"local"},{"name":"governance"},{"name":"models"},{"name":"privacy"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"After a degree in Astrophysics at UCL John started in hardware then assembler, C, C++ and later Java. Almost exclusively in finance he ran FX at Paribas was a global chief architect at JP Morgan, BNP Paribas and VISA. John has co-founded four successful startups since 2000, selling one of them twice to Nasdaq &amp; LSE listed companies. After co-founding Velo Payments with the former president of VISA John has spun off the AI company Incept5. John has co-authored several Java books and is a frequent speaker at technical and banking conferences around the world. He is married to a French wife and has three boys in their 20s.","blueskyUsername":"","company":"Incept5","countryName":"United Kingdom","firstName":"John","fullName":"John Davies","id":27402,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-fbcc8003-58f5-406b-9d2c-d9bbecac2d4d.jpg","lastName":"Davies","linkedInUsername":"jdavies","mastodonUsername":"","twitterHandle":"jtdavies"}],"summary":"A technical talk on building private, local AI systems for regulated organizations using open-weight models. It covers hardware choices, networking, model selection, private data access, and fast document retrieval, helping small teams reduce dependence on frontier model providers while ensuring privacy, governance, and long-term support.","timeSlots":[],"title":"Build a private cluster for the office","totalFavourites":1,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Migrating a banking mainframe to the cloud under fluctuating security regulations in three months seemed like an impossible mission. AI (agents, MCP tools) was the force multiplier that made it possible, but it demanded a paradigm shift. This session dissects the evolution from the illusion of vibe coding—generating code through fluid conversations—to the rigorous discipline of harness engineering.<br><br>When AI writes the code, software craftsmanship evolves. The focus is no longer on syntax, but on building safety nets. We will explore how to tame automated code generation in hostile and highly regulated environments by building relentless harnesses: Spec-Driven Development, evolutionary pipelines, and continuous validation.<br><br>Key Points<br>Evolution of Craftsmanship: The shift from typing code to orchestrating, limiting, and auditing systems generated by multiple sub-agents.<br><br>Harness Building: Using extreme testing (integration, test containers, environment simulation) to contain and certify the behavior of generated code.<br><br>Spec-Driven Development: The specification as a single, unbreakable contract between business, security, and AI agents.<br><br>Radical Pragmatism: How to maintain agility and design principles when the rules of the regulated environment change daily.<br>","fieldGroup":null,"fieldGroupValues":[],"id":16414,"keywords":[{"name":"specification"},{"name":"ai"},{"name":"validation"},{"name":"harnesses"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Senior Solution Architect | Designing Scalable Systems &amp; Leading Cross-Team Delivery at GFT | CTO Office | Software Crafter Barcelona leader | Barcelona JUG Leader","blueskyUsername":"anyulled.bsky.social","company":"GFT","countryName":"Spain","firstName":"Anyul","fullName":"Anyul Rivas","id":16361,"imageUrl":"https://lh3.googleusercontent.com/a-/AFdZuco54-nbk6MLvqBg8AALCdJ63k0A6GKL0rnaPhQXAPY=s96-c","lastName":"Rivas","linkedInUsername":"anyulled","mastodonUsername":"","twitterHandle":"anyulled"}],"summary":"AI-enabled migration of a banking mainframe to the cloud required a shift from “vibe coding” to “harness engineering.” The talk shows how to control AI-generated code in regulated environments through spec-driven development, evolutionary pipelines, and continuous validation, balancing agility, safety, and changing security rules.","timeSlots":[],"title":"From vibe coding to harness engineering: modernizing a regulated environment with AI","totalFavourites":16,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"The industry is rapidly introducing agentic services that are accelerating the arrival of the &quot;Agentic Web&quot;. Yet adoption is still bottlenecked by the lack of user trust. Users are understandably afraid to grant remote AI agents access to their private data or authorization tokens. To overcome this, we need robust solutions that empower all developers to create agents that users can trust.<br><br>In this session, we introduce a comprehensive framework for building the Trusted Agent Ecosystem. By leveraging Confidential Computing and Binary Transparency, we provide verifiable trust across the entire AI stack: securing MCP tools, model inference and remote agents connected via A2A. We will present our open-source implementation of the framework that leverages verifiable WebAssembly sandboxes and Confidential GPUs to build trusted agentic services.","fieldGroup":null,"fieldGroupValues":[],"id":17783,"keywords":[{"name":"agentic"},{"name":"trusted"},{"name":"binarytransparency"},{"name":"confidentialcomputing"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":30,"freeTickets":2,"id":957,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Tools-in-Action","pause":false,"scheduleInSmallRoom":false,"slug":"tia30"},"speakers":[{"anonymizedBio":null,"bio":"Ivan Petrov is a Senior Software Engineer at Google DeepMind who is working on security and privacy for the agentic ecosystem. He also holds a PhD from Moscow State University, where he focused on intrusion detection systems and software-defined networking.","blueskyUsername":"","company":"Google DeepMind","countryName":"United Kingdom","firstName":"Ivan","fullName":"Ivan Petrov","id":14656,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-8874cc9a-8b3f-4c89-98ec-b05f6ea7c89e.jpg","lastName":"Petrov","linkedInUsername":"ipetr0v","mastodonUsername":"","twitterHandle":""},{"anonymizedBio":null,"bio":"Patrick McGrath is a Senior Software Engineer at Google DeepMind specializing in agentic security and privacy for next-generation AI systems. With a strong foundation in server-side architecture, he has engineered critical infrastructure for high-scale platforms, including Private AI Compute and Google Maps Location services. Over the past five years at Google, his work has focused on building provably private solutions that safeguard user data at a global scale.","blueskyUsername":"","company":"Google DeepMind","countryName":"United States of America","firstName":"Patrick","fullName":"Patrick McGrath","id":13554,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-cbc5a5a7-dc25-4e46-98e8-4721c606dc4f.jpg","lastName":"McGrath","linkedInUsername":"mcgrath-patrick","mastodonUsername":"","twitterHandle":""}],"summary":"The session presents a Trusted Agent Ecosystem framework to address user trust barriers in the Agentic Web. Using Confidential Computing and Binary Transparency, it secures tools, inference, and remote agents via verifiable WebAssembly sandboxes and Confidential GPUs, enabling developers to build trusted agentic services.","timeSlots":[],"title":"Building the Trusted Agent Ecosystem","totalFavourites":5,"track":{"id":1255,"name":"Security, Trust & Compliance","description":"Guardrails, prompt injection defence, model governance, and supply-chain security.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-surveillance-camera.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"Feature flags have revolutionized the software delivery lifecycle, enabling teams to decouple releases from deployments and create a more agile development process. They&#39;re often hailed as one of the key practices in modern software development—at least in theory.<br><br>However, as systems grow in complexity, so do the challenges associated with feature flagging. From supporting multiple languages and managing targeted evaluations to avoiding vendor lock-in and safely decommissioning obsolete code, what initially seems like a straightforward problem can quickly become daunting.<br><br>The OpenFeature community is tackling these challenges head-on by providing vendor-agnostic SDKs and a suite of powerful tools designed to simplify the feature flagging experience. Join me as we explore the common pitfalls of feature flagging and discover how OpenFeature can help bring the fun back into this critical aspect of software development.","fieldGroup":null,"fieldGroupValues":[],"id":22923,"keywords":[{"name":"vendor-agnostic"},{"name":"software delivery"},{"name":"feature flags"},{"name":"openfeature"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"I help teams release faster and with more confidence — through open standards, feature flagging, and the communities that make both possible.<br><br>I am a software engineer and CNCF Ambassador based in Austria, and a maintainer of OpenFeature — the CNCF vendor-neutral standard for feature flagging. I contribute across the full organisation in Java, Python, Go, and JavaScript, spanning the open standard itself, testing automation across a polyglot environment, and guiding teams and individuals in adopting OpenFeature in production.<br><br>I am passionate about developer experience, open standards, and building communities where people help each other grow. I regularly speak at conferences and mentor individuals taking their first steps in the open source world.","blueskyUsername":"aepfli.bsky.social","company":"Flagsmith","countryName":"Austria","firstName":"Simon","fullName":"Simon Schrottner","id":47051,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-6ede322c-0aa6-44f2-a5a3-d4636c24d456.jpg","lastName":"Schrottner","linkedInUsername":"aepfli","mastodonUsername":"","twitterHandle":""}],"summary":"Feature flags improve agile software delivery, but complexity grows with targeting, multi-language support, vendor lock-in, and cleanup. This talk explores common feature flag pitfalls and shows how OpenFeature’s vendor-agnostic SDKs and tools simplify flag management and make the process easier.","timeSlots":[],"title":"Fun with Flags: How OpenFeature Solves Your Feature Flag Headaches","totalFavourites":17,"track":{"id":1701,"name":"Development Practices","description":"All about Getting Stuff Done right. Methodologies, better practices, etc.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-hearts-card.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"<p fgid=\"4934\">Software development has rapidly evolved from explicit, instruction-based programming to integrating the non-deterministic reasoning capabilities of Large Language Models.<br><p fgid=\"9215\">Now, we face the next massive paradigm shift: moving from passive AI tools to Agentic AI. <br><p fgid=\"9245\"><br><p fgid=\"9223\">In this workshop, you will learn everything you need to build these autonomous systems using Java, Spring AI, the Model Context Protocol (MCP) and more. We will move beyond basic prompting to master chat memory, RAG, tool integration, and agentic patterns. Most importantly, we address the &quot;day two&quot; challenges of production: ensuring your agents are observable, secure, and reliable. By the end of the session, you will have built a multi-agent system capable of solving complex, high-level tasks. <br><p fgid=\"9259\"><br><p fgid=\"9259\">Join us and transform your applications from simple interfaces into proactive digital colleagues. ","fieldGroup":null,"fieldGroupValues":[],"id":24229,"keywords":[{"name":"agentic"},{"name":"java"},{"name":"autonomous"},{"name":"spring"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#00FF00","description":null,"dinerInvite":true,"duration":180,"freeTickets":2,"id":968,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":2,"name":"Hands-on Lab","pause":false,"scheduleInSmallRoom":true,"slug":"lab18"},"speakers":[{"anonymizedBio":null,"bio":"<p fgid=\"5163\">Timo Salm is a Principal Solutions Engineer at VMware Tanzu by Broadcom with over a decade of experience in customer-facing roles, modern applications, DevSecOps, and AI. In his roles, he ensures that the most strategic customers in the EMEA region achieve their goals with VMware Tanzu&#39;s Spring, developer platform, AI, and data products. Another essential part of his role is continuously learning through experimenting hands-on with innovations and sharing the outcomes with colleagues, customers, and the community via, for example, conferences. Before Timo joined Pivotal, which VMware and now Broadcom acquired, he worked for consulting firms in the automotive industry as a software architect and full-stack developer.","blueskyUsername":null,"company":"Broadcom","countryName":"Germany","firstName":"Timo","fullName":"Timo Salm","id":7606,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-93dfac6b-7673-4fca-81c6-aa9fb4a0c084.jpg","lastName":"Salm","linkedInUsername":"timosalm","mastodonUsername":null,"twitterHandle":"salmto"},{"anonymizedBio":null,"bio":"Sandra Ahlgrimm is a Senior Developer Advocate for GitHub at Microsoft, specializing in supporting Java Developers. With over a decade of experience as a Java developer, she brings a wealth of knowledge to her role. Sandra is passionate about containers and has recently learned to love AI.<br>As a leader in the tech community, Sandra actively contributes to the Berlin Java User Group (JUG) and the Berlin Docker MeetUp. Her expertise extends beyond coding; she focuses on LangChain4j integrations and serves as the primary point of contact for developer feedback related to Java in Visual Studio Code (VS Code) and GitHub Copilot in IntelliJ. Additionally, her interest in performance and event-driven architectures led to her involvement with native images. Therefore, Sandra represents Microsoft on the GraalVM Program Advisory Board.","blueskyUsername":"","company":"Microsoft / GitHub","countryName":"Germany","firstName":"Sandra","fullName":"Sandra Ahlgrimm","id":7617,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-055a7a76-5e5c-4ed2-a7af-f624fb91c129.jpg","lastName":"Ahlgrimm","linkedInUsername":"sandraahlgrimm","mastodonUsername":"","twitterHandle":"skriemhild"}],"summary":"This workshop teaches building autonomous agentic AI systems with Java, Spring AI, and MCP. It covers prompting, chat memory, RAG, tool integration, and agentic patterns, plus production concerns like observability, security, and reliability. Attendees will create a multi-agent system for complex tasks.","timeSlots":[],"title":"Building Autonomous AI Agents with Spring","totalFavourites":12,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Most developers know OpenAPI as the standard for describing and generating code around synchronous APIs like REST, a single spec that produces client code, server stubs, and (Swagger) docs, keeping everything originating from the same spec.<br><br>AsyncAPI brings that spec-first approach to event-driven systems: message brokers, topics, consumers and producers, described in a machine-readable definition that tooling can act on.<br><br>In this tools-in-action session, we&#39;ll use AsyncAPI to generate a working Spring Boot producer and consumer for Kafka, including the message DTOs and the API documentation straight from the spec. No hand-written boilerplate. We define the spec, generate both sides of the conversation, and watch a message flow end-to-end between them.<br><br>After this session, you&#39;ll have a clear understanding of what AsyncAPI is and how it relates to OpenAPI, how spec-first generation removes hand-written boilerplate and drift between producer, consumer, and docs, and enough hands-on familiarity with the tooling: spec structure, generator templates, to try it on your own event-driven services.","fieldGroup":null,"fieldGroupValues":[],"id":24234,"keywords":[{"name":"kafka"},{"name":"asyncapi"},{"name":"event-driven"},{"name":"openapi"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":30,"freeTickets":2,"id":957,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Tools-in-Action","pause":false,"scheduleInSmallRoom":false,"slug":"tia30"},"speakers":[{"anonymizedBio":null,"bio":"Michel Schudel is a passionate software engineer. He has over 20 years of hands-on experience in IT development, worked with a variety of languages, tools and infrastructures, ranging from Turbo Pascal monoliths running in a basement to JVM-based microservices in the cloud. During that time, he has seen the good, the bad and the ugly in development land. As a regular speaker at conferences like Devoxx and J-Fall, he takes every opportunity to share the things he learned, whether it be technical and non-technical subjects, with his peers.<br>","blueskyUsername":null,"company":"Craftsmen","countryName":"Netherlands","firstName":"Michel","fullName":"Michel Schudel","id":24169,"imageUrl":"https://lh3.googleusercontent.com/a-/AOh14GgNY5OcMk2ghQnNGYDAQBxLIE4ofeltIbvzAK_s=s96-c","lastName":"Schudel","linkedInUsername":"MichelSchudel","mastodonUsername":null,"twitterHandle":"MichelSchudel"}],"summary":"This session introduces AsyncAPI, the spec-first counterpart to OpenAPI for event-driven systems. Through a live demo, it generates a Spring Boot Kafka producer, consumer, DTOs, and docs from one AsyncAPI spec, showing how contract-first tooling eliminates boilerplate and keeps services and documentation aligned.","timeSlots":[],"title":"AsyncAPI in action: OpenAPI for event-driven applications","totalFavourites":16,"track":{"id":1252,"name":"Architecture & Modernization","description":"Designing for agentic workflows, event-driven systems, and legacy transformation.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-blockchain.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"JSON is ubiquitous in modern software, and many use cases are just too small to justify adding external dependencies.<br><br>To address these everyday use cases, a new JEP proposes a simple, incubating API for parsing, navigating, and generating JSON documents-both for Java developers and for the JDK itself.<br><br>While the Java ecosystem offers many libraries with JSON-processing capabilities, this built-in API is not intended to replace them, but rather to offer a low-friction option when an external library would be unnecessary or impractical.<br><br>In this talk, we will show how Data-Oriented Programming helps simplify the API, discuss its intended use cases, outline the design trade-offs, and demonstrate its capabilities.","fieldGroup":null,"fieldGroupValues":[],"id":23539,"keywords":[{"name":"java"},{"name":"data-oriented programming"},{"name":"api"},{"name":"json"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Viktor is a Software Architect in the Java Platform Group at Oracle.<br><br>For more than two decades, he has focused on enabling developers to solve problems with maximal productivity and maintainability.<br><br>Specializing in developer ergonomics in the realm of concurrent, parallel, and distributed programming; he has contributed to the standard libraries of several major programming languages, been involved in more than a dozen Open Source projects, and has spoken at numerous conferences and universities.","blueskyUsername":"","company":"Oracle","countryName":"Sweden","firstName":"Viktor","fullName":"Viktor Klang","id":23049,"imageUrl":"https://lh3.googleusercontent.com/a/AAcHTtdkY-Lks0gsRcvl05pqpW8-GOpvuVndojO99ZxUsSy0rgo=s96-c","lastName":"Klang","linkedInUsername":"","mastodonUsername":"","twitterHandle":""}],"summary":"A new JEP proposes a simple, incubating built-in Java API for parsing, navigating, and generating JSON for lightweight use cases where external libraries are unnecessary. The talk explains how Data-Oriented Programming shapes the API, its use cases, trade-offs, and capabilities.","timeSlots":[],"title":"Everyday JSON","totalFavourites":14,"track":{"id":2754,"name":"Java Language & Platform","description":"Project Loom, Leyden, Valhalla, Panama, and the ever evolving JVM.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-coffee-mug.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Up until a couple of years ago, I was riding the waves of the latest technologies, shipping code, and mocking the &quot;suits&quot; who spent their days writing documentation that was never read. But then, the unthinkable happened. I joined a new organization and transitioned to the dark side. I became one of them: an Enterprise Architect. Or as I like to call myself: a fake enterprise architect.<br><br>I quickly found out that my new reality meant dealing with consultants pitching one-shot solutions as the ultimate silver bullet (pun intended), and uncovering the psychology of IT by learning why technical decisions are rarely about technology. At the same time, I wanted to stay in touch with the real world where<strong> </strong>frameworks evolve and pipelines run. But how on earth do you find the time for that?<br><br>This talk is a transparent look inside my shiny new office, commonly known as the Ivory Tower. Whether you&#39;re a developer trying to challenge corporate IT decisions, an architect struggling to explain them, or you just want to make fun of enterprise architects (the real ones, that is): this session is for a broad audience, sharing lessons learned trying to bridge the gap between two worlds that should never be disconnected.<br><br><strong>Expect to walk away with:</strong><br><ul><li>Tips on how to keep your technical skills alive while moving up the corporate ladder</li><li>A look into the psychology behind IT decision-making and why it&#39;s never just about the code</li><li>How to foster real collaboration and break down the walls of the Ivory Tower</li></ul>","fieldGroup":null,"fieldGroupValues":[],"id":4100,"keywords":[{"name":"collaboration"},{"name":"psychology"},{"name":"itdecisionmaking"},{"name":"enterprisearchitecture"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":null,"description":null,"dinerInvite":true,"duration":40,"freeTickets":1,"id":5151,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":null,"name":"Lunch Talk","pause":false,"scheduleInSmallRoom":false,"slug":"lunch-talk"},"speakers":[{"anonymizedBio":null,"bio":"Robin is a software architect at Cegeka, bringing over 20 years of experience in software development. He&#39;s progressed from developer to team coach to software architect, all while avoiding any serious coffee spills. Robin&#39;s expertise includes agile software development, extreme and not-always-so-extreme programming, domain-driven design and software architecture. He&#39;s a skilled at designing and implementing enterprise-class systems. He enjoys helping organisations achieve their strategic goals, one line of code at a time, making sure their IT dreams don’t turn into digital nightmares.","blueskyUsername":"","company":"Cegeka","countryName":"Belgium","firstName":"Robin","fullName":"Robin Custers","id":5001,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-b38b2424-ab8d-420c-9791-eb71faab2fd8.jpg","lastName":"Custers","linkedInUsername":"robincusters","mastodonUsername":"","twitterHandle":""}],"summary":"A humorous talk about becoming an enterprise architect and bridging the gap between hands-on development and corporate IT decision-making. It explores the psychology behind technical choices, staying technically current while moving up, and fostering collaboration between developers and architects.","timeSlots":[],"title":"Life in the Ivory Tower: Confessions of a Former Developer Who Turned Into an Architect","totalFavourites":4,"track":{"id":1252,"name":"Architecture & Modernization","description":"Designing for agentic workflows, event-driven systems, and legacy transformation.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-blockchain.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"An engineering agent that checks GitHub pull requests sounds simple: find the open PRs, check their status and report which ones are ready to merge. But when I connected one to GitHub&#39;s MCP server, it was provided 44 tools, including seventeen that could modify the repository. Checking which open pull requests were ready to merge took nineteen tool calls and moved around 75,000 bytes of raw API responses to produce a nine-line answer.<br><br>In this live demo, we&#39;ll build and deploy an agent on Kubernetes using three open source projects (KAgent, AgentGateway, AgentRegistry), then show how to make it safer and more efficient through platform configuration rather than changes to the agent code.<br><br><strong style=\"color: rgb(29, 28, 29);\">What you will learn:</strong><br><ul><li><strong style=\"color: rgb(29, 28, 29);\">Build and ship:</strong> Use agentregistry to scaffold an agent from approved components and deploy it with kagent as a managed Kubernetes workload.</li><li><strong style=\"color: rgb(29, 28, 29);\">Cut the overhead:</strong> Use agentgateway to reduce nineteen tool calls to two and keep intermediate API responses out of the model&#39;s context.</li><li><strong style=\"color: rgb(29, 28, 29);\">Control access:</strong> Keep credentials at the gateway and apply permissions per agent, so a read-only agent is only given the tools it actually needs.</li></ul>","fieldGroup":null,"fieldGroupValues":[],"id":50105,"keywords":[{"name":"github"},{"name":"agentgateway"},{"name":"toolcalls"},{"name":"kubernetes"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"I joined Solo in May 2026 as EMEA Field CTO, working on securing and scaling agentic AI platforms for enterprises.<br><br>I co-founded DynamicOps in 2008 which spun out of Credit Suisse&#39;s R&amp;D division, where I was VP and led the original product and technical vision, and it had the bank&#39;s investment behind it. We built cloud automation for datacentre self-service, went from an internal tool to a platform other financial institutions ran, grew to 120 people, and VMware acquired us in 2012. <br><br>The product became vRealize Automation. It is VCF Automation now, still a flagship in Broadcom&#39;s portfolio fourteen years later. I stayed twelve years. From 2019 to 2022 I was Global Director of Engineering for VMware Development Platform, the mandated Kubernetes platform for every VMware SaaS product. I built that organisation from zero to 70+ people across nine countries, covering engineering, SRE, architecture, product and programme management, running nine production regions plus US GovCloud against a 99.99% uptime commitment.<br><br>A lot of that time went on compliance. We codified more than a hundred controls directly into Kubernetes, so the platform enforced them continuously rather than being checked after the fact. That covered FedRAMP High, IL5 and IL6, PCI, HIPAA, ISO 27001, GDPR, ISAP and IRAP, and it is what let VMware sell into US government. The same team built the Kafka platform, Strimzi on Kubernetes, which became the mandated Kafka service across the company and carried over 80% of its consumption at more than 8 GB/s.<br><br>For my last two years I moved back into an engineering role. As a Staff 2 engineer at Broadcom I pitched and won approval for moving twenty years of VMware appliances, vCenter, NSX and Automation, onto one Kubernetes-native stack, then built the workflow engine and the task-management operator that deploy them. I left in March 2026.<br><br>I write Go, Java, Python and TypeScript, and I still prefer to be hands on. Mostly Kubernetes internals, operators and controllers, platform engineering, observability, SRE and compliance. I was running Istio in production well before I joined Solo.<br>","blueskyUsername":"","company":"Solo.io","countryName":"United Kingdom","firstName":"Tom","fullName":"Tom O'Rourke","id":50055,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-68f77b4e-a370-4e43-af9f-efe097ac6679.jpg","lastName":"O'Rourke","linkedInUsername":"tom-o-rourke-7404b6","mastodonUsername":"","twitterHandle":""},{"anonymizedBio":null,"bio":"<strong>Ep Heijting is an experienced technology leader focused on cloud-native and AI infrastructure. He has spent his career helping enterprises adopt emerging technologies across API management, Kubernetes, service mesh and application networking, with previous roles at Apigee/Google Cloud, Kong and DataStax. Today at Solo.io his focus is on the next generation of enterprise infrastructure for AI agents, including AI gateways, MCP, agent connectivity, security and governance.</strong> <br><h3></h3>","blueskyUsername":"","company":"Solo.io","countryName":"Netherlands","firstName":"Ep","fullName":"Ep Heijting","id":50057,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocIPE41XoA02i7X2mB7-jUS0ayWC-uVuz0jWIQqHaDeLGRoxt4SH=s96-c","lastName":"Heijting","linkedInUsername":"EpHeijting","mastodonUsername":"","twitterHandle":""}],"summary":"A live demo of building and deploying a Kubernetes-based engineering agent with KAgent, AgentGateway, and AgentRegistry. It shows how platform configuration can reduce tool-call overhead, limit context exposure, and enforce least-privilege access without changing agent code.","timeSlots":[],"title":"Building, Shipping and Governing AI Agents on Kubernetes","totalFavourites":null,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"ADVANCED","description":"AI is transforming software delivery. Code can be generated, tests created, architectures sketched, and implementation options explored in minutes. Building has never been cheaper.<br>Yet many organisations are discovering an unexpected consequence: as execution accelerates, decision-making becomes the real bottleneck.<br>Drawing on consulting engagements across banking, insurance, retail, and telecommunications, this talk explores how AI is changing the economics of software delivery and why decision quality is emerging as a competitive advantage. Rather than focusing on generating code faster, I demonstrate how AI can improve discovery, architecture, and delivery conversations before implementation begins.<br>Through practical examples and live demonstrations, attendees will see how conversations can be transformed into Event Storming maps, Team Topologies views, C4 architecture diagrams, assumptions, risks, and architectural options. These techniques help teams expose hidden complexity, align stakeholders faster, and make better-informed decisions.<br><strong>Key takeaways:</strong> Understand why AI shifts the constraint from execution to judgement, learn practical techniques for AI-assisted discovery and architecture, expose risks and assumptions earlier, and balance delivery speed with architectural integrity.<br><strong>Target audience:</strong> Software architects, technical leads, senior engineers, engineering managers, enterprise architects, and technology leaders.","fieldGroup":null,"fieldGroupValues":[],"id":4086,"keywords":[{"name":"discovery"},{"name":"architecture"},{"name":"ai"},{"name":"decision-making"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Dave Sammut is a Principal Consultant and Head of Architecture (EMEA) at Equal Experts, where he helps organisations tackle complex technology, architecture, and transformation challenges. With more than 20 years of experience in software delivery, he has worked across banking, insurance, retail, telecommunications, healthcare, and public sector organisations, helping teams modernise systems, improve delivery effectiveness, and navigate large-scale change.<br>Dave specialises in bridging the gap between business strategy and technical execution through Domain-Driven Design, software architecture, Team Topologies, collaborative discovery, and modern engineering practices. His work focuses on helping organisations uncover hidden assumptions, reduce risk, and make better decisions before investing in implementation.<br>In recent years, Dave has been exploring how AI is reshaping software delivery. His work examines the growing shift from execution as the primary constraint to decision quality, judgement, and governance becoming the critical differentiators for successful teams. He regularly advises organisations on the practical application of AI across architecture, software delivery, and organisational design.<br>Alongside his consulting work, Dave is an experienced conference speaker, workshop facilitator, and former part-time radio presenter. He is known for combining real-world consulting experiences with engaging storytelling, practical examples, and interactive demonstrations that challenge conventional thinking about technology and software delivery.<br>Whether working with engineering teams, architects, or senior leaders, Dave&#39;s passion lies in helping people navigate complexity, align around shared understanding, and deliver meaningful outcomes with confidence.","blueskyUsername":"","company":"Equal Experts","countryName":"Malta","firstName":"Dave","fullName":"Dave Sammut","id":3940,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocKrgiObZlQZmkuRHWqlDAwuHgNeuknmxFB4KLe9_yQTsjK7YDc-=s96-c","lastName":"Sammut","linkedInUsername":"dave-sammut-2559453","mastodonUsername":"","twitterHandle":""},{"anonymizedBio":null,"bio":"João Rosa helps organizations unlock more value with their teams and technology. He works with executives and senior leaders to transform and evolve the operating model so that teams are prepared to thrive in a turbulent environment. He has led transformations across financial services, telco, and retail.<br><br>He is a software engineer at heart, crossing technology problems with social enterprise challenges.","blueskyUsername":null,"company":"João Rosa Consulting","countryName":"Netherlands","firstName":"João","fullName":"João Rosa","id":3943,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-791e4354-5d69-4aff-8a7c-94c975843c1a.jpg","lastName":"Rosa","linkedInUsername":"joaoasrosa","mastodonUsername":null,"twitterHandle":null}],"summary":"AI is making software delivery faster, shifting the main bottleneck from execution to decision-making. This talk shows how AI can improve discovery, architecture, and delivery conversations, turning discussions into maps, diagrams, risks, and options to expose complexity, align stakeholders, and make better decisions.","timeSlots":[],"title":"AI Made Building Cheap. Now Decisions Are the Bottleneck.","totalFavourites":13,"track":{"id":1253,"name":"People, Practices & Career","description":"Leading teams, engineering culture, and career resilience.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-deepfake-ai.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"What if your next pull request was opened by an AI agent, one that read the issue, wrote the code, ran the tests, and only pinged you when it was ready to merge?<br><br>That&#39;s how Docker&#39;s engineering team ships software today. Built on top of <strong style=\"color: rgb(0, 0, 0);\">Docker Cloud Sandboxes</strong>, the Docker Agentic Platform gives every AI agent its own isolated environment: real shell access, a live Docker daemon, git, GitHub CLI, and a JWT-scoped identity. Orchestrators spawn specialists, architect, implementer, reviewer ; that work in parallel across sandboxed boundaries, coordinating asynchronously without ever touching each other&#39;s secrets or state.<br><br>We&#39;ll walk the hard lessons (context cost, hallucinations, knowing when to keep a human in the loop), and what it takes to make autonomous agents safe and observable in production.","fieldGroup":null,"fieldGroupValues":[],"id":48301,"keywords":[{"name":"autonomy"},{"name":"ai agents"},{"name":"sandbox"},{"name":"docker"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#e89c1a","description":null,"dinerInvite":true,"duration":20,"freeTickets":2,"id":955,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Keynote","pause":false,"scheduleInSmallRoom":false,"slug":"key20"},"speakers":[{"anonymizedBio":null,"bio":"Jean-Laurent de Morlhon is SVP, GenAI Acceleration at Docker, where he focuses on making AI application and agent development simpler for developers.<br>Over more than nine years at Docker, he has held several engineering leadership roles, helping build and scale teams working on developer tools and infrastructure.<br>Today, his work focuses on GenAI developer experience, from running models locally to MCP, sandboxes and agentic workflows, with a particular interest in making emerging AI technologies practical, reliable and easy for developers to use.<br>","blueskyUsername":"","company":"Docker","countryName":"France","firstName":"Jean-Laurent","fullName":"Jean-Laurent de Morlhon","id":47852,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocKQ_A4jeRTG76_QurrAxTmBkNyMdIVg3FvYjAID2dJ1dKyF76k=s96-c","lastName":"de Morlhon","linkedInUsername":"","mastodonUsername":"","twitterHandle":""}],"summary":"Docker’s Agentic Platform enables AI agents to autonomously read issues, code, test, and prepare pull requests in isolated sandboxes with secure identities. The talk covers orchestrated specialist agents, parallel workflows, and key production lessons on cost, hallucinations, human oversight, safety, and observability.","timeSlots":[],"title":"A Fleet of AI Agents, Each in Its Own Sandbox: Inside Docker's Agentic Platform","totalFavourites":15,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"At their core, AI agents are context orchestrators — gathering information, querying models, evaluating outputs, and adapting their approach. This live-coded session takes you from <strong>Spring AI</strong> fundamentals to agentic patterns.<br>We start with the fundamentals: ChatClient essentials, context engineering, and session memory. We cover how Advisors extend the LLM execution path, including <strong>Recursive Advisors</strong> implementing the <strong>Agent Loop</strong> — the loop behind every autonomous agent — then enrich context with <strong>RAG</strong> and connect to external services via <strong>Tool Calling</strong> and <strong>MCP</strong>.<br><br>From there, we build up the agentic patterns Tool Calling and Advisors make possible:<br><ul><li><strong>Tool Search Tool</strong> — dynamic tool discovery for agents with hundreds of tools</li><li><strong>LLM-as-a-Judge</strong> — automated response evaluation in an evaluator-optimizer loop</li><li><strong>Explainable Agents</strong> — augmenting tool calls with the model&#39;s reasoning for debuggability</li><li><strong>Agent Skills</strong> — LLM-agnostic capabilities, loaded on demand</li><li><strong>Todo</strong> / structured planning — preventing &quot;lost in the middle&quot; failures</li><li><strong>AskUserQuestion</strong> — gathering requirements before acting</li><li><strong>Subagent Orchestration</strong> — delegating to specialized agents with isolated context</li><li><strong>MCP</strong>, <strong>A2A</strong>, and <strong>ACP</strong> — securing tool access, building rich MCP Apps, and connecting agents to other agents and clients</li></ul><br>You&#39;ll leave understanding how a few building blocks compose into any agentic pattern, with an early preview of what&#39;s next: <strong>durable, crash-recoverable agentic workflows in Spring AI 2.1</strong>.","fieldGroup":null,"fieldGroupValues":[],"id":17786,"keywords":[{"name":"toolcalling"},{"name":"spring ai"},{"name":"rag"},{"name":"agents"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":180,"freeTickets":2,"id":959,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Deep Dive","pause":false,"scheduleInSmallRoom":false,"slug":"deep180"},"speakers":[{"anonymizedBio":null,"bio":"Christian Tzolov is an R&amp;D Software Engineer on Broadcom&#39;s Spring team, where he leads Spring AI and is one of the maintainers of the MCP Java SDK project. He serves as an Ambassador for the Agentic AI Foundation (AAIF) and focuses on integrating AI with enterprise Java and advancing how developers build intelligent applications.","blueskyUsername":"tzolov.bsky.social","company":"Spring Team","countryName":"Netherlands","firstName":"Christian","fullName":"Christian Tzolov","id":18070,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-970401c2-a699-4f02-8855-f855f219221a.jpg","lastName":"Tzolov","linkedInUsername":"tzolov","mastodonUsername":"","twitterHandle":"christzolov"}],"summary":"This talk introduces Spring AI agents as context orchestrators, starting with ChatClient, memory, Advisors, RAG, Tool Calling, and MCP. It then builds advanced agent patterns: tool discovery, evaluation loops, explainable agents, planning, user questioning, subagents, and agent-to-agent integration, previewing Spring AI 2.1’s typed multi-step agent abstraction.","timeSlots":[],"title":"Agent Loops, Decoded: Fundamentals to Agentic Patterns in Spring AI","totalFavourites":16,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"The Day We Stopped Publishing Kafka Events from Our Order API — and Why It Strengthened Our Event-Driven Architecture<br> <br>This talk will present how we addressed the “dual write” issue we had in our Order Management solution between our database and our Kafka cluster, causing data inconsistencies and complicated error handling. <br><br>The answer ? A simplified version of the Outbox pattern—leveraging a Debezium connector to reliably decouple database writes from Kafka event publishing and using our Order table as the outbox table to simplify the solution.<br><br>This architectural shift resulted in a simpler, more robust Order API, eliminating Kafka-specific code and complex error handling. This loosely coupled architecture also offers consumer-driven business logic with easier extensibility.<br><br>Join this talk to learn how this architectural decision strengthened our event-driven architecture and discover the crucial details of configuring Debezium—including heartbeat and monitoring—to ensure stability and avoid database disk space issues.<br>","fieldGroup":null,"fieldGroupValues":[],"id":10034,"keywords":[{"name":"kafka"},{"name":"architecture"},{"name":"debezium"},{"name":"outbox"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":30,"freeTickets":2,"id":957,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Tools-in-Action","pause":false,"scheduleInSmallRoom":false,"slug":"tia30"},"speakers":[{"anonymizedBio":null,"bio":"My career began with 10 years of international IT consulting in the USA, Germany, Portugal, and Belgium. <br>I returned to France to build my IT experience further in a startup and a finance company before joining Decathlon in 2012.<br>9 years ago, after many years in management, I seized the opportunity at Decathlon to reorient my career and become a web developer. <br>Since then, I&#39;ve specialized in backend development, with a strong focus on Java and Kafka. <br>I am currently a Staff Engineer in the eCommerce domain.<br>","blueskyUsername":"","company":"Decathlon","countryName":"France","firstName":"Virginie","fullName":"Virginie Zinck","id":10165,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocKgnGLF_nn-POcnSHYpEhLDcF13X3HOj5n4DRkdD5HlBiWPbiqI=s96-c","lastName":"Zinck","linkedInUsername":"virginiez","mastodonUsername":"","twitterHandle":""}],"summary":"We solved database-Kafka dual writes in our Order API by adopting a simplified Outbox pattern with Debezium, using the Order table as the outbox. This removed Kafka-specific code, reduced errors, improved robustness, and enabled a looser, more extensible event-driven architecture with key Debezium stability practices.","timeSlots":[],"title":"The day we stopped publishing Kafka event from our API...","totalFavourites":3,"track":{"id":1252,"name":"Architecture & Modernization","description":"Designing for agentic workflows, event-driven systems, and legacy transformation.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-blockchain.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"For decades we taught software engineering through languages: Java, C#, Python, patterns, frameworks — because writing software was hard. But what if that’s no longer the hard part?<br><br>Take my son. He isn’t learning Java; he’s learning to turn ideas into products. He spins up ideas at the speed of boredom — a study companion app one week, a gaming crosshair overlay the next — shipping from idea to code to demo before the README has found its shoes.<br><br>Meanwhile I hired Reachy Mini, a real open-source desktop robot, as my junior developer. I direct it, it drives agents that code in parallel while I sleep. I’m not really a developer anymore — I’m running an agent factory with a robot foreman on my desk.<br><br>Part stand-up routine, part field report, part uncomfortable question: are we raising the last generation of developers, or the first generation of agentic builders?<br><br>We’ll explore the agentic inner loop: describe intent, provide context, let agents act, review output, tighten the spec, and loop again until something useful ships. My bet: writing software is becoming a commodity — but expertise isn’t. Architecture, systems thinking, integration, taste, validation and knowing what to build only get more valuable. The interface shifts from typing to talking, from directing code to directing agents — and yes, sometimes the robot still needs a stern code review.<br><br>Audience: developers, leads and architects who suspect their job is changing and would rather laugh about it than panic.","fieldGroup":null,"fieldGroupValues":[],"id":8156,"keywords":[{"name":"robotics"},{"name":"architecture"},{"name":"software"},{"name":"agents"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Jan Van Wassenhove is the Technical Director of the System Integrations Business Line for the BeLux region at Sopra Steria, where he drives technology solutions and services, supported by his team of architects. With a strong background in Java development, Jan has evolved into an experienced architect and project manager, with in-depth expertise in Agile methodologies.<br><br>Remarkably, he is also the initiator of “SCRUM”, a new programming language he conceived. This creation perfectly reflects his innovative mindset and constant drive to explore new technological territories — and proves, with a wink, that everyone really can become a SCRUM master… in code.<br><br>Throughout his career, he has contributed to numerous projects in both the public and private sectors, with a particular focus on banking and public administrations.","blueskyUsername":"","company":"Sopra Steria","countryName":"Belgium","firstName":"Jan","fullName":"Jan Van Wassenhove","id":7632,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-e7b52977-dc36-455d-a814-67a86c6644ab.jpg","lastName":"Van Wassenhove","linkedInUsername":"jan-van-wassenhove-9b49893","mastodonUsername":"","twitterHandle":""}],"summary":"A humorous talk on how AI agents and desktop robots may commoditize coding while increasing the value of architecture, systems thinking, and product judgment. It explores a shift from typing code to directing agents in natural language, asking whether we’re training the last generation of developers.","timeSlots":[],"title":"I Hired a Real Robot as My Junior Dev — and Now My Kids Don't Want to Learn Java Anymore","totalFavourites":12,"track":{"id":2758,"name":"Mind the Geek","description":"Developer candy: stuff we want to know about but dont (generally) at work, Robotics, biological computing, cybernetics, AI, new toys, tomorrows world","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-robot-arm.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"<strong>AI for Java, in Java.</strong><br><strong>AI sovereignty for the world&#39;s most trusted runtime.</strong><br><br>What if AI on the JVM were just one Maven dependency away? AI in a jar.<br><br>What if AI on the JVM needed no Python, no Docker containers, no native wrappers, no external processes, no HTTP requests?<br><br>What if AI on the JVM ran at native speed on plain CPUs, and sometimes even outperformed native inference engines?<br><br>What if every component of AI on the JVM, from tokenization to model formats, quantization, inference algorithms and prompt caching, were a pure-Java building block?<br><br>What if AI on the JVM could not only read and write, but also hear and see?<br><br>What if AI on the JVM were completely free, open source and built on open standards?<br><br>This talk shows how inference is built using pure Java and how to make local AI run fast on ordinary CPUs. You&#39;ll leave knowing how modern LLMs actually work under the hood, how the Vector API and quantized matrix multiplication kernels close the gap with native engines, and how to add local inference to your own Java application with a single dependency.<br><br>Come for the live demos: Gemma 4, LFM 2.5+, gpt-oss, Qwen 3.5+, Ministral 3, Granite 4.1+ and Nemotron 3+ on a vanilla JVM, at native speed. Text, audio and vision demos included.","fieldGroup":null,"fieldGroupValues":[],"id":14452,"keywords":[{"name":"java"},{"name":"sovereignty"},{"name":"ai"},{"name":"jvm"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"<strong>Alfonso² Peterssen</strong> is the founder of <strong>Quixotic AI</strong>, building an AI stack from first principles for the JVM. His work challenges the belief that modern AI has to run outside the JVM.<br>Instead of wrapping Python runtimes or stitching together external systems, he brings AI directly into the JVM, where it can run and scale as part of the platform itself.<br><br>As a former <strong>Senior Researcher</strong> on Oracle’s <strong>GraalVM</strong> team, he created <strong><em>Espresso</em></strong>, the first spec-compliant meta-circular JVM written entirely in Java.<br><br>Today, he focuses on bringing AI and the JVM together by running the same code across CPUs and accelerators and pushing computation to the hardware that can execute it best. The approach is pragmatic: stay in Java and offload to C, CUDA, Metal, HIP, OpenCL, Mojo, and beyond when it matters. The goal is simple and uncompromising: <strong>write once, accelerate everywhere</strong>.<br><br>Through projects like <strong><em>Llama3.java</em></strong> and <strong><em>Gemma4.java</em></strong>, he demonstrated that high-performance AI implementations in pure Java are possible.<br>Based in Zurich, he works at the intersection of compilers, runtime systems, and AI to redefine what’s possible on the JVM.","blueskyUsername":"mukel.bsky.social","company":"Quixotic AI","countryName":"Switzerland","firstName":"Alfonso²","fullName":"Alfonso² Peterssen","id":1802,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-f06094d8-3426-4f3c-aaf4-9e8556fdb4da.jpg","lastName":"Peterssen","linkedInUsername":"alfonso2peterssen","mastodonUsername":"","twitterHandle":"TheMukel"}],"summary":"Quixotic brings AI to Java by running models in-process as pure Java, with no Python, ONNX, or native dependencies. It keeps sensitive data inside the JVM, compiles models into fast native binaries, and enables secure, portable AI for regulated industries.","timeSlots":[],"title":"Quixotic: Pure Java Inference at Native Speed","totalFavourites":5,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"AI helps developers write new software faster. But can it also help modernize legacy applications?<br><br>In this session, Smals Research shares practical experience from real e-government projects. Through the migration of ageing Java applications from Java EE to Jakarta EE, the speakers explore how AI supports software modernization. Topics include namespace changes, deprecated APIs, outdated dependencies and complex build configurations.<br><br>The session highlights where AI genuinely accelerates migration work, where it falls short, and how teams can keep modernization efforts reliable and verifiable. Drawing on additional experience with other legacy environments, including COBOL, the speakers also share practical approaches for documenting, rewriting and maintaining legacy code with AI assistance.<br><br>Whether you&#39;re modernizing an existing application or exploring AI-assisted development, this session offers a realistic view of what AI can and cannot do today.<br><br>","fieldGroup":null,"fieldGroupValues":[],"id":49255,"keywords":[{"name":"migration"},{"name":"jakarta"},{"name":"modernization"},{"name":"legacy"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"<strong>Koen Vanderkimpen </strong>is a Computer Science Engineer and Research Consultant at Smals who bridges the gap between practical software application and AI research. He evaluates innovative cloud technologies and architectural patterns—such as Event-Driven Architecture—that help the organization build robust, scalable systems.<br>Recently, his focus has shifted to the intersection of agentic AI and legacy code, using LLM’s to &quot;time travel in the terminal&quot; and modernize outdated, critical systems. A strong believer in applied research, Koen continuously evaluates new tools and best practices, bringing a grounded approach to AI-assisted coding and architectural refactoring.<br><br>Koen works at Smals, an association of over 300 public institutions in Belgium, delivering shared IT services and acting as their joint in-house ICT organization, offering skills, best practices, economies of scale, and software re-use. For over 85 years, Smals has supported social security and healthcare institutions with innovative IT and infrastructure services.<br> <br> ","blueskyUsername":"","company":"Smals","countryName":"Belgium","firstName":"Koen","fullName":"Koen Vanderkimpen","id":49108,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-3a8f8c33-a595-4df3-b4d0-064456a44f0e.jpg","lastName":"Vanderkimpen","linkedInUsername":"koen-vanderkimpen-6b24545","mastodonUsername":"","twitterHandle":""},{"anonymizedBio":null,"bio":"<strong style=\"color: rgb(0, 0, 0);\">Wim Lambrecht</strong> is a developer, architect, builder, and lifelong learner who enjoys turning emerging technologies into practical solutions. He designs, co-creates, and develops platforms, frameworks, and modernization approaches that help organizations deliver software more effectively.<br><br>His current focus is on applying AI to real-world engineering challenges, including code migration, platform engineering, and software modernization. A strong believer in knowledge sharing, Wim continuously explores new tools, techniques, and ways of working, adapting to the rapidly evolving AI landscape while maintaining a pragmatic focus on delivering value.<br><br>Wim works at Smals, an association of over 300 public institutions in Belgium, delivering shared IT services and acting as their joint in-house ICT organization, offering skills, best practices, economies of scale, and software re-use. For over 85 years, Smals has supported social security and healthcare institutions with innovative IT and infrastructure services.<br>","blueskyUsername":"","company":"Smals","countryName":"Belgium","firstName":"Wim","fullName":"Wim Lambrecht","id":49101,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-951d4f7a-44c4-4787-9143-888af04bca95.jpg","lastName":"Lambrecht","linkedInUsername":"wim-lambrecht-16967983","mastodonUsername":"","twitterHandle":""}],"summary":"Smals Research shares practical lessons from using AI to modernize legacy software, including Java EE to Jakarta EE migrations and COBOL environments. The session shows where AI speeds up migration, where it fails, and how teams can keep modernization reliable, documented, and verifiable.","timeSlots":[],"title":"Modernizing legacy code with AI: hands-on examples & lessons learned","totalFavourites":null,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Your AI agent will follow instructions hidden in the content it reads. And you may not be able to stop it right now.<br>Indirect prompt injection is the vulnerability nobody scoped for. The agent treats a poisoned document or a tampered tool result as trusted input, and with MCP and tools attached, that input can move money, delete data, or leak a key. Most Java teams shipping agents today have never seen the attack, so they have never built the defense.<br>In 30 minutes, you will be able to do three things: reproduce an indirect injection against a Java agent, apply the mitigations that actually hold (least privilege, instruction and data separation, tool allowlists, output validation), and reason about your agent with a real threat model. All live in LangChain4j.<br>Join us and walk out able to attack your own agent before someone else does.<br><br>Key Takeaways<br><ol><li>See how an indirect prompt injection turns a helpful agent into an exfiltration path through the content it reads.</li><li>Apply the mitigations that hold: least privilege, instruction and data separation, tool allowlists, output validation.</li><li>Reason about a Java agent with a real threat model, treating every tool result as untrusted.</li></ol><br>Target Audience<br>Developers, Security Engineers, Architects<br>","fieldGroup":null,"fieldGroupValues":[],"id":21654,"keywords":[{"name":"agents"},{"name":"threat-model"},{"name":"mitigations"},{"name":"prompt-injection"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":30,"freeTickets":2,"id":957,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Tools-in-Action","pause":false,"scheduleInSmallRoom":false,"slug":"tia30"},"speakers":[{"anonymizedBio":null,"bio":"Specialized in helping Java developers efficiently build and deploy fast and reliable server-side applications, Elder has been recognized as a Java Champion and has authored six books. In his role as a Developer Advocate, he shares valuable insights and best practices at leading international events including JavaOne, The Developers Conference, QCon, Devnexus, and JCON. Elder also serves on the board of SouJava, one of the world’s largest Java User Groups. When not coding or speaking, he unwinds by playing an electric guitar, channeling the same passion into his music as he does into his programming.","blueskyUsername":"","company":"IBM","countryName":"Brazil","firstName":"Elder","fullName":"Elder Moraes","id":8671,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-ff554094-44a4-4fb1-9326-06efd32e8236.jpg","lastName":"Moraes","linkedInUsername":"eldermoraes","mastodonUsername":"","twitterHandle":"elderjava"}],"summary":"This session exposes indirect prompt injection in Java AI agents, showing how poisoned content can hijack trusted inputs and trigger harmful tool actions. In 30 minutes, attendees will learn to reproduce the attack, apply effective mitigations, and build a practical threat model in LangChain4j.","timeSlots":[],"title":"Your AI Agent Trusts Strangers. Let Me Show You.","totalFavourites":10,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"Cloud providers encrypt data at rest and in transit, but most applications still decrypt information before processing it. Homomorphic Encryption (HE) challenges this model by allowing computations to be performed directly on encrypted data: the server computes the result without ever seeing the inputs.<br>This talk introduces the fundamentals of HE, from early partially homomorphic cryptosystems to Craig Gentry&#39;s 2009 breakthrough, explaining core concepts like ciphertext noise, noise budgets, and bootstrapping in an accessible way. We&#39;ll cover how modern schemes like CKKS, BGV, and TFHE differ in what they compute efficiently, and explore practical use cases: confidential AI inference where a model produces predictions without seeing user inputs and financial services where credit scoring operates entirely on encrypted records.<br>We&#39;ll also discuss current limitations (performance overhead, ciphertext size, and developer complexity) and how hardware acceleration and compiler tooling are rapidly closing these gaps. Attendees will leave with a clear picture of where HE is practical today and where it is not, and concrete pointers to start experimenting with open-source libraries.","fieldGroup":null,"fieldGroupValues":[],"id":16401,"keywords":[{"name":"cryptography"},{"name":"homomorphic encryption"},{"name":"fully homomorphic encryption"},{"name":"confidential ai"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Andrea is a software engineer with a broad experience in several industries ranging from e-commerce to industrial automation, from public administration to Web TV / music. His interests are in algorithms, data and AI.","blueskyUsername":"","company":"","countryName":"Italy","firstName":"Andrea","fullName":"Andrea Iacono","id":16351,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocKiRDaPqgBWULLG0v-gb1k2a_Qm91MkYKsUy_4pXTRW6AsaFXi_=s96-c","lastName":"Iacono","linkedInUsername":"andreaiacono","mastodonUsername":"","twitterHandle":""}],"summary":"This talk explains Homomorphic Encryption, which enables computation on encrypted data without decryption. It covers core concepts, modern Fully Homomorphic Encryption, practical applications in confidential AI, healthcare, and finance, and current limitations such as performance, ciphertext size, and implementation complexity.","timeSlots":[],"title":"Beyond encryption at rest: computing on encrypted data","totalFavourites":9,"track":{"id":1255,"name":"Security, Trust & Compliance","description":"Guardrails, prompt injection defence, model governance, and supply-chain security.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-surveillance-camera.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Vector databases have become very popular in the AI era. Particularly the feature of finding semantically similar objects is quite useful in AI and related applications. But how does a vector database do it? How exactly does a vector database store its data so that it is able to perform a semantic search so fast?<br><br>This talk will introduce vector databases while explaining the fundamental concepts behind it. It will explain what vectors are, how are they stored, what are embedding models, indexing algorithms and similarity/distance metrics. We use Java’s Vector API to implement a simple in-memory vector database and we use Spring AI for integrating with various other vector databases.<br><br>In order to explain these concepts in simple terms, we start with simple use cases that are implemented with vector databases and then slowly increase the complexity to take it to incredibly amazing level!","fieldGroup":null,"fieldGroupValues":[],"id":24245,"keywords":[{"name":"semantic search"},{"name":"embedding models"},{"name":"indexing algorithms"},{"name":"vector databases"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Balkrishna works as an Engineering Lead at ING Bank. He is a frequent speaker at renowned tech conferences. He has passion for continuous learning and genuine desire to sharing knowledge. Although he has been working with Java for many years, he finds latest developments in Java quite exciting. He is also an Oracle ACE Associate for Java.","blueskyUsername":"balarawool.bsky.social","company":"ING Bank","countryName":"Netherlands","firstName":"Balkrishna","fullName":"Balkrishna Rawool","id":24177,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-eec7f3b9-48f4-4efd-8f9b-8e1671c757e2.jpg","lastName":"Rawool","linkedInUsername":"balkrishnarawool","mastodonUsername":"https://foojay.social/@BalaRawool","twitterHandle":"BalaRawool"}],"summary":"This talk explains vector databases, covering vectors, embeddings, indexing algorithms, and similarity metrics. It demonstrates a simple in-memory vector database using Java’s Vector API and integrates with other vector databases via Spring AI, progressing from basic use cases to advanced applications.","timeSlots":[],"title":"Making sense of vector databases","totalFavourites":9,"track":{"id":1254,"name":"Cloud Native, Data & Infrastructure","description":"Kubernetes, platform engineering, vector DBs, model serving, and GPU orchestration.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-server-settings.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Today, most of our applications are hosted in the cloud. But what if we leveraged multiple providers for a single application or platform?<br><br>The theory is attractive: cherry-picking the best services from each provider to build the ultimate architecture. The reality? Cloud providers that are &quot;more equal than others&quot; and a labyrinth of technical complexities—where network latency, fragmented data, and incompatible APIs threaten both your SLAs and your peace of mind.<br><br>In this session, we will tackle the challenge of designing a multi-cloud platform based on a real-world use case.<br><br>From defining bounded contexts to addressing production hurdles, security, and API design, we will navigate the pitfalls inherent to this architecture while highlighting essential best practices.<br><br>Finally, we will explore how a thorough understanding of customer needs and a pragmatic risk analysis can guide design choices to deliver a coherent, end-to-end vision.<br>","fieldGroup":null,"fieldGroupValues":[],"id":4097,"keywords":[{"name":"multi-cloud"},{"name":"architecture"},{"name":"security"},{"name":"latency"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"With over two decades of experience as a seasoned software architect, I am fueled by a passion for technology, cloud computing, and software development. Throughout my career, I have designed, built, and managed systems of varying scales across a diverse range of industries, including insurance, financial services, and mobility.<br><br>I take great pleasure in sharing my insights and experiences with others, whether by teaching, speaking at conferences, organizing hands-on workshops, or writing articles. By engaging with the community, I aim to inspire and provide practical insights drawn from my hands-on experience.","blueskyUsername":"touret.info","company":"Magellan","countryName":"France","firstName":"Alexandre","fullName":"Alexandre Touret","id":3949,"imageUrl":"https://lh3.googleusercontent.com/a-/AOh14Gi-vA-Ux4ew98kunpGudWlNMR_Olk594JYXJb_I9Q=s96-c","lastName":"Touret","linkedInUsername":"atouret","mastodonUsername":"https://piaille.fr/@alexandre","twitterHandle":null}],"summary":"This session explores designing a real-world multi-cloud platform, weighing the benefits of using multiple providers against challenges like latency, fragmented data, incompatible APIs, security, and SLA risks. It covers bounded contexts, production hurdles, API design, best practices, and pragmatic risk analysis to guide coherent architecture decisions.","timeSlots":[],"title":"Pragmatic multi-cloud architecture: designing for resilience and portability beyond the hype ","totalFavourites":5,"track":{"id":1254,"name":"Cloud Native, Data & Infrastructure","description":"Kubernetes, platform engineering, vector DBs, model serving, and GPU orchestration.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-server-settings.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"<em>&quot;I don&#39;t prompt Claude anymore. I have loops running that prompt Claude... My job is to write loops.&quot;</em> said Boris Cherny, the creator of Claude Code, demonstrating a change in the way developers work with their favorite coding agent. Developers are moving away from <em>manually coding</em> and writing isolated prompts, and toward <strong>Loop Engineering</strong>: the practice of <strong>designing automated systems that steer coding agents autonomously</strong>.<br><br>In this 3-hour deep dive, we’ll look at the concepts, approaches, and architecture behind <em>&quot;Loop Engineering&quot;</em>. You will learn that the power of AI doesn&#39;t (only) lie in the model itself, but in the <strong>harness</strong> and <strong>loops</strong> built around it. We will explore the core primitives required to build robust loops (<strong>skills</strong>, <strong>triggers</strong>, <strong>hooks</strong>, Git worktrees, sub-agents, state &amp; memory...), how to implement the fundamental loop structures (turn-based, <strong>goal-based</strong>, time-based, and <strong>proactive</strong>), and how to hopefully prevent these autonomous systems from launching rm -Rf on your codebase!<br><br>You will leave this session with concrete examples, advice, and tips&#39;n tricks, to build <em>your own loops</em>, replacing tedious manual tasks with self-driving workflows that investigate, implement, and verify their own code and artifacts.","fieldGroup":null,"fieldGroupValues":[],"id":22912,"keywords":[{"name":"codingagents"},{"name":"loopengineering"},{"name":"workflows"},{"name":"automation"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":180,"freeTickets":2,"id":959,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Deep Dive","pause":false,"scheduleInSmallRoom":false,"slug":"deep180"},"speakers":[{"anonymizedBio":null,"bio":"Guillaume Laforge is a Developer Advocate at Google, focusing on Generative AI and AI agent engineering. He&#39;s also a Java Champion, the co-founder of the Apache Groovy programming language, and a founding member of Les Cast Codeurs podcast. <br>He&#39;s a committer on LangChain4j and Agent Development Kit for Java.","blueskyUsername":"glaforge.dev","company":"Google","countryName":"France","firstName":"Guillaume","fullName":"Guillaume Laforge","id":2951,"imageUrl":"https://lh3.googleusercontent.com/a-/AFdZucoQ5lU7oZBBSXSkv4PJE8-JzMxuHatM3ouR8sOOnl8=s96-c","lastName":"Laforge","linkedInUsername":"glaforge","mastodonUsername":"https://uwyn.net/@glaforge","twitterHandle":"glaforge"},{"anonymizedBio":null,"bio":"I’m an engineer on the Google Cloud Run team. I find joy in building things, learning constantly, teaching what I know, and writing about it all. Author of O&#39;Reilly&#39;s book on Cloud Run.<br>","blueskyUsername":"","company":"Google Cloud","countryName":"Netherlands","firstName":"Wietse","fullName":"Wietse Venema","id":24160,"imageUrl":"https://lh3.googleusercontent.com/a-/AOh14GhbRZTGa5AfR4sF8hWTueCojns-Au_mYSlkZV7i=s96-c","lastName":"Venema","linkedInUsername":"wietse-venema","mastodonUsername":"","twitterHandle":"wietsevenema"}],"summary":"This session introduces “Loop Engineering,” where developers build automated systems that steer coding agents autonomously. It covers core primitives, loop architectures, and safety practices for creating self-driving workflows that investigate, implement, and verify code, replacing manual prompting with robust AI-driven automation.","timeSlots":[],"title":"Loop Engineering, beyond prompt, context, and harness engineering","totalFavourites":21,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"In our job, technical debt is probably the most frustrating, draining and tenacious thing we have to fight against. Of course, there are best practices: refactor, aim for simplicity with KISS, avoid over-engineering with YAGNI in order to keep this debt as low as possible. And yet, we never really manage to get rid of it. Worse, it keeps piling up even when we apply those principles, as if it were inevitable.<br><br>But what if those very best practices sometimes made the problem worse instead of solving it? Technical debt may be only the visible part of something deeper: accidental design debt. A far more complex problem that leads to spaghetti software and microservices that are really just a distributed monolith, and that we often create ourselves without even realizing it.<br><br>In this talk, we will explore the mechanisms of design debt and its impact on our architecture, our processes, our organization, and even our business. Through concrete examples, we will see how to detect it, assess how deep it goes, and act before it becomes entrenched for good.","fieldGroup":null,"fieldGroupValues":[],"id":10023,"keywords":[{"name":"architecture"},{"name":"microservices"},{"name":"design debt"},{"name":"technical debt"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Julien is a CTO and hands-on technical coach with 15 years+ of experience, specializing in Domain-Driven Design (#DDD). His expertise lies in helping organizations build systems that deliver high business value. Julien focuses on aligning organizational structure, architecture and software practices with business objectives. As a member of the OWASP foundation, he actively promotes application security best practices. An international speaker, Julien enjoys sharing his knowledge with others.","blueskyUsername":"julientopcu.com","company":"Shodo Group","countryName":"France","firstName":"Julien","fullName":"Julien Topçu","id":10159,"imageUrl":"https://lh3.googleusercontent.com/a-/AOh14GgE8qpDBrF4vlQ9jm7d9eSagPY606rA7umzpIU6jQ=s96-c","lastName":"Topçu","linkedInUsername":"julien-topçu","mastodonUsername":"","twitterHandle":"JulienTopcu"},{"anonymizedBio":null,"bio":"Tech coach at Shodo, specializing in AI assisted development, Domain Driven Design and Flow. He helps organizations improve their practices and systems, from architecture and code to org structure and process.","blueskyUsername":"","company":"Shodo","countryName":"France","firstName":"Josian","fullName":"Josian Chevalier","id":10160,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-c4de4a52-ae2e-4937-bbeb-b359147c8675.jpg","lastName":"Chevalier","linkedInUsername":"josianchevalier","mastodonUsername":"","twitterHandle":""}],"summary":"The talk argues that technical debt is only the surface of deeper accidental design debt, which can worsen despite best practices like refactoring, KISS, and YAGNI. It explores how design debt forms, affects architecture and business, and how to detect, assess, and prevent it.","timeSlots":[],"title":"You thought technical debt was bad? Meet design debt!","totalFavourites":8,"track":{"id":1701,"name":"Development Practices","description":"All about Getting Stuff Done right. Methodologies, better practices, etc.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-hearts-card.png"}},{"afterVideoURL":null,"audienceLevel":"ADVANCED","description":"Today&#39;s applications are interconnected: they expose APIs, publish events, call third-party services, and externalize states. They must therefore address the fundamental challenges of distributed systems, such as out-of-order delivery, retries, idempotence, and partial failures. To address these challenges, architects must carefully evaluate integration options while considering how to manage complex system interactions. In this session, learn about common design trade-offs for distributed systems and how to navigate them with design patterns, illustrated by examples.<br><br>The target audience is from many floors the architect elevator would stop by: Software architects, software developers, IT executives and everyone around - such general software architecture sessions are relevant for many roles in every company in every segment. For those with legacy architectures, it provides an outlook on what migration and modernization transformation they could go through in order to get towards flexible, individually evolvable and scalable systems that are loosely coupled.","fieldGroup":null,"fieldGroupValues":[],"id":8166,"keywords":[{"name":"integration"},{"name":"idempotence"},{"name":"distributed systems"},{"name":"microservices"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"In his role as Principal Solutions Architect at Amazon Web Services, Dirk Fröhner works with software companies on their multi-dimensional transformation. Target areas include technology and software architecture evolution, organizational change, and innovation culture. For this, he contributes his wealth of professional experience and knowledge of human nature, all of which he gained from 25+ years in the business. Dirk&#39;s favorite software architecture topic is everything around integration architecture, both in theory and practice: After all, most considerations of building software systems turn out to be integration problems - particularly when it comes to distributed systems. He keeps speaking about this at tech conferences globally, including flagship events like AWS re:Invent. In his spare time, Dirk is a pain-resistant supporter of Schalke 04.","blueskyUsername":"","company":"Amazon Web Services","countryName":"Germany","firstName":"Dirk","fullName":"Dirk Fröhner","id":7643,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-9094138b-d344-4f03-afe9-e4b468b44c70.jpg","lastName":"Fröhner","linkedInUsername":"dirk-froehner","mastodonUsername":"","twitterHandle":""},{"anonymizedBio":null,"bio":"<h3></h3>Sabarish Sekar is an ISV Solutions Architect at Amazon Web Services, where he helps independent software vendors accelerate innovation and modernize their platforms on AWS. With over 13 years of hands-on experience as a developer and solutions architect spanning healthcare and financial services, he brings a practitioner&#39;s perspective to solving complex architectural challenges.<br>Sabarish is passionate about building resilient, scalable systems using serverless technologies, event-driven integration patterns, and the emerging possibilities of Agentic AI. He enjoys breaking down complex topics into practical, actionable guidance that engineering teams can apply immediately.<br><h3></h3><h3>Topics I Speak About</h3><ul><li><strong>Serverless architectures</strong> for ISVs and SaaS platforms</li><li><strong>Integration patterns</strong> for distributed systems and event-driven design</li><li><strong>Agentic AI</strong> and how software companies can harness autonomous AI workflows</li><li>Modernization journeys from monolith to cloud-native</li></ul>","blueskyUsername":"","company":"Amazon Web Services","countryName":"Netherlands","firstName":"Sabarish","fullName":"Sabarish Sekar","id":16353,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-a11d7926-36d1-477b-a2db-da30e0ed9982.jpg","lastName":"Sekar","linkedInUsername":"sabarishksekar","mastodonUsername":"","twitterHandle":""}],"summary":"The session explains distributed-systems challenges in modern interconnected applications—such as retries, idempotence, ordering, and failures—and the design trade-offs and patterns used to manage them. It targets architects, developers, and executives, and offers guidance for modernizing legacy systems into loosely coupled, flexible, scalable architectures.","timeSlots":[],"title":"Integration patterns for distributed systems","totalFavourites":14,"track":{"id":1252,"name":"Architecture & Modernization","description":"Designing for agentic workflows, event-driven systems, and legacy transformation.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-blockchain.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"How do you observe and enforce the code quality to prevent AI Slop? The majority of the teams attending my workshops report 100% of their code is AI-generated already for many months. Some even report they often have to fix PRs that business vibe-coded. This talk summarizes the design feedback loops they setup for their agents, as well as techniques to maximize the human mental bandwidth in the code review step. You’ll hear about C4 model, plantuml diagrams, captured sequence diagrams, complexity visualisation, and efficient testing practices.<br>","fieldGroup":null,"fieldGroupValues":[],"id":31453,"keywords":[{"name":"code quality"},{"name":"ai-generated"},{"name":"code review"},{"name":"testing"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"With 2 decades of software engineering experience, Victor spent the last 10 years training thousands of developers and architects from 150+ companies. Since early 2026, he’s been working hard to help his clients adopt Agentic Engineering, coaching AI Champions, developers, testers, product owners, ops, and managers with practical, actionable advice to kick-start their agentic reconversion. Every year, Victor gives energetic, intense conference talks in which he distills his training sessions - so be sure not to miss these ideas, heavily brainstormed with millennia of total experience. More about him on<a href=\"https://victorrentea.ro\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"background-color: transparent; color: rgb(0, 0, 0);\"> </a><u style=\"background-color: transparent; color: rgb(17, 85, 204);\"><a href=\"https://victorrentea.ro\" rel=\"noopener noreferrer\" target=\"_blank\">https://victorrentea.ro</a></u>, and <u style=\"background-color: transparent; color: rgb(17, 85, 204);\"><a href=\"https://agentic.how\" rel=\"noopener noreferrer\" target=\"_blank\">https://agentic.how</a></u>.","blueskyUsername":null,"company":"Freelance","countryName":"Romania","firstName":"Victor","fullName":"Victor Rentea","id":30506,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-51aee41f-0079-4820-98bb-56e70a2e89d3.jpg","lastName":"Rentea","linkedInUsername":"victor-rentea-trainer","mastodonUsername":null,"twitterHandle":"victorrentea"}],"summary":"Talk on preventing “AI slop” by enforcing code quality in AI-generated codebases. It covers agent design feedback loops and ways to preserve human review bandwidth, using C4 models, PlantUML, captured sequence diagrams, complexity visualizations, and efficient testing practices.","timeSlots":[],"title":"Architecture Observability and Guardrails","totalFavourites":41,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"Large Language Models have radically transformed how we solve problems, but how far can we go with real-world solutions?<br><br>In this deep-dive, we will enhance our problem-solving toolkit by integrating multimodal and long-context capabilities, and unlock an unprecedented range of new solutions. Step by step, we will architect solutions for four complex challenges:<br><br><ol><li><strong>Multimodal Video Transcription: </strong>Transcribe videos and identify speakers in a single prompt.</li><li><strong>Knowledge Graph Generation:</strong> Extract entities and relationships from massive inputs (1M tokens) with a single request.</li><li><strong>Image Bank Automation:</strong> Set up a pipeline for consistent image generation and bring your visual archives back to life.</li><li><strong>Visual Object Detection &amp; Edition:</strong> Identify, restore, and transform elements within your images.</li></ol>","fieldGroup":null,"fieldGroupValues":[],"id":17763,"keywords":[{"name":"long-context"},{"name":"knowledge graphs"},{"name":"large language models"},{"name":"multimodal"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":180,"freeTickets":2,"id":959,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Deep Dive","pause":false,"scheduleInSmallRoom":false,"slug":"deep180"},"speakers":[{"anonymizedBio":null,"bio":"Laurent is a software engineer passionate about everything shaping the future. In a previous life, he co-founded Bookeen and spent 17 years pioneering the digital book industry. Today, as a Developer Advocate at Google Paris, he explores the frontiers of cloud technology and enjoys sharing a world of possibilities with the community.","blueskyUsername":"","company":"Google Cloud","countryName":"France","firstName":"Laurent","fullName":"Laurent Picard","id":18062,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-622ef878-3a50-48a0-b1ee-008424a08391.jpg","lastName":"Picard","linkedInUsername":"PicardParis","mastodonUsername":"","twitterHandle":"PicardParis"}],"summary":"This deep-dive explores extending LLMs with multimodal and long-context capabilities to solve real-world tasks. It presents step-by-step Python notebook solutions for video transcription with speaker identification, large-scale knowledge graph generation, image automation, and visual object detection, restoration, and editing.","timeSlots":[],"title":"Solving Multimodal and Long-Context Challenges","totalFavourites":7,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"As we shift from simple LLM wrappers to autonomous AI agents, a critical question emerges: Where and how should they run? On Kubernetes, our instinct is to treat agents like traditional microservices, giving each its own Pod for isolation and identity. But AI agents aren’t microservices.<br><br>Unlike long-running APIs, agents are ephemeral, bursty, and highly stateful. They might spin up for a task, spawn parallel sub-agents, and then sit idle for hours awaiting human approval. Keeping a dedicated Pod alive for every agent is massively wasteful.<br><br>In this talk, we’ll explore <strong>Agent Substrate</strong>, an open-source system on Kubernetes that decouples the logical agent (&quot;Actor&quot;) from the physical execution environment (&quot;Worker&quot; Pod).<br><br><strong>What you will learn:</strong><br><ul><li><strong>Heavy Multiplexing:</strong> Map thousands of stateful, idle AI agents onto a small pool of shared Kubernetes Pods.</li><li><strong>Hibernate and Teleport:</strong> Look under the hood at how Substrate uses OCI containers and gVisor to achieve sub-second activation, session teleportation, and perfect state persistence across hibernation.</li><li><strong>Rethink Identity &amp; Security:</strong> Shift network policies and access controls away from the Pod level and attach them dynamically to lightweight execution units.</li></ul><br>Leave this session with a fresh perspective on how to isolate and scale the next generation of AI applications without abandoning the Kubernetes ecosystem you already know.","fieldGroup":null,"fieldGroupValues":[],"id":24202,"keywords":[{"name":"kubernetes"},{"name":"isolation"},{"name":"agents"},{"name":"scalability"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Abdel Sghiouar is a senior Developer @Google Cloud. A co-host of the Kubernetes Podcast by Google and a CNCF Ambassador. His focused areas are High Scale distributed systems on Kubernetes, Service Mesh, and Serverless. With a background in datacenter scale architecture and operations and consulting. He spends most of his time working on optimizing GenAI Apps for large scale operations using Cloud Native Technologies and producing content targeting developers and ops professionals.","blueskyUsername":"boredabdel.bsky.social","company":"Google Cloud","countryName":"Sweden","firstName":"Abdellfetah","fullName":"Abdellfetah SGHIOUAR","id":24151,"imageUrl":"https://lh3.googleusercontent.com/a/AEdFTp6g4oRfPAQoq5bJH9DFV4xWnkIek9N3i08DYxe4SQ=s96-c","lastName":"SGHIOUAR","linkedInUsername":"sabdelfettah","mastodonUsername":"","twitterHandle":"boredabdel"}],"summary":"This talk presents Agent Substrate, a Kubernetes system that separates logical AI agents from physical Pods. It enables thousands of stateful, idle agents to share resources efficiently, with hibernation, rapid activation, session teleportation, and dynamic security controls for scalable, isolated AI applications.","timeSlots":[],"title":"Beyond the Pod: Architecting and Scaling AI Agents on Kubernetes","totalFavourites":6,"track":{"id":1254,"name":"Cloud Native, Data & Infrastructure","description":"Kubernetes, platform engineering, vector DBs, model serving, and GPU orchestration.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-server-settings.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"You may be on the latest Java version but are you getting the most out of it? Recent releases have added a lot of features and while some might have flown under the radar, others come together to form more than the sum of their parts. Either way, it is worth looking at the whole corpus of Java changes over the last years:<br><br><ul><li>pattern matching and Data-Oriented Programming</li><li>virtual threads and structured concurrency</li><li>an on-ramp for beginners and better experiments for experts</li><li>new APIs, from stream gatherers to sequenced collections, from lazy constants to HTTP/3</li><li>improved performance, like ahead-of-time computation and compact object headers</li><li>better security and tooling - most out of the box, some on demand</li></ul><br>And there’ll even be time to take a peak at the future and look into the current proposals for value types and string templates, deconstructible class and “withers”. After this deep dive, you’ll be ready to get the most out of the latest Java versions - or at least have good arguments to convince your tech lead to update.<br>","fieldGroup":null,"fieldGroupValues":[],"id":23524,"keywords":[{"name":"java"},{"name":"structuredconcurrency"},{"name":"patternmatching"},{"name":"virtualthreads"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":180,"freeTickets":2,"id":959,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Deep Dive","pause":false,"scheduleInSmallRoom":false,"slug":"deep180"},"speakers":[{"anonymizedBio":null,"bio":"Nicolai (aka nipafx) is a Java enthusiast focused on language features, core APIs, and runtime evolution with a passion for learning and sharing. He does that mostly at conferences and in his biweekly Inside Java Newscast, but also occasionally in podcasts, live streams, articles, and books - more on all that on nipafx.dev. He&#39;s a Java Developer Advocate at Oracle and otherwise best known for his haircut.","blueskyUsername":"nipafx.dev","company":"Oracle","countryName":"Germany","firstName":"Nicolai","fullName":"Nicolai Parlog","id":23037,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-8b41fcad-0f4e-4cd1-a84c-362fb14e2428.jpg","lastName":"Parlog","linkedInUsername":null,"mastodonUsername":"https://mastodon.social/@nipafx","twitterHandle":null},{"anonymizedBio":null,"bio":"As a software architect, consultant and trainer at embarc Software Consulting GmbH, Falk Sippach is always on the lookout for that spark of passion that he can ignite in his participants, customers and colleagues. He has been supporting mostly agile software development projects in the Java environment for 20 years. As an active part of the community (co-organizer of the JUG Darmstadt, member of iSAQB and Java Champion) he also likes to share his knowledge in articles, blog posts, as well as in presentations at conferences or user group meetings and supports the organization of various professional events.","blueskyUsername":"sippsack.bsky.social","company":"embarc Software Consulting GmbH","countryName":"Germany","firstName":"Falk","fullName":"Falk Sippach","id":23040,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-8e6d0e24-74e5-4fd0-9e2e-6cabe2b98ebe.jpg","lastName":"Sippach","linkedInUsername":"falk-sippach","mastodonUsername":"https://ijug.social/@sippsack","twitterHandle":"sippsack"}],"summary":"A deep dive into recent Java releases, highlighting key features like pattern matching, virtual threads, structured concurrency, new APIs, performance and security improvements, plus upcoming proposals such as value types and string templates. The talk helps developers maximize modern Java and justify upgrading.","timeSlots":[],"title":"Modern Java in Practice - The Features That Matter","totalFavourites":22,"track":{"id":2754,"name":"Java Language & Platform","description":"Project Loom, Leyden, Valhalla, Panama, and the ever evolving JVM.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-coffee-mug.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"Are you tired of the same old AI, LLM, buzzword sessions and wondering if there is still anything new and cool out there we can do with AI? Do you crave an exciting, slightly ridiculous project that&#39;s just a lot of fun - while also learning about a whole new field with lots of promise? Don&#39;t miss this session!<br><br>Physical AI is about bringing together all the amazing breakthroughs (yes, like large language models) into the fields of robotics and embedded systems. We can make autonomous robots and systems that can generate their own movement instructions and evolve, without having to painstakingly define all the complex code or even tiny physics-engine implementations to get going.<br><br>But first - we need to build actual robots! As someone coming from the data science field - this may sound like a bit of a leap.<br>However, with a &quot;I&#39;m sure it can&#39;t be that hard&quot; attitude, a bunch of electronics components, and an uncontainable enthusiasm - I set out to do just that.<br><br>I will share the story of building my own Robot Arm from 0 to an incrementally more complex prototype, and how I started giving it some &quot;AI superpowers&quot;, and what&#39;s next in this exciting field!<br>","fieldGroup":null,"fieldGroupValues":[],"id":11560,"keywords":[{"name":"robotics"},{"name":"physical ai"},{"name":"robot arm"},{"name":"embedded systems"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Iulia’s mission is to make tech exciting, understandable, and accessible to the new generation.<br>With a background spanning data science, AI, cloud architecture, and open source she brings a unique perspective on bridging technical depth with approachability.<br>She’s building her own brand, Back To Engineering, through which she creates a community for tech enthusiasts, engineers, and makers. From YouTube videos on building robots from scratch, to conference talks or keynotes about real, grounded AI, and technical blogs &amp; tutorials — Iulia shares her message worldwide on how to turn complex concepts into tools developers can use every day.<br>","blueskyUsername":"","company":"Back To Engineering","countryName":"Netherlands","firstName":"Iulia","fullName":"Iulia Feroli","id":12010,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-c88ed1bf-cddb-4f9b-a69d-c6e208b5954e.jpg","lastName":"Feroli","linkedInUsername":"iuliaferoli","mastodonUsername":"","twitterHandle":"iuliaferoeli"}],"summary":"A playful introduction to physical AI, showing how large language models can be applied to robotics and embedded systems. The speaker shares their journey building a robot arm from scratch, adding AI capabilities, and exploring the potential for autonomous, self-evolving systems in robotics.","timeSlots":[],"title":"How I built my own intelligent Robot Arm from Scratch","totalFavourites":5,"track":{"id":2758,"name":"Mind the Geek","description":"Developer candy: stuff we want to know about but dont (generally) at work, Robotics, biological computing, cybernetics, AI, new toys, tomorrows world","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-robot-arm.png"}},{"afterVideoURL":null,"audienceLevel":"ADVANCED","description":"LLMs are probabilistic by nature. Ask the same question twice, get different answers. Great for creativity, terrible for business logic. How do you build reliable systems on top of something inherently unreliable?<br><br>Let&#39;s tackle this together – from security to predictability. We&#39;ll look at guardrails that block prompt injection and redact leaked PII before it leaves your system. Then we&#39;ll layer on deterministic validation that catches hallucinations with code, not hope. And when the model gets it wrong, we&#39;ll feed errors back for self-correction and use multi-model consensus to build confidence. Practical patterns, real code, no magic.<br><br>This isn&#39;t about making LLMs perfect – it&#39;s about building systems that fail safely and predictably when they&#39;re not.<br><br>The examples are in Java and LangChain4J; the concepts – transferable to other languages and frameworks.","fieldGroup":null,"fieldGroupValues":[],"id":5502,"keywords":[{"name":"guardrails"},{"name":"llms"},{"name":"promptinjection"},{"name":"validation"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Passionate computer scientist. Java Champion, Google Developers Expert for Cloud, and Docker Captain. Public speaker. Community builder. Mentor.","blueskyUsername":"rustam.no","company":"Miles","countryName":"Norway","firstName":"Rustam","fullName":"Rustam Mehmandarov","id":5002,"imageUrl":"https://lh3.googleusercontent.com/a-/AOh14GhOVnDcmUBbpNyyl7Wj1PvPKq-eiUQbogYBsSyleQ=s96-c","lastName":"Mehmandarov","linkedInUsername":"mehmandarov","mastodonUsername":"https://mastodon.social/@mehmandarov","twitterHandle":"RMehmandarov"}],"summary":"The proposal presents practical patterns for building reliable LLM systems despite inherent randomness. It covers prompt-injection defenses, PII redaction, deterministic validation, self-correction, and multi-model consensus to improve safety and predictability. Examples use Java and LangChain4J, with concepts transferable to other languages and frameworks.","timeSlots":[],"title":"Taming the Chaos: Security and Predictability in LLM-Powered Applications","totalFavourites":5,"track":{"id":1255,"name":"Security, Trust & Compliance","description":"Guardrails, prompt injection defence, model governance, and supply-chain security.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-surveillance-camera.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Agentic systems unlock capabilities that traditional “deterministic” applications simply can’t deliver. But there’s a catch: their probabilistic nature introduces real and often unexpected risks—hallucinations, context drift, prompt degradation, and multi-step workflows that evolve in surprising ways. And you definitely don’t want to discover those in production.<br><br>The good news: there is a remedy. We can borrow the most reliable practice from deterministic software—test-driven development—and adapt it to the agentic world. The result is Eval-Driven Development (EDD): a systematic, engineering-first approach to bringing reliability into inherently probabilistic systems.<br><br>In this talk, we explore Eval-Driven Agentic Development and how it can transform your agents from unpredictable to reliable - using the (only?) full-fledged Java/Kotlin Eval framework: Dokimos. We’ll dive into techniques, tools, and patterns needed to make evals a first-class citizen of your development process—demonstrating all of these in a real-world application built with AI frameworks like Spring-AI, LanchChain4J, and Koog.<br><br>Along the way, you will learn how to:<br><ul><li>Design layered eval suites</li><li>Create golden datasets</li><li>Define rubrics and scoring criteria</li><li>Extract eval signals from agent traces</li><li>Use regression gates to detect degraded behavior after changes</li><li>Build a continuous eval loop</li></ul><br>Evaluation-Driven Development is the only path forward for reliable, smart next-generation applications. Let&#39;s learn how to walk it - together!","fieldGroup":null,"fieldGroupValues":[],"id":10038,"keywords":[{"name":"agentic"},{"name":"reliability"},{"name":"development"},{"name":"evaluation"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":null,"description":null,"dinerInvite":true,"duration":40,"freeTickets":1,"id":5151,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":null,"name":"Lunch Talk","pause":false,"scheduleInSmallRoom":false,"slug":"lunch-talk"},"speakers":[{"anonymizedBio":null,"bio":"Urs is a seasoned software engineer, solution architect, conference speaker, and trainer with over 20 years of experience building resilient, scalable, and mission-critical systems, primarily in Kotlin, Scala, and Java. Lately, also agentic systems with JVM technology. <br><br>Besides his job as a consultant, he is also a passionate trainer and author of a wide range of courses, including language courses for Kotlin and Scala, generative AI courses for the JVM platform, as well as architectural trainings on Microservices and Event-Driven Architectures.<br><br>As a people person by nature, he loves to share knowledge, inspire, and be inspired by peers at meetups and conferences. Urs is a JetBrains-certified Kotlin trainer.<br>","blueskyUsername":"","company":"Xebia","countryName":"Netherlands","firstName":"Urs","fullName":"Urs Peter","id":10171,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-3c2d9321-8b4a-418a-8a95-5788a1e66ccf.jpg","lastName":"Peter","linkedInUsername":"urs-peter-70a2882","mastodonUsername":"","twitterHandle":""}],"summary":"Eval-Driven Development (EDD) adapts test-driven development to agentic AI systems, helping manage hallucinations, drift, and workflow surprises. This talk shows how to build reliable agents with layered evals, golden datasets, rubrics, trace signals, and regression gates, using JVM AI frameworks like Spring AI, LangChain4J, and Koog.","timeSlots":[],"title":"Eval Driven Development: Why you need it to make your Agentic Application survive Production","totalFavourites":12,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"The AI revolution isn’t coming — it’s already altering how we architect products, ship features, and run engineering teams.<br><br>During this talk, in his signature charismatic style, Sander Hoogendoorn, CTO at iBOOD.com and a seasoned developer with over four decades of coding experience, doesn’t get stuck in theory or hype, but confronts the pressing issues head-on. You’ll get a no-fluff, grounded view from iBOOD — what we’re already doing with AI, how we built it into our systems, and how it shapes the way we work.<br><br>We won’t shy away from the dark side either — vendor lock-in, breaking prompts, model opacity, shifting APIs, and how quickly a dependency can become fragile. These are real risks that shape architectural and organizational decisions we make daily.<br><br>To survive exponential speed, we retired many practices: no Scrum, no rigid ceremonies, no big upfront plans, no pull requests or code reviews. Instead, we embrace working in fluid autonomous microteams, continuous learning, experimentation, and radical adaptability.<br><br>Expect an honest, fast-paced, and experience-driven session — mixing architecture, culture, and practical insight — on what it truly takes for developers and teams to survive and thrive in the age of AI.<br>","fieldGroup":null,"fieldGroupValues":[],"id":7008,"keywords":[{"name":"microteams"},{"name":"architecture"},{"name":"ai"},{"name":"adaptability"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Sander Hoogendoorn is an independent dad, avid traveler, and lifelong software developer. With over 40 years of hands-on coding experience under his belt, he still ships code every day — because once a developer, always a developer.<br><br>Currently the CTO at iBOOD, Sander has led technology at several companies over the past decade and was once Capgemini’s global agile thought leader. But don’t expect corporate buzzwords — Sander’s known for cutting through the fluff with a post-agile mindset and a healthy disregard for outdated best practices.<br><br>He helps teams and organizations break rules that need breaking — replacing heavyweight processes with lightweight thinking, and agile dogma with actual flow. If something’s slowing your team down, chances are he’s already ranted about it in a keynote.<br><br>Onstage, Sander brings code, stories, and sharp insights — whether he’s talking disruption, continuous delivery, microservices, monads (yes, really), software architecture, or the lost art of writing beautiful code. His talks are fast-paced, thought-provoking, and never just theory.<br><br>Sander believes in small steps, critical thinking, and building stuff that works. No silver bullets. Just better software, made by better teams.","blueskyUsername":"","company":"ibood.com","countryName":"Netherlands","firstName":"Sander","fullName":"Sander Hoogendoorn","id":5844,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-4f2917e1-ef34-47e1-a864-09c5577f5ae8.jpg","lastName":"Hoogendoorn","linkedInUsername":"aahoogendoorn","mastodonUsername":"","twitterHandle":""}],"summary":"Sander Hoogendoorn shares a practical, no-hype view of AI at iBOOD: how it’s reshaping product architecture, engineering, and team culture. He covers real risks like lock-in and fragile dependencies, and explains why autonomous microteams, experimentation, and adaptability replace traditional processes in the AI era.","timeSlots":[],"title":"How to survive and thrive as a dev (team) in the exponential age of AI. Real-world AI adoption, smarter ways of working, and lessons from the front lines","totalFavourites":13,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"Letting an AI agent loose for solving development tasks is a productivity dream, until it decides to optimize your home directory, brick your system, or exfiltrate your private API keys. We want that YOLO mode speed, but developer laptops are treasure troves of credentials that represent massive security nightmares.<br><br>In this session, we’ll look at Docker Sandboxes: a new isolation primitive designed to let agents operate in a secure local cocoon with restricted filesystems and virtualized credentials. But host isolation is only half the battle. We’ll dive into the typical mess AI agents create, see why basic sandbox boundaries aren&#39;t enough to stop application-level data leaks, and walk through a multi-layered security workflow combining local sandboxing with tool-level governance and policy controls for running agents that you can actually trust.","fieldGroup":null,"fieldGroupValues":[],"id":25657,"keywords":[{"name":"sandboxes"},{"name":"credentials"},{"name":"isolation"},{"name":"docker"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":null,"description":null,"dinerInvite":true,"duration":40,"freeTickets":1,"id":5151,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":null,"name":"Lunch Talk","pause":false,"scheduleInSmallRoom":false,"slug":"lunch-talk"},"speakers":[{"anonymizedBio":null,"bio":"Oleg is nice and great, and knows many things about software development, AI and other cool things.","blueskyUsername":"shelajev.bsky.social","company":"Docker","countryName":"Estonia","firstName":"Oleg","fullName":"Oleg Šelajev","id":10176,"imageUrl":"https://lh3.googleusercontent.com/a-/AOh14GirxluLvkptnsT5MxbBaxmupiXXUBlJRLyGooNrEZc=s96-c","lastName":"Šelajev","linkedInUsername":"shelajev","mastodonUsername":"","twitterHandle":"shelajev"}],"summary":"The session explores Docker Sandboxes as a secure local isolation layer for AI agents, limiting filesystem and credential access. It also addresses how agents can still leak data, and proposes a multi-layered approach combining sandboxing, tool governance, and policy controls for safer, trustworthy agent execution.","timeSlots":[],"title":"Safety, speed, and governance in the agentic era","totalFavourites":4,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"What if native images could share code and memory, load new classes at run time, and run applications in the browser?<br><br>In this session, we’ll explore three projects expanding what GraalVM Native Image can do.<br><br>— Native Image Layers introduce a brand-new concept of reusable base images, allowing multiple applications to share code and memory. <br>— Project Crema adds dynamic class loading and execution to native applications — goodbye, closed world!<br>— Web Image (experimental) can compile JVM applications to WebAssembly, bringing libraries and applications directly to browsers and other WebAssembly environments.<br><br>Each project expands a different aspect of Native Image: how applications are packaged, what happens at run time, and where applications can run.<br><br>In this session we’ll see these forward-looking projects in action and discuss where they stand today.","fieldGroup":null,"fieldGroupValues":[],"id":24212,"keywords":[{"name":"graalvm"},{"name":"class loading"},{"name":"native image"},{"name":"webassembly"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Alina is a developer advocate for GraalVM at Oracle. Loves both programming and natural languages, compilers and performance, and open source. Ambassador of snacks and not running.","blueskyUsername":"","company":"Oracle","countryName":"Switzerland","firstName":"Alina","fullName":"Alina Yurenko","id":19772,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-a31c43d1-c596-4e24-af3f-078f54609e6c.jpg","lastName":"Yurenko","linkedInUsername":"alinayurenko","mastodonUsername":"","twitterHandle":"alina_yurenko"}],"summary":"The session explores three GraalVM Native Image projects: Native Image Layers for shared code and memory, Project Crema for dynamic class loading at runtime, and Web Image for compiling JVM apps to WebAssembly for browsers. Together, they expand packaging, runtime behavior, and deployment targets.","timeSlots":[],"title":"GraalVM Next: Layers, Crema, and WebAssembly in Action","totalFavourites":9,"track":{"id":1701,"name":"Development Practices","description":"All about Getting Stuff Done right. Methodologies, better practices, etc.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-hearts-card.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"Vibe Coding promises unprecedented productivity. But for open source maintainers, this revolution feels more like an onslaught. Between the deluge of low-quality Pull Requests (<strong>AI Slop</strong>), hallucinated bug reports, and the rise of aggressive autonomous agents, the open-source social contract is broken.<br><br>This presentation explores the <strong>existential threat</strong> AI poses to the ecosystem and outlines <strong>new defensive strategies</strong> (closing the door, reorganizing the house, machine-adapted governance, etc.).","fieldGroup":null,"fieldGroupValues":[],"id":11562,"keywords":[{"name":"coding"},{"name":"governance"},{"name":"vibe"},{"name":"opensource"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"I am a technologist and Content Producer with <strong>over 25 years of experience</strong> across software engineering, open-source communities, and emerging tech. My current focus is on the frontiers of Generative AI, specifically local LLMs, image generation (Stable Diffusion), and Agentic AI.<br><br>Throughout my career, I’ve balanced technical leadership with a passion for knowledge sharing. I created the QSOS method for <strong>open source</strong> evaluation and recently explored the intersection of &quot;vibe-coding&quot; and storytelling by publishing <strong>AI-assisted techno-thrillers</strong>.<br><br>A frequent speaker at international conferences like Devoxx, Open Source Experience, and various DevFests, I enjoy <strong>deconstructing complex ecosystems</strong>—from Web3 architecture to multimodal AI—into clear, actionable insights. I also bring a unique perspective to tech by integrating holistic <strong>yoga </strong>practices into my approach to innovation and engineering.<br><br>More about me: https://raphiki.github.io/","blueskyUsername":"raphiki.bsky.social","company":"Worldline","countryName":"France","firstName":"Raphael","fullName":"Raphael Semeteys","id":1801,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-b486eee1-a8c4-41b6-9825-c2d3c8761c57.jpg","lastName":"Semeteys","linkedInUsername":"raphaelsemeteys","mastodonUsername":"https://mastodon.social/@raphiki","twitterHandle":"RaphaelSemeteys"}],"summary":"Vibe Coding boosts productivity but overwhelms open-source maintainers with low-quality AI-generated pull requests, hallucinated bug reports, and autonomous agents. This talk examines AI’s existential threat to open source and proposes defensive strategies such as stricter access, restructuring workflows, and machine-adapted governance.","timeSlots":[],"title":"Surviving the \"AI Slopageddon\": How AI shakes the foundations of Open Source","totalFavourites":4,"track":{"id":1701,"name":"Development Practices","description":"All about Getting Stuff Done right. Methodologies, better practices, etc.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-hearts-card.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Do you think AI belongs to Python? Are you worried we’re playing catch-up in the Java world? Don’t panic! Most enterprises aren’t training models or creating innovative AI tools. They’re adding AI capabilities to software they already run and trust. <br><br>Enterprise applications encode business processes, security rules, and decades of operational knowledge. Adding agents that attempt to rediscover a working process on every request is slower, more expensive, and less reliable than using AI where it is genuinely helpful: handling the uncertain and ambiguous parts of the workflow that used to need human intervention.<br><br>Java is especially strong for using AI. Java’s static types, mature APIs, testing tools, and explicit contracts provide structure around probabilistic (i.e. unpredictable) output. Its performance and concurrency model (including virtual threads) mean you can run large numbers of agentic tasks quickly and dependably. If your agentic framework works natively with Java, teams can add AI incrementally without rebuilding their architecture, retraining their engineers, or handing their core processes to an external black box.<br><br>In this talk, we&#39;ll look beyond chatbots and prompt engineering to see how AI actually fits inside enterprise applications, and how Java gives you the harness to make agentic systems fast, controlled, observable, and dependable.<br><br>Using AI effectively with Java in the enterprise isn’t some fantasy, it’s good, solid software engineering.","fieldGroup":null,"fieldGroupValues":[],"id":22932,"keywords":[{"name":"java"},{"name":"ai"},{"name":"enterprise"},{"name":"agents"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Trisha Gee is a Java Champion, author, and internationally recognised speaker who has spent over 20 years building software and helping developers build it better. From high-performance financial systems to developer tools, she brings hands-on experience and a clear, practical perspective on what actually makes teams effective, and how engineering organisations build better software.<br><br>She is the co-author of Head First Java and Getting to Know IntelliJ IDEA, and her talks, articles, and videos are widely used by developers to navigate complex topics and improve how they work. She focuses on developer productivity, proven engineering practices, and the role of human judgment in an increasingly AI-assisted world.<br><br>Trisha got her start in developer communities, founding and supporting user groups and engaging directly with developers. She continues to champion community-led learning, inclusive practices, and the idea that great software comes from people, not just tools.","blueskyUsername":"trishagee.bsky.social","company":"Digital Aguacates","countryName":"Spain","firstName":"Trisha","fullName":"Trisha Gee","id":7646,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocLsMb8CUpH7W48b3uQ9kMWx6uoYjj07hJVCxmz2MT5fbaMVope5ow=s96-c","lastName":"Gee","linkedInUsername":"trishagee","mastodonUsername":"https://mastodon.social/@trishagee","twitterHandle":"trisha_gee"},{"anonymizedBio":null,"bio":"CTO &amp; Co-Founder, Redouble AI (YC S24). Equal parts engineer, executive and founder, and an enterprise Java architect with a soft spot for elegant code","blueskyUsername":"","company":"Redouble AI","countryName":"United States of America","firstName":"Andrey","fullName":"Andrey Santrosyan","id":8651,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocI77jWS_K7xTIgnUWxXFl9RQWFg5uOq1TVsZTVyvbLK_lFI9xU=s96-c","lastName":"Santrosyan","linkedInUsername":"santrosyan","mastodonUsername":"","twitterHandle":""}],"summary":"The talk argues that enterprise AI should augment existing Java applications, not replace them. Java’s types, APIs, testing, and concurrency make it well suited to control unpredictable AI outputs, enabling fast, observable, dependable agentic systems without rebuilding architectures or surrendering core business processes.","timeSlots":[],"title":"Why Java Is Perfect for AI - Just Not the AI You’re Thinking Of","totalFavourites":13,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"ADVANCED","description":"Would your test suite still pass if the tested code was changed?  If so, you probably have gaps in your test suite, redundant or unreachable code, or maybe even both!<br><br>Mutation Testing reveals these cases, and provides some guidance about how to fix them.  This talk will tell you what mutation testing is, how it works inside, how to use it, where in your development process to use it, and its benefits, drawbacks, and history.  There will be multiple examples, and a list of tools for many popular languages (and some others).<br><br>You will learn a powerful technique for making sure your test suite is strict and your code is meaningful!","fieldGroup":null,"fieldGroupValues":[],"id":5530,"keywords":[{"name":"code quality"},{"name":"test suite"},{"name":"testing"},{"name":"mutation"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Dave is a retired software development consultant (wrote code <em>and</em> gave advice about it), and international speaker, with 40 years of professional experience in a wide variety of languages, techniques, domains, etc.  He was the T. Rex of Codosaurus, LLC (his one-person consulting firm, which explains how he could get such a cool title, at <a href=\"https://www.Codosaur.us/\" rel=\"noopener noreferrer\" target=\"_blank\">https://www.Codosaur.us/</a>), in the USA, but now lives in Porto, Portugal.  His main focus in software lately is to spread the gospel of quality, including defining what that even means, and talking about techniques to achieve it.  In his spare time, he brews mead, teaches others how, and speaks at conferences (almost sixty so far, on five continents), on podcasts, etc.","blueskyUsername":"DaveAronson.bsky.social","company":"Codosaurus","countryName":"Portugal","firstName":"Dave","fullName":"Dave Aronson","id":5824,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-b41d4e91-b171-4224-afa2-c6c806b1d492.jpg","lastName":"Aronson","linkedInUsername":"DaveAronson","mastodonUsername":"","twitterHandle":"DaveAronson"}],"summary":"Mutation testing checks whether tests fail when code is changed, revealing weak tests, redundant or unreachable code. This talk explains how mutation testing works, when to use it, its pros, cons, history, examples, and tools for popular languages.","timeSlots":[],"title":"Kill All Mutants! (Intro to Mutation Testing)","totalFavourites":13,"track":{"id":1701,"name":"Development Practices","description":"All about Getting Stuff Done right. Methodologies, better practices, etc.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-hearts-card.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"Ted Nelson was a troublemaker. In 1974, frustrated by the closed and bureaucratic world of computing, he wrote Computer Lib/Dream Machines, a book that was part manifesto and part blueprint for a digital future. Nelson saw computers not as tools of control but as portals to personal freedom, creativity and interconnected knowledge. He championed hypertext long before the web, called out the dangers of technical jargon designed to exclude ordinary people and fought for systems that put users in charge.<br><br>This talk tells the story of Computer Lib, the man behind it and the philosophy that shaped it. It explores how Nelson’s ideas could have led to a very different digital world, one built around open, decentralised knowledge rather than the walled gardens and algorithmic control we have today. What if his vision had won? What would the internet look like if computing had followed the path of Computer Lib instead of Big Tech?<br><br>Nelson once wrote that “most authority is malignant.” This is a talk about the man who wanted to dismantle it and the future we lost when the world ignored him.","fieldGroup":null,"fieldGroupValues":[],"id":5541,"keywords":[{"name":"computing"},{"name":"ted nelson"},{"name":"hypertext"},{"name":"decentralization"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Anders Norås started out in arts and design, but for the last 25 years he has been creating magic with code instead of paint. Blending creativity with technical skill, he brings a perspective on technology that is as much about people as it is about software.<br><br>He has given more than 100 talks at conferences around the world. His presentations are not just lectures, they are experiences. With a sharp delivery and high energy, Anders turns even dry technical material into something lively, memorable and often funny.<br><br>Whether you are into computer science, design, media or anything else, Anders offers insights that will make you think and probably make you laugh. He does not just talk about technology. He brings it to life.","blueskyUsername":"andersnoras.com","company":"Indipendant ","countryName":"Norway","firstName":"Anders","fullName":"Anders Norås","id":5829,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-a2db74e7-a445-4ab1-b7a8-4598218cf7f4.jpg","lastName":"Norås","linkedInUsername":"","mastodonUsername":"","twitterHandle":""}],"summary":"The talk profiles Ted Nelson and his 1974 manifesto *Computer Lib/Dream Machines*, which envisioned computers as tools for freedom, creativity, and open hypertext. It asks how the internet might differ today if Nelson’s user-centered, decentralized vision had prevailed over Big Tech’s closed, algorithmic systems.","timeSlots":[],"title":"Dream Machines & Walled Gardens","totalFavourites":2,"track":{"id":2758,"name":"Mind the Geek","description":"Developer candy: stuff we want to know about but dont (generally) at work, Robotics, biological computing, cybernetics, AI, new toys, tomorrows world","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-robot-arm.png"}},{"afterVideoURL":null,"audienceLevel":"ADVANCED","description":"Java 28 will soon introduce, as a preview feature, value classes (JEP 401), a new kind of class that renounces its identity to get better performance.<br><br>In this presentation, we will explain what value classes are, how the Java spec was re-interpreted to conjure their existence, how they interact with existing code and what optimizations they enable both on the stack and the heap.<br><br>To make it concrete, we&#39;ll explore these ideas through the simulation and rendering of a black hole: calculating the trajectories of thousands of light rays through curved spacetime means manipulating huge numbers of vectors, rays, coordinates, and intermediate values.<br><br>Finally, we will look ahead at the experimental &quot;!&quot; syntax for null-restricted types, its optimization potential, and the limitations of the current design.<br><br>Join us to discover value classes and the current state of Project Valhalla.","fieldGroup":null,"fieldGroupValues":[],"id":17794,"keywords":[{"name":"valuetypes"},{"name":"java"},{"name":"projectvalhalla"},{"name":"blackhole"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Passionate about software development since getting my first programmable calculator, I have built a solid experience as a tech lead and architect in designing embedded combat systems.<br>An advocate of clean code, &quot;developer joy&quot; and well-thought-out architectures, I enjoy working on design topics as well as front-end or back-end development.<br>I recently founded a &quot;JUG-like&quot; meetup in southern France called &quot;Toulon Dev&quot;","blueskyUsername":"cdetastes.bsky.social","company":"SCIAM","countryName":"France","firstName":"Clément","fullName":"Clément de Tastes","id":3653,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-0a33a77f-9982-4862-8714-ad3c32701c94.jpg","lastName":"de Tastes","linkedInUsername":"clement-de-tastes","mastodonUsername":"","twitterHandle":""},{"anonymizedBio":null,"bio":"Tenured associate professor at Université Gustave Eiffel (Paris) and longtime OpenJDK member researching runtime environments (Java VM, .NET). He has contributed to major Java features including invokedynamic (JSR 292), Lambda (JSR 335), and the Jigsaw module system (JSR 376), and currently works on OpenJDK&#39;s Amber (records, pattern matching) and Valhalla (value types) projects. He&#39;s also the main contributor to the ASM bytecode library.<br>A frequent conference speaker (Devoxx France, FOSDEM), he regularly presents on modern Java features like virtual threads, structured concurrency, and value types.","blueskyUsername":"","company":"University Gustave Eiffel","countryName":"France","firstName":"Remi","fullName":"Remi Forax","id":18075,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocK8ScVAfwuF-N0FTBQLG4RDPeS7vzgzVc_VNU0pEJrFPgQ32w=s96-c","lastName":"Forax","linkedInUsername":"","mastodonUsername":"","twitterHandle":""}],"summary":"This talk introduces Java’s Project Valhalla value types through a black hole simulation, showing how they improve immutability, memory efficiency, and performance for heavy numerical workloads. It also explores experimental non-nullable `!` syntax, optimization potential, current limitations, and practical benchmarks.","timeSlots":[],"title":"Escaping Java's Allocation Gravity with Value Classes","totalFavourites":8,"track":{"id":2754,"name":"Java Language & Platform","description":"Project Loom, Leyden, Valhalla, Panama, and the ever evolving JVM.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-coffee-mug.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"<strong style=\"background-color: rgb(255, 255, 255); color: rgb(5, 80, 174);\"># Abstract</strong><br><br><strong style=\"background-color: rgb(255, 255, 255); color: rgb(31, 35, 40);\">**Technical Workshop on AI-Native Tooling for Java Development**</strong><br><br>For nearly three decades, enterprise Java software has been built manually by software engineers. In 2023, a new generation of AI-powered tools emerged, and tools like Cursor AI, Claude Code, Codex, and GitHub Copilot are now changing how software is planned, designed, implemented, validated, and operated across the full SDLC.<br><br>This workshop will explain step by step how to use Skills, Agents, Commands, and MCP Servers for real world scenarios. <br><br>The workshop is designed for all levels and covers the following topics in a practical, hands-on way:<br><br>- How the SDLC has evolved with AI-native engineering workflows organized around the Design / Build / Operate model<br>- How to use Commands to automate repeatable actions across planning, implementation, validation, and operations<br>- How to compose reusable Skills across analysis, design, implementation, operations, and regulatory review<br>- How to connect issue-driven planning with OpenSpec, GitHub Issues, and Azure DevOps work items<br>- How to configure and delegate to specialized Agents<br>- How to apply a Zero Trust mindset to agent skills, generated artifacts, and automated workflows<br>- How to use OpenSpec/SpecKit<br>- How to extend agent capabilities with MCP Servers<br>- How to write a solid AGENTS.md<br>- How to write a solid Skill<br>- How to write a solid Agent<br>- How to write a solid Command<br><br>The demos will walk through real examples using Spring Boot, Quarkus, and Micronaut","fieldGroup":null,"fieldGroupValues":[],"id":8190,"keywords":[{"name":"java"},{"name":"ai"},{"name":"agents"},{"name":"sdlc"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#00FF00","description":null,"dinerInvite":true,"duration":180,"freeTickets":2,"id":968,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":2,"name":"Hands-on Lab","pause":false,"scheduleInSmallRoom":true,"slug":"lab18"},"speakers":[{"anonymizedBio":null,"bio":"From programming microservices to leading engineering teams: this is how I&#39;ve spent my last 20 years in technology as a Java/Spring ecosystem specialist. My career has evolved from designing cloud-native architectures and migrating legacy systems to leading engineering teams focused on high-quality results and efficient processes.","blueskyUsername":null,"company":"IG","countryName":"Spain","firstName":"Juan","fullName":"Juan Antonio Breña 🇪🇸🇪🇺","id":5848,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-40c3fd7e-fe96-414c-b6c4-4b52f1bd300a.jpg","lastName":"Antonio Breña 🇪🇸🇪🇺","linkedInUsername":"juanantoniobrenamoral","mastodonUsername":null,"twitterHandle":"juanantoniobm"},{"anonymizedBio":null,"bio":"Chapter Lead (Engineering Manager) @ ING Bank N.V.<br><br>Having 12+ years experience in Software Development mostly on JVM ecosystems. With solid skills designing and implementing Web APIs. Passionate about software development and hobbyist in DIY electronics and embedded systems.<br><br>Main roles:<br>IT Team Lead<br>API Design, Development &amp; Architecture<br>Coaching and Mentoring","blueskyUsername":"lealoureiro.bsky.social","company":"ING","countryName":"Netherlands","firstName":"Leandro","fullName":"Leandro Loureiro","id":8667,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-799b0311-08e3-4eb8-b044-06dd89cfd2be.jpg","lastName":"Loureiro","linkedInUsername":"lealoureiro","mastodonUsername":"","twitterHandle":""}],"summary":"This hands-on English workshop introduces AI-native Java Enterprise development using Skills, Agents, Commands, and MCP Servers. It covers prompt engineering, agent-driven workflows, and pipelines; automating lifecycle tasks; configuring framework-specific agents; extending capabilities with MCP servers; and writing effective AGENTS.md and specs for safe delegation.","timeSlots":[],"title":"Technical Workshop on AI-Native Tooling for Java Development","totalFavourites":18,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"Open-source software powers the world’s most innovative enterprises, but keeping it secure, compliant, and reliable over the long haul is where complexity (and unexpected risk) quietly creeps in. This presentation offers a guided tour through the challenges organizations face when working with open-source technologies that often have short lifecycles and require regular upgrades. Think of it as a practical playbook for extending the useful life of open-source software – keeping systems secure, audits calm, and engineers focused on building what’s next, not fighting what’s old. You will learn how TuxCare solutions, from rebootless patching and end-of-life security updates to noise-free vulnerability scanning and enterprise support for community operating systems, help enterprises run open-source software with confidence – even when the calendar, the threat landscape, or upstream support say otherwise","fieldGroup":null,"fieldGroupValues":[],"id":49253,"keywords":[{"name":"security"},{"name":"open-source"},{"name":"compliance"},{"name":"patching"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":null,"description":null,"dinerInvite":true,"duration":40,"freeTickets":1,"id":5151,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":null,"name":"Lunch Talk","pause":false,"scheduleInSmallRoom":false,"slug":"lunch-talk"},"speakers":[{"anonymizedBio":null,"bio":"Sven Sellen is a veteran of the cybersecurity and open-source industries, currently serving as the Director of Global Enterprise Sales at TuxCare, Inc. With a career spanning over 27 years, Sven has navigated the evolution of the digital landscape through executive leadership roles in Consulting, Sales Engineering, and Project Management.<br><br>As a high-level advocate for the Linux ecosystem, Sven specializes in bridging the gap between complex global enterprise infrastructure and robust security protocols.<br><br>At TuxCare, he leads the global sales strategy, helping multinational organizations manage the entire Linux lifecycle—from automated live patching to extended support for end-of-life systems—ensuring that mission-critical environments remain secure and compliant without the need for disruptive reboots.<br><br>Sven is a recognized Public Speaker at major international technology fairs and partner events. He is well-known for his ability to translate high-level security concepts into actionable global business strategies. His insights on Linux security, vulnerability management, and enterprise open-source trends have been featured in premier technical outlets, including heise online, Computerwoche, and it-security journal.","blueskyUsername":"","company":"TuxCare Inc.","countryName":"Germany","firstName":"Sven","fullName":"Sven Sellen","id":49103,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-4ae1c500-52d8-4173-ad59-1ade63a5a175.jpg","lastName":"Sellen","linkedInUsername":"svensellen","mastodonUsername":"","twitterHandle":""}],"summary":"The presentation explains how enterprises can securely and compliantly manage open-source software over time despite short lifecycles and upgrade demands. It highlights TuxCare solutions—rebootless patching, end-of-life security updates, low-noise vulnerability scanning, and enterprise support—to extend software life and reduce risk.","timeSlots":[],"title":"Engineering for the Long Haul: Operating Open Source at Scale","totalFavourites":1,"track":{"id":1701,"name":"Development Practices","description":"All about Getting Stuff Done right. Methodologies, better practices, etc.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-hearts-card.png"}},{"afterVideoURL":null,"audienceLevel":"ADVANCED","description":"I was about ten years into my Java career when I had spoken at enough conferences, and befriended enough speakers, that my sense for the hype cycle had been sharpened by the collective skepticism of the speaker jet-set. That was two decades ago. We&#39;ve all heard the latest hype about what AI agents can do well. Less hyped is what can go wrong: non-determinism, DRY violations, hallucinated APIs, token cost, unreviewable code, and code reviews that start to improve the code, only to keep going until the code is actually broken.<br><br>This talk makes the case that it&#39;s the time-honed boring things about Java that keep the agents honest. Successful agentic development maximizes agent strengths — speed, breadth, fearless exploration, tolerance for boilerplate — while backstopping their weaknesses: non-determinism, dependency sprawl, inconsistent error handling, and code that works but nobody wants to maintain.<br><br>Here are the 10 boring reasons:<br>1. Type system<br>2. Testing ecosystem<br>3. Backwards compatibility culture<br>4. Deep static analysis<br>5. Build system maturity and dependency management<br>6. Code formatting and style enforcement<br>7. Virtual threads and structured concurrency<br>8. Observability stack<br>9. JVM performance tuning<br>10. Breadth of deployment options<br><br>For each, I&#39;ll show the specific agentic failure mode it addresses. I&#39;ll close with a practical checklist for making your Java development process agent-safe, and tie it up with the message that to move forward, you have to go back.<br>","fieldGroup":null,"fieldGroupValues":[],"id":21687,"keywords":[{"name":"observability"},{"name":"java"},{"name":"agents"},{"name":"testing"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Ed Burns is currently Principal Architect on the Java Tooling and Experiences team at Microsoft. In this role, Ed will help make Azure the best place for Enterprise Java. Prior to joining Microsoft, Ed was a Principal Member of the Technical Staff At Oracle. While there, Ed was the specification lead or co-lead for JavaServer Faces, the standard Web Application Framework for Java EE, and for Servlet, the standard HTTP API for Java EE. Ed continued in these roles from his work at Sun Microsystems, Inc. In these roles, Ed lead a team of web experts from across the industry in developing JavaServer Faces and Servlet Technology through the Java Community Process and in open source. His areas of professional interests include web application frameworks, AJAX, reducing complexity, test driven development, requirements gathering, and computer supported collaborative work. Before working on JavaServer Faces, Ed worked on a wide variety of client and server side web technologies since 1994, including NCSA Mosaic, Mozilla, the Sun Java Plugin, Jakarta Tomcat, the Cosmo Create HTML authoring tool, and the web transport layer in the Irix operating system from Silicon Graphics.<br>Ed has published four books with McGraw-Hill: JavaServerFaces: The Complete Reference (2006), Secrets of the Rockstar Programmers: Riding the IT crest (2008) JavaServer Faces 2.0: The Complete Reference (2010) and Hudson Continuous Integration In Practice (2013). To learn more about his books or projects, you can visit his website at &lt;http://ridingthecrest.com/&gt; or <a href=\"https://www.amazon.com/author/edburns\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"color: black;\">Amazon Author Page</a>.<br>Ed has a Bachelor of Computer Science degree from the University of Illinois at Urbana-Champaign. While at UIUC, Ed took a minor in Germanic Studies and worked for IBM in the co-op program, where he first acquired a fondness for computer history by working on System 370 Office Software.<br>Ed is a frequent keynote speaker at international industry conferences, having presented many times at Oracle&#39;s JavaOneSM conference, given keynote addresses at Javaland, the JAX conference in Mainz, the W-JAX conference in Munich, Germany and the Globalcode Developer&#39;s Conference in São Paulo, Brazil, and the JSFDays conference in Vienna Austria. In addition to keynotes, Ed has given technical sessions at numerous international Java conferences including Javapolis, Jazoon, JAX-India, TheServerSide.com Java Symposium, No Fluff Just Stuff, the Ajax Experience, JAOO, and others, and also has spoken at many Java User Group meetings. A complete list of Ed&#39;s conference speaking experience is available at <a href=\"http://purl.oclc.org/NET/edburns/speaking-engagements/\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"color: black;\">&lt;http://purl.oclc.org/NET/edburns/speaking-engagements/&gt;</a> Further information and blogs may be found at <a href=\"http://purl.oclc.org/NET/edburns/\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"color: black;\">&lt;http://purl.oclc.org/NET/edburns/&gt;</a>.<br>","blueskyUsername":"edburns.bsky.social","company":"GitHub","countryName":"United States of America","firstName":"Ed","fullName":"Ed Burns","id":21534,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocKf_U-qcze7BB9GWQwsWdm2WDBkGgEsDAzUQT27yrdQd6H_CGu1=s96-c","lastName":"Burns","linkedInUsername":"edburns","mastodonUsername":"https://mastodon.social/@edburns","twitterHandle":"edburns"}],"summary":"The talk argues that Java’s “boring” strengths—types, tests, static analysis, mature builds, formatting, observability, and more—help control AI agents’ risks like hallucinations, non-determinism, and unmaintainable code. It maps 10 Java features to agent failure modes and ends with a practical agent-safe checklist.","timeSlots":[],"title":"10 boring reasons why Java is the best ecosystem for agentic development","totalFavourites":8,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"Everybody now and then comes into a new team, or someone else comes into theirs. More often than not, cooperation does not go seamlessly straight away. Sometimes this evens out by itself along the way. But in many occasions, it does not. Ways of working could be different. Something one values a lot, may not be valued at all by another, creating conflict. One may criticise or get criticised and things get uncomfortable. Teams may split into &quot;camps&quot; or one person just never agrees with the others. Team members may feel stepped over, pushed aside or misunderstood. If this goes on for too long, team members start to feel generally disrespected and demotivated. Then there are cases one member feels another is not qualified, or just a bully. This goes beyond forming and storming, this becomes a (team-wide) problem. In this talk you will see you are not the only one experiencing these challenges. You will hear experiences on solving these kind of cases (or not!), get an idea of how others deal with it and what your options are if you ever find yourself in the weeds (again). In any case, you probably will be surprised by yourself or your team mate in one way or another...","fieldGroup":null,"fieldGroupValues":[],"id":4090,"keywords":[{"name":"cooperation"},{"name":"communication"},{"name":"conflict"},{"name":"teamwork"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Jessica is a software developer specialised in micro services in Scala and Kotlin. She has worked in Finance, logistics and since a few years, she has devoted herself to contribute to the Dutch Energy Transition. For this reason she joined Het ConsultancyHuis four years ago. Jessica has a great sense of team building and working relationships. To this end, during her 14 years in the field, she has taken several training programmes and has fulfilled multiple roles as scrum master of teams. Even when she is not the scrum master, she takes pride in making significant contributions to the maturity of the team. In addition, in order to provide the users and people in The Netherlands a better experience regarding the enormous upgrade of the Dutch energy network, she enjoys working together with neighbouring teams. She likes to share her experiences in both engineering and working relationships with her fellow crafts(wo)men.","blueskyUsername":"","company":"Het ConsultancyHuis","countryName":"Netherlands","firstName":"Jessica","fullName":"Jessica Siewert","id":3942,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-e589f7fe-c186-49f3-adc0-9c3917209720.jpg","lastName":"Siewert","linkedInUsername":"jesiewert","mastodonUsername":"","twitterHandle":""}],"summary":"The talk explores common team conflicts when new members join or working styles clash, leading to mistrust, disrespect, and demotivation. It shares real experiences and practical ways teams handle these problems, helping participants understand their options when cooperation breaks down.","timeSlots":[],"title":"Help! I hate my team mate!","totalFavourites":14,"track":{"id":1253,"name":"People, Practices & Career","description":"Leading teams, engineering culture, and career resilience.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-deepfake-ai.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"This session will showcase <a href=\"https://www.julien-dubois.com/boot-ui/\" rel=\"noopener noreferrer\" target=\"_blank\">BooUI</a>, the developer console I have built for both Spring Boot and Quarkus. We&#39;ll detail how to:<br> <br><ul><li>Understand, analyse and fix your application using the &quot;live view&quot;, showing what users are doing in real time</li><li>Improve the application code and architecture by using the different &quot;advisors&quot; panels</li><li>Study the application&#39;s memory usage and configure it correctly for production</li></ul><br>This hands-on talk will show you how easy it is to install BootUI on both Spring Boot and Quarkus, so have your app ready when coming and you&#39;ll be able to benefit from it straight during the session!","fieldGroup":null,"fieldGroupValues":[],"id":11558,"keywords":[{"name":"memory usage"},{"name":"quarkus"},{"name":"developer console"},{"name":"spring boot"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":30,"freeTickets":2,"id":957,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Tools-in-Action","pause":false,"scheduleInSmallRoom":false,"slug":"tia30"},"speakers":[{"anonymizedBio":null,"bio":"Julien Dubois is a Java Champion and a Principal Manager at <a href=\"https://www.microsoft.com/\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"color: var(--primary-color);\">Microsoft</a>. With his team of world-class developer advocates, Julien works directly with the engineering groups to improve how developers can leverage AI using Microsoft and GitHub solutions.<br><br>With over 25 years of experience in the Java ecosystem, Julien is best known as the creator of <a href=\"https://www.jhipster.tech/\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"color: var(--primary-color);\">JHipster</a>, an Open Source platform with 22,000+ GitHub stars that revolutionized how developers build Spring Boot applications. His recent work focuses on bringing enterprise-grade AI capabilities to Java through his contributions to <a href=\"https://github.com/langchain4j/langchain4j\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"color: var(--primary-color);\">LangChain4j</a> and <a href=\"https://spring.io/projects/spring-ai\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"color: var(--primary-color);\">Spring AI</a>.<br><br>Julien is a recognized thought leader in the Java community, having spoken at over 200 international conferences including Devoxx, Spring One, and Microsoft Build. He authored <em style=\"color: var(--primary-color);\"><a href=\"https://www.julien-dubois.com/book\" rel=\"noopener noreferrer\" target=\"_blank\">Spring par la pratique</a></em>, the first French book on the Spring Framework, which became a bestseller. His presentations typically feature live-coding sessions and practical workshops that help developers immediately apply new technologies.","blueskyUsername":"","company":"GitHub","countryName":"France","firstName":"Julien","fullName":"Julien Dubois","id":12008,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-832ab0d0-7760-423f-a78e-7f767c7e95b8.jpg","lastName":"Dubois","linkedInUsername":"juliendubois","mastodonUsername":"","twitterHandle":"juliendubois"}],"summary":"BooUI is a developer console for Spring Boot and Quarkus that helps you monitor users in real time, diagnose and fix issues with live view and advisor panels, and analyze memory usage for production tuning. The session includes hands-on installation and use.","timeSlots":[],"title":"BootUI, the missing developer console for Spring Boot and Quarkus","totalFavourites":12,"track":{"id":1701,"name":"Development Practices","description":"All about Getting Stuff Done right. Methodologies, better practices, etc.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-hearts-card.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"Every developer has been there: sitting at a life event, thinking &quot;could I automate this?&quot; The answer is yes. And this talk will show you how.<br><br>There is a whole class of problems that AI alone cannot solve: scheduling, routing, and planning challenges where every decision affects every other decision. Timefold tackles these in production every day, across logistics, manufacturing, healthcare, and yes, apparently also weddings.<br><br>We will use the most important weekend of your life as our excuse to explore constraint optimization in practice, from seating charts to pub crawls to honeymoon itineraries, with real code, real constraints, and real solver magic.<br>You will leave knowing how to turn any &quot;could I automate this?&quot; moment into a working optimization solution.","fieldGroup":null,"fieldGroupValues":[],"id":41302,"keywords":[{"name":"optimization"},{"name":"routing"},{"name":"planning"},{"name":"scheduling"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":null,"description":null,"dinerInvite":true,"duration":40,"freeTickets":1,"id":5151,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":null,"name":"Lunch Talk","pause":false,"scheduleInSmallRoom":false,"slug":"lunch-talk"},"speakers":[{"anonymizedBio":null,"bio":"Geoffrey De Smet is founder/CTO of <a href=\"https://timefold.ai\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"background-color: transparent; color: rgb(0, 0, 0);\">Timefold</a> and the creator of OptaPlanner, its predecessor. He’s an expert in planning optimization, an active open source contributor and an international speaker.<br><br>His technology is in use across the globe, to automate complex scheduling and routing of hundreds of thousands of employees, vehicles and machinery every day.<br>","blueskyUsername":"geoffreydesmet.bsky.social","company":"Timefold","countryName":"Belgium","firstName":"Geoffrey","fullName":"Geoffrey De Smet","id":10175,"imageUrl":"https://lh3.googleusercontent.com/a-/AOh14GjnLAEFVLYxmRxddxXV3A1MLXmtDO7GbsZA2gSupw=s96-c","lastName":"De Smet","linkedInUsername":"ge0ffrey","mastodonUsername":"","twitterHandle":""},{"anonymizedBio":null,"bio":"Developer Relations Engineer for Timefold, Java Champion and co-organizer of the Belgian Java User Group. Tom has a decade worth of experience delivering systems and loves to share not only knowledge but also passion for our craft. <br><br>You can read more at his blog (http://www.tomcools.be) or follow him on Bluesky (@tomcools.be).","blueskyUsername":"tomcools.be","company":"Timefold","countryName":"Belgium","firstName":"Tom","fullName":"Tom Cools","id":13555,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocLiUjyjM49h8fxM3bZDY_EBsphO-BhswQ2kD7N4rUU3lgNYf2Hs=s96-c","lastName":"Cools","linkedInUsername":"tom-cools-17547548","mastodonUsername":"","twitterHandle":""}],"summary":"This talk shows how to automate complex planning problems using constraint optimization. Using wedding scenarios like seating charts, pub crawls, and honeymoon itineraries, it demonstrates how Timefold solves scheduling, routing, and planning challenges with real code and constraints, turning “could I automate this?” into working optimization solutions.","timeSlots":[],"title":"\"You May Now Optimize the Wedding\": Optimizing the Seating, Bachelor Party, and Honeymoon with Constraint AI","totalFavourites":6,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"🎯 Revolutionize the way you see Java development with AI!<br>You know Java? Then you already hold 80% of the keys to building sophisticated AI systems. Don&#39;t let Python monopolize innovation: with LangChain4j, Java becomes the go-to language for production-grade AI.<br><br>On the agenda for this hands-on workshop:<br><br>🧱 <strong>Part 1: AI as a Service.</strong> Learn to inject intelligence via CDI just like any other Bean. Manage conversational memory with scopes (@SessionScoped) and give your agents &quot;arms&quot; through Function Calling.<br><br>🏗️ <strong>Part 2: The Agent Architect.</strong> Go beyond simple chat. Design complex declarative workflows (sequential, parallel) and master the Supervisor Pattern: an AI capable of planning and managing other agents autonomously.<br><br>🚀 <strong>Why attend?</strong> Walk away with ready-to-use patterns, a solid grasp of the MCP/A2A protocols, and the ability to integrate robust agents into your enterprise architectures.<br>Go from spectator to AI architect! 🚀<br><br><br><br><br>","fieldGroup":null,"fieldGroupValues":[],"id":17800,"keywords":[{"name":"java"},{"name":"ai"},{"name":"agents"},{"name":"langchain4j"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#00FF00","description":null,"dinerInvite":true,"duration":180,"freeTickets":2,"id":968,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":2,"name":"Hands-on Lab","pause":false,"scheduleInSmallRoom":true,"slug":"lab18"},"speakers":[{"anonymizedBio":null,"bio":"Into the Java World for the last 25 years, I joined Red Hat in 2013 to contribute on the development of the JakartaEE server WildFly and moved to IBM in 2025.<br>I also contribute to a large number of OSS projects and I&#39;m a member of the Apache NetBeans Dream Team.<br>I&#39;ve been one of the founder of the <a href=\"http://snowcamp.io\" rel=\"noopener noreferrer\" target=\"_blank\">SnowCamp</a> conference and I&#39;m a JUG leader of <a href=\"http://alpesjug.org\" rel=\"noopener noreferrer\" target=\"_blank\">AlpesJUG</a>.<br>Recently I&#39;ve started to look into Generative AI and LangChain4J and I started the wildfly-ai-feature-pack to facilitate developing Generative AI JakartaEE applications with WildFly, contributing to <a href=\"https://github.com/langchain4j/langchain4j-cdi\" rel=\"noopener noreferrer\" target=\"_blank\">langchain4j-cdi</a> and LangChain4J along the way.<br>I also contribute to the <a href=\"https://github.com/a2aproject/a2a-java\" rel=\"noopener noreferrer\" target=\"_blank\">A2A Java SDK</a> providing a reference implementation of the <a href=\"https://a2a-protocol.org/\" rel=\"noopener noreferrer\" target=\"_blank\">A2A</a> protocol in Java.","blueskyUsername":"ehsavoie.bsky.social","company":"IBM","countryName":"France","firstName":"Emmanuel","fullName":"Emmanuel Hugonnet","id":5813,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocI_LNcfEMO7A9N-kuKXYVnc6dpm2KSwRws_s0f4sSklrbdqruzA=s96-c","lastName":"Hugonnet","linkedInUsername":"ehsavoie","mastodonUsername":"https://framapiaf.org/@ehsavoie","twitterHandle":"ehsavoie"},{"anonymizedBio":null,"bio":"Antoine is a Java Champion and former spec lead for Jakarta EE CDI. He was part of the founding team behind Quarkus at Red Hat and worked on major MicroProfile specifications such as Fault Tolerance and Health Check. Today, Antoine is an architect and technical expert at SCIAM, where he leads complex projects largely built on the very technologies he helped design. He is also the co-creator of the Vidocq framework, a modern MicroProfile stack built on Java 25 and JPMS.","blueskyUsername":"antoine.sabot-durand.net","company":"SCIAM","countryName":"France","firstName":"Antoine","fullName":"Antoine Sabot-Durand","id":18064,"imageUrl":"https://avatars.githubusercontent.com/u/489817?v=4","lastName":"Sabot-Durand","linkedInUsername":"antoinesabotdurand","mastodonUsername":"","twitterHandle":""},{"anonymizedBio":null,"bio":"Yann Blazart is a Senior Tech Lead and a passionate advocate of Jakarta EE and Quarkus. He has been in love with Java for 26 years and has been working with SCIAM since 2019. A long-time open-source contributor, Yann has taken part in projects such as WicketExtJs, TomEE, and JAX-WS Metro.<br>He is no stranger to the Devoxx stage: he ran two Hands-on Labs at Devoxx France (2012 and 2015) on Java EE, and more recently delivered a Hands-on Lab on Quarkus and Apache Ignite at Riviera Dev, Devoxx BE, and Devoxx MA in 2023. In 2024, he laid the foundations of what has since become langchain4j-cdi. In 2026, together with Antoine Sabot-Durand, he built Vidocq (<a href=\"https://vidocq.dev\" rel=\"noopener noreferrer\" target=\"_blank\">https://vidocq.dev</a>) — the first fully European MicroProfile 7.1 runtime.","blueskyUsername":"yblazart.bsky.social","company":"SCIAM","countryName":"France","firstName":"yann","fullName":"yann Blazart","id":18083,"imageUrl":"https://lh3.googleusercontent.com/a/AAcHTte0rDSnHTsgef7nTSqwxu70yJKQehjTgrVJ3oSkC7n6hlw=s96-c","lastName":"Blazart","linkedInUsername":"yblazart","mastodonUsername":"","twitterHandle":"yblazart"}],"summary":"Hands-on workshop on building production-grade AI in Java with LangChain4j. Learn CDI-based AI injection, conversational memory, function calling, declarative agent workflows, and the Supervisor Pattern. Gain practical patterns, MCP/A2A protocol knowledge, and skills to integrate robust AI agents into enterprise architectures.","timeSlots":[],"title":"🚀 From Java to AI: Build Your First Intelligent Agent System!","totalFavourites":13,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Building an AI agent is easy. Building one you&#39;d trust in production is harder. Building one that runs with no internet access, no cloud APIs, and no external services: that&#39;s a different problem entirely.<br><br>This talk follows a real journey: taking an AI-driven service from demo to production in an air-gapped defence environment where OpenAI, Azure and others are simply not an option.<br><br>The cloud disappearing changes everything: local LLMs under real performance constraints, tool-calling without external infrastructure, hallucination you can&#39;t fix by swapping an API, and human oversight in a system that talks to nothing outside its own network.<br><br>This is a production story from an environment where &quot;it works on my machine&quot; was never good enough and that&#39;s because the machine is isolated, locked down, and the usual shortcuts don&#39;t exist.","fieldGroup":null,"fieldGroupValues":[],"id":9017,"keywords":[{"name":"air-gapped"},{"name":"hallucination"},{"name":"llm"},{"name":"production"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Mihaela is a Senior Software Architect at Systematic, Romania, and an Oracle ACE Associate for Java. PhD in Artificial Neural Network algorithms, Associate Lecturer at the University of Cybernetics and Informatics in Bucharest, she is passionate about building production-grade systems and bringing real-world experience to the stage.<br><br>In her professional career, spanning over 15 years, she has worked in the telecom and defence domains with a focus on Java, Spring Boot, C, C#, Scala and Angular, and a growing interest in AI systems and agentic architectures.<br><br>Outside of tech, she holds a black belt in traditional Jiu-Jitsu, runs marathons, and travels the world whenever she gets the chance.","blueskyUsername":"","company":"Systematic","countryName":"Romania","firstName":"Mihaela","fullName":"Mihaela Gheorghe-Roman","id":3903,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-c0e31945-3009-41b0-897c-e49880577f2a.jpg","lastName":"Gheorghe-Roman","linkedInUsername":"mihaela-gheorghe-roman-6304915a","mastodonUsername":"","twitterHandle":""}],"summary":"This talk describes moving an AI service from demo to production in an air-gapped defence environment with no internet, cloud APIs, or external services. It covers local LLM constraints, offline tool-calling, hallucination risks, and the need for human oversight in a fully isolated system.","timeSlots":[],"title":"AI in the Dark: Running LLMs in Air-Gapped Production Environments","totalFavourites":11,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"Hosted model APIs are the fastest way to start building with Gen AI models, but they are not always the best long-term fit. As workloads grow, teams start running into harder questions around latency, cost, deployment flexibility, data boundaries, and performance tuning. <br><br>This talk looks at what changes when you move from calling a hosted model API to running inference yourself. We’ll break down the practical tradeoffs between hosted and self-hosted approaches, then examine how modern open inference technologies such as vLLM and llm-d are making self-hosted AI more realistic for production systems. <br><br>Rather than treating this as a debate between two camps, the session focuses on decision-making: when self-hosting is worth the added operational complexity, when hosted APIs still win, and what teams take on when they choose to own the inference layer.<br><br>We&#39;ll also unpack what sovereignty is actually worth beyond the compliance checkbox: the concrete value of controlling your data boundaries, your model lifecycle, and your independence from a single provider&#39;s roadmap and pricing, and where that value is real rather than theoretical.  <br><br>You’ll leave with a practical framework for evaluating cost, control, performance, and architectural fit in your own environment.<br><br><br>","fieldGroup":null,"fieldGroupValues":[],"id":41301,"keywords":[{"name":"sovereignty"},{"name":"latency"},{"name":"inference"},{"name":"self-hosting"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Maarten Vandeperre is an experienced software professional who recently joined Red Hat as an Appdev &amp; AI Specialized Solutions Architect. With a strong background in software development and architecture, he brings a wealth of expertise to his role. Maarten&#39;s primary focus is on application development and AI, with a particular emphasis on leveraging Red Hat&#39;s OpenShift platform from a developer&#39;s perspective.<br><br>One of Maarten&#39;s true passions lies in advocating for &quot;clean architecture&quot; as a guiding principle in software development. He firmly believes in the importance of designing software systems that are modular, maintainable, and scalable. As part of his dedication to this approach, Maarten strives to map these principles to infrastructure solutions, ensuring that the underlying technology supports and enhances the overall architecture. His deep understanding of integration technologies, such as API Gateways, Keycloak, Kafka, service mesh, and Camel, enables him to create seamless connections between systems while adhering to clean architectural principles, which empower organizations to thrive in the ever-evolving digital landscape.","blueskyUsername":"","company":"Red Hat","countryName":"Belgium","firstName":"Maarten","fullName":"Maarten Vandeperre","id":5802,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-909df07a-dfbf-40e8-9065-be12fa662faf.jpg","lastName":"Vandeperre","linkedInUsername":"maarten-vandeperre","mastodonUsername":"","twitterHandle":""},{"anonymizedBio":null,"bio":"Camille is a Solutions Architect at Red Hat with a background in AI/ML and a keen interest in open-source projects. Passionate about knowledge sharing, Camille engages in technical workshops, public speaking, and hands-on projects to help others navigate the evolving AI landscape.<br>","blueskyUsername":null,"company":"Red Hat","countryName":"Switzerland","firstName":"Camille","fullName":"Camille Nigon","id":7616,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-64d404b7-9acd-40a7-a8be-4305138ba69b.jpg","lastName":"Nigon","linkedInUsername":"camille-nigon","mastodonUsername":null,"twitterHandle":null}],"summary":"This talk compares hosted model APIs and self-hosted inference for GenAI, covering tradeoffs in cost, latency, flexibility, and data control. It highlights open tools like vLLM and llm-d, and offers a practical framework for deciding when self-hosting is worth the operational complexity.","timeSlots":[],"title":"Owning the inference layer: When and how to run your own models","totalFavourites":5,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"Home automation promises to make life easier. Naturally, I used it to make mine more complicated—and much more fun. In this session, I’ll show how a professional Java developer can turn a Raspberry Pi into a practical automation platform without abandoning familiar tools or disappearing down a Python-shaped rabbit hole.<br>We’ll tour two of my real projects. A BBQ smoker controller drives micro servos and a fan, reads half a dozen temperature sensors, and warns me when to add more wood or tame the flames. Another home server, located at the jetty, takes time-lapse photos of sunsets, measures the water level, and tells me when conditions are right for fishing—even while I’m away at Devoxx.<br>Along the way, I’ll cover the parts that usually make people hesitate: project structure, accessing hardware from Java, fast development loops, remote deployment, running services reliably, building mobile-friendly UIs for my iPhone—I want to control my BBQ smoker while fishing 🤓—and accessing those services securely over the internet.<br>No grand smart-home platform, no Python magic—just pure Java, a Raspberry Pi, sensors, motors, and a healthy willingness to overengineer everyday life.","fieldGroup":null,"fieldGroupValues":[],"id":24228,"keywords":[{"name":"raspberry pi"},{"name":"sensors"},{"name":"java"},{"name":"home automation"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Matti Tahvonen has worked on web apps for over two decades. Vaadin’s first-ever JavaScript developer, he has evolved into a Java/JVM enthusiast over the years while working with an open-source Java web framework and building a business around it. When Matti isn’t working, he spends most of his time on nature-related hobbies—and on developing software to support them.","blueskyUsername":"","company":"Vaadin","countryName":"Finland","firstName":"Matti","fullName":"Matti Tahvonen","id":24156,"imageUrl":"https://lh3.googleusercontent.com/a/AAcHTtcaGVDq7wOV5bdJHmWadJ7BtgNI9OrH-zBAbFvCpB2We-M=s96-c","lastName":"Tahvonen","linkedInUsername":"mattitahvonen","mastodonUsername":"","twitterHandle":""}],"summary":"Java developers can build practical Raspberry Pi home automation without leaving their tools. This talk shows two real projects—a BBQ smoker controller and a jetty server for photos, water levels, and fishing alerts—covering hardware access, deployment, reliable services, mobile UIs, and secure remote control.","timeSlots":[],"title":"Java, Raspberry Pi, and the Art of Overengineering Everyday Life","totalFavourites":1,"track":{"id":2758,"name":"Mind the Geek","description":"Developer candy: stuff we want to know about but dont (generally) at work, Robotics, biological computing, cybernetics, AI, new toys, tomorrows world","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-robot-arm.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"This presentation introduces Jenesis, a proof of concept build tool for Java that explores a new approach to lowering the language&#39;s entry barrier. Rather than relying on external installation or non Java configuration, Jenesis can be embedded directly as source code and executed and modified like any other Java program. This enables a more approachable and transparent build experience for both newcomers and seasoned developers. <br><br>A second focus is security. By rethinking how external dependencies are introduced and managed, Jenesis seeks to reduce software supply chain risks while maintaining reproducible builds. The tool also separates build logic from dependency declaration and leverages the Java module system to promote clearer project boundaries and improved maintainability.","fieldGroup":null,"fieldGroupValues":[],"id":4077,"keywords":[{"name":"java"},{"name":"security"},{"name":"build"},{"name":"jenesis"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":30,"freeTickets":2,"id":957,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Tools-in-Action","pause":false,"scheduleInSmallRoom":false,"slug":"tia30"},"speakers":[{"anonymizedBio":null,"bio":"Rafael works as a software consultant in Oslo, Norway. He is a proponent of static typing and a JVM enthusiast with particular interest in code instrumentation, concurrency and functional programming. Rafael blogs about software development, regularly presents at conferences and was pronounced a JavaOne Rock Star. When coding outside of his work place, he contributes to a wide range of open source projects and often works on Byte Buddy, a library for simple runtime code generation for the Java virtual machine. For his work, Rafael received a Duke&#39;s Choice award and was elected a Java Champion.","blueskyUsername":"rafaelcodes.bsky.social","company":"Scienta","countryName":"Norway","firstName":"Rafael","fullName":"Rafael Winterhalter","id":3936,"imageUrl":"https://lh3.googleusercontent.com/a-/AOh14GgLfkleUmHF-JurY4N1cWJatz7wACWQXFLsRQr1zw=s96-c","lastName":"Winterhalter","linkedInUsername":null,"mastodonUsername":"https://mastodon.social/@rafaelcodes/","twitterHandle":null}],"summary":"Jenesis is a proof-of-concept Java build tool embedded as source code, making builds easier to run, modify, and understand without external setup. It also aims to improve supply-chain security, reproducibility, and maintainability by separating build logic from dependencies and using the Java module system.","timeSlots":[],"title":"Do We Need a Build Language? Java Builds Java","totalFavourites":6,"track":{"id":2754,"name":"Java Language & Platform","description":"Project Loom, Leyden, Valhalla, Panama, and the ever evolving JVM.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-coffee-mug.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"At the Port of Rotterdam, our system had grown into far more microservices than our teams could effectively own. The result: operational overhead, fragmented domain knowledge, and an <strong>overgrown architecture</strong> that was hard to maintain and evolve.<br>In this session, I’ll share how we combined <strong>Domain-Driven Design (DDD)</strong> with <strong>Spring Modulith</strong> to consolidate our microservices into a smaller set of modular monoliths. Each microservice represents a <strong>bounded context</strong>, with modules organized around <strong>distinct business capabilities,</strong> preserving clear domain boundaries while reducing operational complexity.<br><br>You’ll learn:<br><ul><li>How to define and model business domains and bounded contexts using DDD</li><li>How to implement these domains as modular monoliths with Spring Modulith</li><li>How Spring Modulith keeps your modules clean and maintainable</li><li>Common pitfalls we encountered and how we solved them</li></ul><br>If your microservices landscape has outgrown your teams, this talk shows how modular monoliths can restore clarity, ownership, and long-term maintainability, without compromising architectural integrity.","fieldGroup":null,"fieldGroupValues":[],"id":8153,"keywords":[{"name":"domain-driven design"},{"name":"microservices"},{"name":"spring modulith"},{"name":"modular monoliths"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"<strong>Mario Klaver</strong> is a Solution Architect at the Port of Rotterdam, where he is responsible for the digital systems supporting Harbour Master operations. With a background in Java and Kotlin development, he focuses on building clean, modular software architectures for mission-critical environments. Combining hands-on engineering experience with a pragmatic approach to architecture, Mario Klaver helps teams design systems that are scalable, understandable, and built to last — even under 24/7 operational demands.","blueskyUsername":"","company":"Port of Rotterdam","countryName":"Netherlands","firstName":"Mario","fullName":"Mario Klaver","id":7629,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-a786059d-16f2-47f0-912e-4acf8bf85e7b.jpg","lastName":"Klaver","linkedInUsername":"marioklaver","mastodonUsername":"","twitterHandle":""}],"summary":"At the Port of Rotterdam, an overgrown microservices architecture created operational complexity and fragmented ownership. This talk shows how Domain-Driven Design and Spring Modulith were used to consolidate services into modular monoliths, preserving domain boundaries while improving maintainability, clarity, and team ownership.","timeSlots":[],"title":"Taming Microservice Overload: Our Journey to Modular Monoliths","totalFavourites":11,"track":{"id":1252,"name":"Architecture & Modernization","description":"Designing for agentic workflows, event-driven systems, and legacy transformation.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-blockchain.png"}},{"afterVideoURL":null,"audienceLevel":"ADVANCED","description":"What happens when your architecture doesn&#39;t just fail a performance test, but triggers a national regulatory investigation? In this session, we go inside a critical system failure at a major bank that led to a formal report to BaFin and a complete rethink of our data strategy.<br>Dealing with 11TB of data on Oracle Exadata taught us that at a certain scale—specifically, the 10-billion-record mark—standard indexing strategies and read-side duplicate checks don&#39;t just slow down; they collapse. We will reverse-engineer this incident by walking through the five critical architectural milestones:<br><ol><li><strong>First Aid: </strong>Immediate application-layer mitigation steps to halt cascading timeouts.</li><li><strong>The Refactoring Oversight:</strong> How a missing 10-day query window check, removed years prior, silently waited to trigger an 11TB full scan. </li><li><strong>The Cache Bottleneck:</strong> The high-stakes &quot;do nothing&quot; war room decision to wait for the Exadata Smart Flash Cache to warm up and recover. </li><li><strong>The Structural Flip:</strong> Moving 10kB of complex analytic queries from read-side deduplication to a write-side integrity layer. </li><li><strong>The Exit Strategy:</strong> Designing and planning a zero-loss dual-write ingestion architecture to migrate 10 billion records to Cloud PostgreSQL without CDC. </li></ol>Walk away with an unvarnished, practical blueprint for navigating the compliance-performance paradox, handling database cold starts, and executing a zero-loss cloud modernization strategy under heavy pressure.","fieldGroup":null,"fieldGroupValues":[],"id":16408,"keywords":[{"name":"migration"},{"name":"performance"},{"name":"compliance"},{"name":"database"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Martin Ladecký is an enterprise architect and systems engineer dedicated to building resilient, high-scale data infrastructure and promoting clean engineering practices. Operating within heavily regulated financial environments, he specialises in optimising core Java workloads, container stability, and complex multi-terabyte database ecosystems.<br>As an active contributor to the European open-source and tech community, Martin balances his corporate work at scale with meaningful &quot;Tech for Good&quot; initiatives. He organises the Czech Java User Group and contributes to Česko.Digital to help NPOs change lives through technology.<br>When he isn’t diving into thread dumps or troubleshooting connection pools, you can usually find him exploring local running trails or enjoying a great espresso.","blueskyUsername":"","company":"Commerzbank","countryName":"Czech Republic","firstName":"Martin","fullName":"Martin Ladecky","id":15901,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocLM4sCcWIE0PSQd8FkkwMn4URk4bJz3Rk8M-_CCXwhGJvRNM0doNA=s96-c","lastName":"Ladecky","linkedInUsername":"martin-ladeck%C3%BD-9366ba5","mastodonUsername":"","twitterHandle":""}],"summary":"A major bank incident triggered a BaFin investigation after an 11TB Oracle Exadata system failed at 10 billion records. This session examines emergency mitigation, a missed query-window check, cache warming, shifting deduplication to writes, and designing zero-loss dual-write migration to Cloud PostgreSQL.","timeSlots":[],"title":"10 Billion Records vs. The Regulator: An Architectural Post-Mortem of an 11TB Exadata Failure","totalFavourites":10,"track":{"id":1252,"name":"Architecture & Modernization","description":"Designing for agentic workflows, event-driven systems, and legacy transformation.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-blockchain.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"Integrating Artificial Intelligence (AI) into our applications can seem much more complex than simply using AI tools in our daily lives.<br>Do I need to learn a new language or adopt an entirely new technology stack?<br>In this workshop, we&#39;ll give you everything you need to integrate AI into your applications without leaving your favorite language: Java 😍. It will also be an opportunity to discover some of today&#39;s most popular frameworks, including LangChain4j, Quarkus, and more.<br>We&#39;ll explore every aspect of building applications with generative AI: customizing prompts, enriching models with your own data (RAG), calling local or remote tools (MCP), and creating agents. <br>By the end of this workshop, you&#39;ll leave with a practical toolbox that will enable you to easily integrate the power of AI models into your everyday development projects.<br>And to make things even easier, just bring your laptop and a web browser, we&#39;ll take care of the rest and provide a fully configured development environment through EasyLab 😍.","fieldGroup":null,"fieldGroupValues":[],"id":4079,"keywords":[{"name":"artificial intelligence"},{"name":"java"},{"name":"langchain4j"},{"name":"generative ai"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#00FF00","description":null,"dinerInvite":true,"duration":180,"freeTickets":2,"id":968,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":2,"name":"Hands-on Lab","pause":false,"scheduleInSmallRoom":true,"slug":"lab18"},"speakers":[{"anonymizedBio":null,"bio":"During more than 20 years in the software development profession, I was able to confront myself with many different technologies. And it is this diversity that makes me continue to love our job so much.<br>For 5 years now, I have had the chance to evolve within OVHcloud as a developer advocate. This position allows me to discover new technologies or disciplines such as Artificial Intelligence or &quot;native cloud&quot; for example.<br>But my heart of old Java developer can not move too far from this technology which is the common thread of my many years as a developer. It is with humility that I share this experience but also the novelties of our ecosystem through my conferences and the TADx meetup co-created in Tours.","blueskyUsername":"wilda.bsky.social","company":"OVHcloud","countryName":"France","firstName":"Stéphane","fullName":"Stéphane Philippart","id":3925,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-9d422934-263f-49b6-a07c-fbc56af630a9.jpg","lastName":"Philippart","linkedInUsername":"philippartstephane","mastodonUsername":null,"twitterHandle":"wildagsx"},{"anonymizedBio":null,"bio":"I&#39;m working at Sopra Steria as TechAdvocate and Engineering Platform leader.<br><br>In my spare time, I&#39;m the co-founder of Volcamp and of the meetup GreenTechAuvergne, also a GitLab Hero &amp; a Plumber ambassador. I love coding and opensource, some of my contributions to the community : svn2git, gitlab-emoji and easylab (https://github.com/yodamad)<br><br>All my contributions are available at https://me.yodamad.fr, I&#39;m speaking in conferences and rewriting blog articles since 2022.","blueskyUsername":"yodamad03.bsky.social","company":"Sopra Steria","countryName":"France","firstName":"Matthieu","fullName":"Matthieu Vincent","id":3928,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-f0a49d53-2c43-4116-b527-51c4054b7af8.jpg","lastName":"Vincent","linkedInUsername":"matthieu-vincent-ab25064","mastodonUsername":"","twitterHandle":"yodamad03"}],"summary":"Workshop on integrating generative AI into Java applications using tools like LangChain4j and Quarkus. Covers prompt engineering, RAG, tool calling (MCP), and agents, with a ready-to-use EasyLab environment for hands-on learning.","timeSlots":[],"title":"👩‍💻 Developing with AI: What if it were as simple as adding a library? 🧑‍💻","totalFavourites":10,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Stuck in a legacy system that needs modernizing? Feel like the best course of action is to throw it in a dumpster, light it on fire and rewrite everything from scratch - maybe even in a different language?<br><br>Hold that thought. While it may be tempting to start a rewrite, rewrites of complicated systems rarely succeed for multiple reasons. Chief among them is time and the fact that not everything can stop and wait for the rewrite, but another important contributor is the second system effect, which usually causes rewrites to be over-engineered and bloated in comparison to what they replace<br><br>In this talk, I&#39;ll share my experiences with the Strangler Fig pattern, a better approach where the original system is gradually replaced by breaking out or rewriting parts into separate systems. I&#39;ll also talk about combining this with Domain Driven Design and how to use the new design to execute an Inverse Conway Manoeuvre to ensure you&#39;re working with Conway&#39;s law and not against it.","fieldGroup":null,"fieldGroupValues":[],"id":5538,"keywords":[{"name":"strangler"},{"name":"rewrite"},{"name":"legacy"},{"name":"conway"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Raniz is a programmer, architect, speaker and coach at factor10. He is a problem solver who keeps track of the bigger picture. He is prestigeless, likes to get into new domains, and loves sharing knowledge and ideas. Raniz has worked with system- and software architecture at several companies since 2010 and has been with factor10 since 2021. When not working he&#39;s into beer brewing, sourdough bread, 3D printing and triathlons.","blueskyUsername":"raniz.se","company":"factor10","countryName":"Sweden","firstName":"Daniel","fullName":"Daniel Raneland","id":5828,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-2252e0af-bbe1-4c6f-9ab8-0858a53ce963.jpg","lastName":"Raneland","linkedInUsername":"raneland","mastodonUsername":"https://mastodon.online/@raniz","twitterHandle":""}],"summary":"The talk argues against full rewrites of legacy systems, citing risk and the second system effect. It promotes the Strangler Fig pattern for gradual replacement, combined with Domain-Driven Design and the Inverse Conway Manoeuvre to align system architecture with team structure.","timeSlots":[],"title":" Strangling the dragon: modernizing legacy systems with the Strangler Fig pattern ","totalFavourites":11,"track":{"id":1252,"name":"Architecture & Modernization","description":"Designing for agentic workflows, event-driven systems, and legacy transformation.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-blockchain.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"In 2025, containers became the default route to production for the global software industry, and the container supply chain became one of its largest security liabilities. With Docker Hardened Images (DHI), Docker moved beyond image distribution into supply-chain hardening—opening a catalog of continuously patched images built on familiar Alpine and Debian roots.<br><br>What originated out of a commercial solution was open-sourced in the end of 2025.<br><br>This short talk examines DHI not as a product announcement, but as a signal for where the ecosystem is heading: transparent CVE reporting, minimal distroless-style bases, signed provenance, hardened helm charts, and free/open foundations for regulated workloads.<br><br>With this talk I want to give a quick insight on what you need to know to use them.","fieldGroup":null,"fieldGroupValues":[],"id":25674,"keywords":[{"name":"supply-chain"},{"name":"containers"},{"name":"hardening"},{"name":"provenance"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":30,"freeTickets":2,"id":957,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Tools-in-Action","pause":false,"scheduleInSmallRoom":false,"slug":"tia30"},"speakers":[{"anonymizedBio":null,"bio":"Matthias Haeussler is VP Expert at CGI, university lecturer for distributed systems, Linux Foundation trainer, Docker Captain, awarded ambassador of Cloud Foundry, and meetup organizer. His main focus is enabling people in strategy and technology for the entire cloud-native software engineering lifecycle. This includes guiding clients through hands-on implementation, overseeing deployment processes, skill enablement, and ensuring successful migrations. Previously, he was employed at IBM R&amp;D Germany for over 15 years. He has teaching experience from lectures at multiple universities in Stuttgart. He is also a frequent speaker at various national and international conferences and meetups, including Devoxx (Devoxx Champion 2024), KubeCon, Spring One Platform, Open Source Summit, Spring IO, IBM InterConnect, and WJAX.","blueskyUsername":"maeddes.bsky.social","company":"CGI","countryName":"Germany","firstName":"Matthias","fullName":"Matthias Haeussler","id":25505,"imageUrl":"https://lh3.googleusercontent.com/a-/AFdZucpKmvF9AQtSdjlnowzaJu-cQF7m_qoCuYAs1xV16-I=s96-c","lastName":"Haeussler","linkedInUsername":"matthiashaeussler","mastodonUsername":"","twitterHandle":"maeddes"}],"summary":"This talk introduces Docker Hardened Images (DHI) as an open-sourced, supply-chain-hardened image catalog for production containers. It highlights transparent CVE reporting, minimal base images, signed provenance, hardened Helm charts, and their role in secure, regulated workloads—plus what users need to know to adopt them.","timeSlots":[],"title":"Docker Hardened Images - what you need to know","totalFavourites":9,"track":{"id":1254,"name":"Cloud Native, Data & Infrastructure","description":"Kubernetes, platform engineering, vector DBs, model serving, and GPU orchestration.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-server-settings.png"}},{"afterVideoURL":null,"audienceLevel":"ADVANCED","description":"OpenTelemetry makes traces, metrics, and logs appear as if by magic, but what actually happens behind the Java agent we routinely add to our applications?<br><br>This talk goes where most developers never look. You’ll see how the OpenTelemetry agent sneaks into your JVM, intercepts class loading, and rewrites your application on the fly. We’ll explore the power of the javaagent mechanism, the Instrumentation API, and the internals of ByteBuddy that allow instrumenting Spring, Servlets, JDBC, or gRPC without changing a single line of your code. Your application is running, but not quite the way you think it is.<br><br>You’ll leave with a clear understanding of the real impact these changes can have in production: latency, allocations, potential conflicts, and behavior modified at runtime, along with practical techniques to diagnose what is really happening under the hood.<br><br>If you’re using OpenTelemetry without really knowing what it’s doing inside your JVM, or if you want to finally understand how an agent can rewrite your application in production, then welcome: this session opens the black box… and reveals the magic.","fieldGroup":null,"fieldGroupValues":[],"id":5519,"keywords":[{"name":"instrumentation"},{"name":"bytebuddy"},{"name":"javaagent"},{"name":"opentelemetry"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":30,"freeTickets":2,"id":957,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Tools-in-Action","pause":false,"scheduleInSmallRoom":false,"slug":"tia30"},"speakers":[{"anonymizedBio":null,"bio":"Bruce Bujon is a Senior Software Engineer at Datadog, and lives near Paris. He spent about 15 years building distributed systems using the Java ecosystem. Today, he also leads the Paris JUG, and contributes to Open Source projects related to privacy like its ad-blocker AdAway. When he is not working, he is probably reverse engineering some applications or soldering the quirky prototype of its next gadget.","blueskyUsername":"hardcoding.fr","company":"Datadog","countryName":"France","firstName":"Bruce","fullName":"Bruce Bujon","id":5818,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-ddf330d5-d335-49d8-89b6-2d852531100e.jpg","lastName":"Bujon","linkedInUsername":"bruce-bujon","mastodonUsername":"","twitterHandle":"HardCoding"}],"summary":"This talk explains how the OpenTelemetry Java agent works inside the JVM: class loading interception, runtime bytecode rewriting, and ByteBuddy-based instrumentation of frameworks like Spring, JDBC, and gRPC. It also covers production impacts such as latency, allocations, conflicts, and debugging techniques.","timeSlots":[],"title":" The Magic of OpenTelemetry: Rewriting Your App in Production ","totalFavourites":7,"track":{"id":2754,"name":"Java Language & Platform","description":"Project Loom, Leyden, Valhalla, Panama, and the ever evolving JVM.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-coffee-mug.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"Every software project starts with architectural decisions—principles and patterns meant to guide the system’s evolution. But as codebases grow, how do you ensure those decisions remain intact? That’s where ArchUnit comes in. By expressing architectural rules as tests, ArchUnit lets you verify your architecture automatically with every build. <br><br>Taikai takes this concept further. It builds on ArchUnit by providing a ready-to-use collection of architectural rules for popular technologies, helping teams enforce architectural consistency and best practices effortlessly. In this session, you’ll learn how Taikai can make your architecture more testable, maintainable, and resilient from day one.","fieldGroup":null,"fieldGroupValues":[],"id":8196,"keywords":[{"name":"architecture"},{"name":"taikai"},{"name":"archunit"},{"name":"testing"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":30,"freeTickets":2,"id":957,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Tools-in-Action","pause":false,"scheduleInSmallRoom":false,"slug":"tia30"},"speakers":[{"anonymizedBio":null,"bio":"Gunter is a Software Architect/Requirements Engineer with 25 years of experience in different roles in software engineering. Since 2005 he is developing Mission Critical Software systems via his employer ICT TriOpSys.<br>He likes sharing knowledge about the Java ecosystem and does so by means of blogging, many internal workshops and presentations at ICT TriOpSys and public speaking.","blueskyUsername":"mydeveloperplanet.com","company":"ICT TriOpSys","countryName":"Netherlands","firstName":"Gunter","fullName":"Gunter Rotsaert","id":8673,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-3ce83e03-89be-4443-a0b5-015cef45aa7e.jpg","lastName":"Rotsaert","linkedInUsername":"gunter-rotsaert-5402a912","mastodonUsername":"","twitterHandle":"mydevlprplanet"}],"summary":"The session shows how ArchUnit turns architectural decisions into automated tests, and how Taikai extends it with ready-made rules for popular technologies. Together, they help teams enforce consistent architecture, best practices, and long-term maintainability from the start.","timeSlots":[],"title":"Testing Architecture Made Simple","totalFavourites":5,"track":{"id":1252,"name":"Architecture & Modernization","description":"Designing for agentic workflows, event-driven systems, and legacy transformation.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-blockchain.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Most APIs we use today were designed for human developers. That worked because humans compensate: they read docs, infer conventions, recognize dangerous operations, and fill in what the interface never made explicit.<br><br>Now those same APIs have a second consumer: LLM-based agents, copilots, and agentic workflows. This new consumer does not compensate reliably. It takes descriptions literally, chooses wrong actions confidently, and cannot infer the operational boundaries your API never stated.<br><br>The naive response is to wrap existing APIs with tool descriptions and call it done. In practice, some capabilities can be wrapped as-is, some must be reshaped into narrower intent-level tools, and some expose deeper design flaws that need real redesign.<br><br>In this talk, I’ll share a practical framework for retrofitting existing APIs and platform capabilities for agent consumption, based on real platform examples. We’ll look at concrete before-and-after cases, discuss the tradeoffs of each strategy, and see why designing for agents often improves the platform for humans too.<br>","fieldGroup":null,"fieldGroupValues":[],"id":7040,"keywords":[{"name":"tooling"},{"name":"apis"},{"name":"agents"},{"name":"redesign"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Spaniard lost in Brittany, coder, speaker, dreamer and all-around geek.<br><br>Horacio is VP of DevRel at <a href=\"https://clever-cloud.com/\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"color: rgb(82, 133, 196);\">Clever Cloud</a>. He is also the co-founder and leader of the <a href=\"https://twitter.com/FinistDevs\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"color: rgb(82, 133, 196);\">FinistDevs</a> and <a href=\"https://twitter.com/RdvSpeakers\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"color: rgb(82, 133, 196);\">Rdv des Speakers</a> communities.<br><br>Horacio loves web development in general and everything around Web Components and standards web in particular, but he also loves to discuss Kubernetes, AI and cloud in general.","blueskyUsername":"lostinbrittany.bsky.social","company":"Clever Cloud","countryName":"France","firstName":"Horacio","fullName":"Horacio Gonzalez","id":7620,"imageUrl":"https://lh3.googleusercontent.com/a-/AOh14GgnPwnK39sExPDAN6yNucN0bQWpR_rhZT-VkdLFC10=s96-c","lastName":"Gonzalez","linkedInUsername":"horaciogonzalez","mastodonUsername":"","twitterHandle":"LostInBrittany"}],"summary":"The talk explores how to adapt human-designed APIs for LLM agents, which interpret instructions literally and need explicit boundaries. It presents a practical framework for retrofitting APIs into agent-ready tools, with real examples, tradeoffs, and cases where redesign improves both agent and human usability.","timeSlots":[],"title":"Wrap, Reshape, or Redesign: Retrofitting Your APIs for a World of Agents","totalFavourites":4,"track":{"id":1252,"name":"Architecture & Modernization","description":"Designing for agentic workflows, event-driven systems, and legacy transformation.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-blockchain.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Every programming language except Assembly has a runtime - some bundled code that isn&#39;t a direct output of the compiler - that is used by most programs. Some programming languages, Java among them, have a relatively large runtime. Programming languages with relatively small runtimes tend to extract more information and make more decisions at compile-time, and some may intuit that this makes such programs faster. As we&#39;ll see, this intuition is wrong. A large runtime can not only make it more convenient to write many programs but also improve program performance.<br><br>AOT compilation and manual (or statically-determined) memory management introduce performance overheads that can become significant especially in large programs. While the JVM got its start as an effective way to abstract away differences in operating systems and hardware, it quickly became apparent that JIT compilers and moving garbage collectors serve as optimization vehicles for the overheads incurred by low-level languages with smaller runtimes, making the JVM an ideal target for large programs.<br><br>We will look at how big, sophisticated runtimes can make programs more efficient, see why the simplistic view of the convenience/performance tradeoff is wrong and how the real tradeoffs are more complex and interesting.","fieldGroup":null,"fieldGroupValues":[],"id":49252,"keywords":[{"name":"performance"},{"name":"java"},{"name":"runtime"},{"name":"jit"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Ron is an architect in the Java Platform Group at Oracle","blueskyUsername":null,"company":"Oracle","countryName":"United Kingdom","firstName":"Ron","fullName":"Ron Pressler","id":49102,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-be6279f3-d001-4451-baa8-03a4ca9af02d.jpg","lastName":"Pressler","linkedInUsername":null,"mastodonUsername":null,"twitterHandle":null}],"summary":"Large runtimes, like the JVM, can improve both convenience and performance by enabling JIT compilation and garbage collection. This challenges the idea that smaller runtimes and more compile-time decisions are always faster, showing the real tradeoffs are more complex.","timeSlots":[],"title":"Big Runtimes Make Efficient Programs","totalFavourites":2,"track":{"id":2754,"name":"Java Language & Platform","description":"Project Loom, Leyden, Valhalla, Panama, and the ever evolving JVM.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-coffee-mug.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Setting up network exposition of a Kubernetes application can be a real puzzle 🧐.<br><br>We have on one hand, standard APIs with Ingress, Service of type: LoadBalancer, and even NodePords…<br>And in the other hand, some proprietary APIs, from Ingress controllers or Services meshes… more advanced, but not standard 😅.<br><br>After so many years of solution and confusion, a new API, named GatewayAPI, arise to solve these problems for developers, cluster &amp; infrastructure operators 🤯!<br><br>We&#39;ll discover together this new API, standard and advanced features, implementations available and of course, how to install it in your cluster ⚡️","fieldGroup":null,"fieldGroupValues":[],"id":17752,"keywords":[{"name":"ingress"},{"name":"kubernetes"},{"name":"gatewayapi"},{"name":"networking"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Google Developer Expert on Google Cloud &amp; Kotlin, Gitlab Hero, I am above all passionate about tech, languages, infrastructure, and automation.<br><br>On a daily basis, I work with languages such as Kotlin, Java, SQL, and YAML.<br>Leveraging the power of the Google Kubernetes Engine and GitLab&#39;s Continuous Integration, I deploy and manage applications seamlessly.<br><br>I am an ardent advocate of agility and DevOps, and I had the privilege of guiding teams in adopting these principles successfully.<br><br>From code quality analysis to unit or end-to-end tests setup all the way to continuous deployment and operation, I ensure a project&#39;s journey from inception to production is smooth and efficient.<br><br>Currently, I&#39;m Principal Software Engineer at Gradle, focusing on the development of Develocity. This groundbreaking product enhances developer productivity by reducing build and test times, while also providing valuable insights into all aspects of the development process.","blueskyUsername":"davinkevin.fr","company":"Gradle Technologies","countryName":"France","firstName":"Kevin","fullName":"Kevin Davin","id":18051,"imageUrl":"https://lh3.googleusercontent.com/a-/AOh14GixMXzV-OauByb3I8bm3vwjb5AgSET9a6gyfvxGbw=s96-c","lastName":"Davin","linkedInUsername":"davinkevin","mastodonUsername":"https://mastodon.davinkevin.fr/@davinkevin","twitterHandle":"davinkevin"}],"summary":"The text introduces Kubernetes network exposure challenges and explains how the new standard Gateway API aims to simplify them. It covers standard and proprietary options, advanced features, available implementations, and how to install Gateway API in a cluster.","timeSlots":[],"title":"🌉 Gateway API, 10 years of maturation for a new Kubernetes network API","totalFavourites":4,"track":{"id":1254,"name":"Cloud Native, Data & Infrastructure","description":"Kubernetes, platform engineering, vector DBs, model serving, and GPU orchestration.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-server-settings.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Asking the right questions is more powerful than having the right answers. As technologists, we quickly jump into solution mode and try to help by offering solutions and sometimes even taking on other people&#39;s problems as our own.<br><br>This is not our fault; we&#39;ve been trained this way. However, computer problems and people&#39;s problems are often very different, and solving or taking on somebody else&#39;s problem not only burdens us but also robs them of an opportunity to grow.<br><br>If you feel like every problem in your organization or team constantly gravitates towards you, if you wonder why people just don&#39;t &quot;learn this stuff,&quot; or if you are looking to become better at helping others grow, this talk is for you!<br><br>In this talk, we will go over basic coaching skills to help you help others - everything from properly listening to asking the right questions. We&#39;ll cover different formats from impromptu coaching to more formal coaching and how to use coaching skills to coach up and sideways in your organization.<br><br>Come to this talk if you are interested in making the people around you grow and excel and, in the process, create more time to work on your problems, not theirs.","fieldGroup":null,"fieldGroupValues":[],"id":14457,"keywords":[{"name":"questions"},{"name":"growth"},{"name":"listening"},{"name":"coaching"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Martin is a technical advisor and leadership coach with over 20 years of experience in the field.<br><br>Martin&#39;s helps organizations bridge the communication gap between tech and business by guiding and inspiring people. Over his long tenure as a consultant, he has worked with organizations of different sizes and industries, taking on many different roles. This has given him a unique perspective on software, people, and organizations that he leverages today to help teams deliver products customers love.<br><br>Ultimately, Martin believes technology is a powerful tool and is passionate about wielding it in a way that positively impacts the world.","blueskyUsername":"mazur.ai","company":"Mazur & Co","countryName":"Sweden","firstName":"Martin","fullName":"Martin Mazur","id":14652,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-b8a1d998-1999-4ed9-b607-cf9cef8e59e4.jpg","lastName":"Mazur","linkedInUsername":"mazur","mastodonUsername":"https://hachyderm.io/@mazur","twitterHandle":null}],"summary":"This talk teaches technologists basic coaching skills—listening, asking better questions, and using informal to formal coaching—to help others solve their own problems, foster growth, and reduce the burden of constantly taking on teammates’ issues.","timeSlots":[],"title":" Coder, Coach, Catalyst - using questions to make people grow ","totalFavourites":8,"track":{"id":1253,"name":"People, Practices & Career","description":"Leading teams, engineering culture, and career resilience.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-deepfake-ai.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"The MCP Spec &amp; Implementations have quickly evolved since initial release almost 2 years ago. This session covers what has changed and how it impacts MCP server developers. You will learn about the new stateless transport, new auth (CIMD), and the extensions including MCP Apps, Tasks, and Skills over MCP. You learn from code examples and demos how you can build MCP servers that utilize the latest MCP features &amp; approaches.","fieldGroup":null,"fieldGroupValues":[],"id":21691,"keywords":[{"name":"extensions"},{"name":"authentication"},{"name":"mcp"},{"name":"stateless"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Professional software developer since 1997, with much of that time spent helping developers build software that doesn&#39;t suck. A Typed Pure Functional Programming zealot who often compromises on his ideals to just get stuff done. Currently a Developer Advocate for AWS and AAIF Technical Committee member.","blueskyUsername":"jamesward.com","company":"AWS","countryName":"United States of America","firstName":"James","fullName":"James Ward","id":21535,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-607b90ef-e5ff-4f70-b91c-a3082787114d.jpg","lastName":"Ward","linkedInUsername":"JamesWard","mastodonUsername":"","twitterHandle":"JamesWard"}],"summary":"The session reviews recent MCP spec and implementation changes and their impact on server developers. It covers stateless transport, new CIMD authentication, and extensions like MCP Apps, Tasks, and Skills. Code examples and demos show how to build servers using the latest MCP features and approaches.","timeSlots":[],"title":"MCP 2.0 - Stateless, New Auth (CIMD), and Exciting Extensions","totalFavourites":11,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"<strong style=\"background-color: rgb(255, 255, 255); color: rgb(26, 28, 31);\">What happens when a software architect treats a novel like a production system?</strong><br><br>In this talk, I will share how I built <strong style=\"background-color: rgb(255, 255, 255); color: rgb(26, 28, 31);\"><em><a href=\"https://www.amazon.com/dp/B0GX347M5C\" rel=\"noopener noreferrer\" target=\"_blank\">The Human Protocol</a></em></strong>, a cyber-realist techno-thriller about AI, using the same engineering principles I apply to software architecture: context engineering, spec-driven development, harness design, versioning, review loops, and automated publishing pipelines.<br><br>The session is not about “asking ChatGPT to write a book.” It is a technical case study in designing a<strong style=\"background-color: rgb(255, 255, 255); color: rgb(26, 28, 31);\"> controlled human-AI creative workflow</strong>. I will show how I created a lore-as-code repository, a governance package to prevent context drift, specialized AI roles for design, drafting and review, and a DevOps-style pipeline to produce manuscript formats for publication.<br><br>I will also cover the project’s transmedia extension: an <strong style=\"background-color: rgb(255, 255, 255); color: rgb(26, 28, 31);\"><a href=\"https://the-human-protocol.com\" rel=\"noopener noreferrer\" target=\"_blank\">ARG website</a></strong> where clues hidden in the book unlock in-universe content. This was built through spec-driven development anchored in the same lore repository, turning the manuscript into both a story and an interactive system.<br><br>You will leave with practical patterns for managing long-running AI-assisted projects: how to structure context, debug hallucinations and inconsistencies, separate agent roles, preserve human intent, and ship complex creative artifacts with AI without losing authorship.<br>","fieldGroup":null,"fieldGroupValues":[],"id":5526,"keywords":[{"name":"architecture"},{"name":"ai"},{"name":"devops"},{"name":"transmedia"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":null,"description":null,"dinerInvite":true,"duration":40,"freeTickets":1,"id":5151,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":null,"name":"Lunch Talk","pause":false,"scheduleInSmallRoom":false,"slug":"lunch-talk"},"speakers":[{"anonymizedBio":null,"bio":"I am a technologist and Content Producer with <strong>over 25 years of experience</strong> across software engineering, open-source communities, and emerging tech. My current focus is on the frontiers of Generative AI, specifically local LLMs, image generation (Stable Diffusion), and Agentic AI.<br><br>Throughout my career, I’ve balanced technical leadership with a passion for knowledge sharing. I created the QSOS method for <strong>open source</strong> evaluation and recently explored the intersection of &quot;vibe-coding&quot; and storytelling by publishing <strong>AI-assisted techno-thrillers</strong>.<br><br>A frequent speaker at international conferences like Devoxx, Open Source Experience, and various DevFests, I enjoy <strong>deconstructing complex ecosystems</strong>—from Web3 architecture to multimodal AI—into clear, actionable insights. I also bring a unique perspective to tech by integrating holistic <strong>yoga </strong>practices into my approach to innovation and engineering.<br><br>More about me: https://raphiki.github.io/","blueskyUsername":"raphiki.bsky.social","company":"Worldline","countryName":"France","firstName":"Raphael","fullName":"Raphael Semeteys","id":1801,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-b486eee1-a8c4-41b6-9825-c2d3c8761c57.jpg","lastName":"Semeteys","linkedInUsername":"raphaelsemeteys","mastodonUsername":"https://mastodon.social/@raphiki","twitterHandle":"RaphaelSemeteys"}],"summary":"A technical case study on using software-engineering practices to co-author a novel with AI. It covers context engineering, spec-driven workflows, role separation, governance to prevent drift, automated publishing, and an ARG extension, offering practical methods for managing long-running AI creative projects while preserving human authorship.","timeSlots":[],"title":"From Developer to Story Builder: Engineering a Novel, an ARG, and a Transmedia World with AI","totalFavourites":4,"track":{"id":2758,"name":"Mind the Geek","description":"Developer candy: stuff we want to know about but dont (generally) at work, Robotics, biological computing, cybernetics, AI, new toys, tomorrows world","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-robot-arm.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"The Cyber Resilience Act (CRA) will be arriving in the European Union in 2027, and with it a lot of new obligations. What we already consider good practices in our software industry today will be required by law tomorrow. In this talk, we will take a look at what&#39;s inside the CRA, who will be affected by it, and what new requirements we will have to fulfil. After that, we will take a look at tooling to generate Software Bills of Materials (SBOMs) for our Java, .NET and JavaScript projects, as well as how to visualise and integrate them into existing CI workflows. Last but not least, we will take a look at how to handle the required vulnerability management with (semi-)automated dependency updates by utilising tools like Dependabot or Renovate and how to reduce dependencies with distroless images.","fieldGroup":null,"fieldGroupValues":[],"id":4051,"keywords":[{"name":"vulnerability management"},{"name":"sbom"},{"name":"dependabot"},{"name":"cyber resilience act"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Christian Schabetsberger, the world&#39;s okayest developer, is a Freelance Software Engineer &amp; Architect from Linz, Austria with over a decade of experience.<br>Having spend half of his life in the .NET ecosystem (amongst others), he likes to stay on the bleeding edge of technology to become the (tech-savvy) ninja he pretends to be since he is six.<br>He is also an active community member, organising the .NET Meetup in Linz and supporting other local user groups. Furthermore he is a member of the .NET Foundation.","blueskyUsername":"cschabetsberger.bsky.social","company":"Finxit IT Solutions","countryName":"Austria","firstName":"Christian","fullName":"Christian Schabetsberger","id":3651,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-e4712227-61ca-4e98-85b2-5252890b3760.jpg","lastName":"Schabetsberger","linkedInUsername":"christian-schabetsberger-59406b180","mastodonUsername":"https://mstdn.social/@cschabetsberger","twitterHandle":""}],"summary":"The talk explains the EU Cyber Resilience Act, its impact, and new compliance requirements. It covers SBOM generation for Java, .NET, and JavaScript projects, CI integration, vulnerability management with Dependabot/Renovate, and reducing risk through automated dependency updates and distroless images.","timeSlots":[],"title":"CRAcking Compliance - The EU Cyber Resilience Act","totalFavourites":7,"track":{"id":1255,"name":"Security, Trust & Compliance","description":"Guardrails, prompt injection defence, model governance, and supply-chain security.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-surveillance-camera.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"In the early 1970s, the world was grooving to disco, slide rules were essential tools for engineers, and pocket calculators were considered groundbreaking technology. During this era, NASA engineers achieved something extraordinary—they built Voyager’s data systems with incredible foresight, creating technology that could transmit signals across billions of miles and survive the noise of deep space.<br><br>Fast-forward to today, and we’re still decoding these signals. In this talk, we’ll explore how Voyager’s 1970s-era coding genius—developed without modern computing tools—collides with today’s technological breakthroughs. We’ll examine the Viterbi algorithm, a contemporary marvel from the same era, and compare it with the exciting potential of machine learning, a cutting-edge approach that could transform how we process interstellar data.<br><br>This isn’t just a history lesson—it’s an exciting adventure in algorithms and innovation. Expect examples of the science and demonstrations of real encoding and decoding methods using hardcore coding and modern machine-learning counterparts. Whether you’re a developer, a data scientist, or a space tech enthusiast, you’ll walk away with fresh insights, some serious “wow” moments, and a new appreciation for the intersection of vintage tech and next-gen innovation.","fieldGroup":null,"fieldGroupValues":[],"id":22946,"keywords":[{"name":"machinelearning"},{"name":"decoding"},{"name":"viterbi"},{"name":"voyager"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Engineer at Dataworkz and a proud dyslexic, passionate about turning raw data into real-world value. I blend deep technical know-how (data pipelines, streaming, cloud, algorithms) with a pragmatist’s mindset, creativity, and a dash of humor — because good ideas come quicker when people enjoy the journey. I make complex topics approachable, whether exploring legacy space tech algorithms or building modern AI systems. Outside of coding, I’m an avid sailor, photography enthusiast, and hands-on tinkerer, always curious and experimenting. For me, code is more than logic — it’s a tool to shape ideas, solve problems, and inspire collaboration, while my personal style keeps talks lively and relatable.","blueskyUsername":"","company":"Dataworkz","countryName":"Netherlands","firstName":"Pieter","fullName":"Pieter van der Meer","id":23024,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-7d190057-cbb1-4e91-bd32-8b10e9e50a71.jpg","lastName":"van der Meer","linkedInUsername":"pevandermeer","mastodonUsername":"","twitterHandle":""}],"summary":"This talk explores Voyager’s 1970s-era communication coding, the Viterbi algorithm, and modern machine-learning approaches to decoding deep-space signals. It compares vintage engineering ingenuity with today’s tools through real examples and demonstrations, showing how classic algorithms and AI can help process interstellar data.","timeSlots":[],"title":"Decoding the Cosmos: Voyager's 1970s Algorithms Meet Today's Cutting-Edge Tech","totalFavourites":6,"track":{"id":2758,"name":"Mind the Geek","description":"Developer candy: stuff we want to know about but dont (generally) at work, Robotics, biological computing, cybernetics, AI, new toys, tomorrows world","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-robot-arm.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"After years of rounding off a square peg to fit into Java&#39;s mainline, JEP 401&#39;s value objects are coming to OpenJDK in its first preview. It is a single keyword change, you don&#39;t even need to recompile your libraries, yet there&#39;s so much happening. What you can learn here:<br><br><ul><li>What value objects are, why and how you want to use them</li><li>What value objects do for the Java Virtual Machine, and therefore your code</li><li>Where Is OpenJDK going with this: &quot;healing the rift&quot; between objects and primitives</li></ul><br>There will be some project history, concerning peak Valhalla prototype performance, and how all the dangerous bits were smoothed off to make it usable. There will be some JVM engineering details on implementation and a peek at some wild and crazy ideas for the future, hoping to be a few thesis papers in the coming months. The audience should come away with an understanding that, whilst we don&#39;t quite yet have `List&lt;int&gt;`, there is a path to get there, which you will see with JEP 401.<br><br>In the meantime, JEP 401 Value Objects, holds plenty of subtle language features and interactions with the JVM to help your code be better from a safety and clarity point of view and also some performance wins along the way, with the promise of more to come...","fieldGroup":null,"fieldGroupValues":[],"id":21694,"keywords":[{"name":"valueobjects"},{"name":"valhalla"},{"name":"openjdk"},{"name":"javavm"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Hands on Java Virtual Machine engineering for over 25 years, first with the JRockit VM and then Hotspot JVM. Involved in Project Valhalla over 10 years now, I might have filed an almost 3000 commit PR to integrate the first really big step in getting Valhalla into OpenJDK. On the side I manage Oracle&#39;s Java Platform Group engineering site in Stockholm Sweden.<br><br>&quot;Kiwede&quot; - New Zealander living in Sweden","blueskyUsername":"simmsupnorth.bsky.social","company":"Java Platrform Group - Oracle","countryName":"Sweden","firstName":"David","fullName":"David Simms","id":21537,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocIMYsGAPqwvdrbippzL2I0_rzyyLfPCLWgDp-0oAPQcJdnD5-Pcfg=s96-c","lastName":"Simms","linkedInUsername":"","mastodonUsername":"https://mastodon.social/@SimmsUpNorth","twitterHandle":""}],"summary":"JEP 401 Value Objects arrives in OpenJDK preview, enabling a new Java type model with minimal code changes. The talk explains what value objects are, JVM benefits, Valhalla history, implementation details, and the path toward bridging objects and primitives, including future support like `List<int>`.","timeSlots":[],"title":"Why it takes 3000 commits to bring Valhalla's value objects to the JDK","totalFavourites":12,"track":{"id":2754,"name":"Java Language & Platform","description":"Project Loom, Leyden, Valhalla, Panama, and the ever evolving JVM.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-coffee-mug.png"}},{"afterVideoURL":null,"audienceLevel":"ADVANCED","description":"Historically, high-performance AI workloads have often depended on Python ecosystems, JNI-based bindings, or complex native integrations, leaving Java as a secondary choice. But the Java platform has changed dramatically. With the Foreign Function &amp; Memory (FFM) API, the Vector API, and modern JVM capabilities, Java is becoming a first-class platform for AI development.<br><br>In this session, we&#39;ll show how the Foreign Function &amp; Memory API and the Vector API enable a fully Java-native AI stack capable of running efficiently on both GPUs and CPUs. Using the latest release of Deep Netts, we&#39;ll demonstrate direct CUDA integration through the FFM API—without JNI or Python—and CPU acceleration using the Vector API for SIMD execution.<br><br>We&#39;ll present the architecture behind this approach, explain key implementation decisions, and compare it with traditional JNI- and Python-based solutions. The session also includes a real-world enterprise use case: AI-powered fraud detection, where low-latency inference and predictable performance are critical for banking and payment systems.<br><br>Whether you&#39;re interested in modern Java, high-performance computing, or enterprise AI, you&#39;ll leave with a practical understanding of how FFM, the Vector API, and GPU acceleration are transforming Java into a first-class platform for building and deploying production AI applications.","fieldGroup":null,"fieldGroupValues":[],"id":22947,"keywords":[{"name":"java"},{"name":"vector"},{"name":"ffm"},{"name":"gpu"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Zoran Sevarac is a seasoned software engineer, university professor of Artificial Intelligence, and passionate Java developer with more than two decades of experience in software engineering, AI research, and open-source innovation.<br>He is the creator of two pioneering AI development platforms built entirely in Java — Neuroph and Deep Netts — which made AI development more accessible to the Java community. His work bridges modern AI technologies with the reliability, performance, and scalability of the Java ecosystem.<br>A Duke’s Choice Award winner, Java Champion, and member of the JCP Executive Committee, Zoran has been instrumental in driving the evolution of AI support in Java. His mission is to simplify AI adoption, enable GPU acceleration through Project Panama and the Vector API, and bring high-performance, energy-efficient, and FinOps-friendly AI to enterprise systems.","blueskyUsername":"","company":"Deep Netts ","countryName":"Serbia","firstName":"Zoran","fullName":"Zoran Sevarac","id":23009,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-c08270b6-3020-4fc8-a6aa-395616d4bd0f.jpg","lastName":"Sevarac","linkedInUsername":"zoran-sevarac-phd-49a9a411","mastodonUsername":"","twitterHandle":""}],"summary":"This session shows how modern Java, using the Foreign Function & Memory API and Vector API, can run high-performance AI natively on CPUs and GPUs without JNI or Python. It includes Deep Netts CUDA integration, SIMD acceleration, and a fraud detection use case.","timeSlots":[],"title":"High-Performance Java-Native AI with CUDA and the Vector API","totalFavourites":3,"track":{"id":2754,"name":"Java Language & Platform","description":"Project Loom, Leyden, Valhalla, Panama, and the ever evolving JVM.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-coffee-mug.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"For the last nearly two decades, I’ve joined and consulted software teams that all struggled with the same problem: nobody likes writing documentation, and everybody pays the price for it. New developers spend weeks reverse-engineering codebases, architecture lives in people’s heads, and wikis quietly decay into noise.<br><br>With AI now entering the picture, many hope it will fill the gaps. It won’t.<br><br>I’ll show the simple ideas that change everything: how to think about documentation in the right levels, how to keep it close to the code, and how to avoid the decay we all know too well. These are the decisions that have to be made before any tool or process can work.<br><br>The documentation won’t write itself. But there are ways to make it far easier and far more reliable.<br><br>Key take-aways:<br><br>• How to separate architecture, API, and code-level documentation<br>• What “docs as code” means once the slogans are gone<br>• Why missing context stays missing—with or without AI","fieldGroup":null,"fieldGroupValues":[],"id":22942,"keywords":[{"name":"documentation"},{"name":"architecture"},{"name":"ai"},{"name":"code"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Christian Heitzmann, MSc ETH CSE, is the owner of SimplexaCode AG in Lucerne, Switzerland. His professional certifications include Java, Python, and Spring. He holds teaching diplomas in both Computer Science and Mathematics, as well as a CAS in Machine Learning. With over 20 years of experience in professional software development and over 15 years in teaching and training, he works as a developer, documentation consultant, and trainer, bringing order to software, documentation, and data.","blueskyUsername":"","company":"SimplexaCode AG","countryName":"Switzerland","firstName":"Christian","fullName":"Christian Heitzmann","id":23018,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-60ea3c3b-3bd0-4920-b014-21bb439cbb51.jpg","lastName":"Heitzmann","linkedInUsername":"christian-heitzmann","mastodonUsername":"","twitterHandle":""}],"summary":"The talk argues that AI won’t solve poor documentation. It presents practical principles for keeping docs close to code, separating architecture/API/code-level documentation, and preventing decay. Key takeaway: missing context remains missing unless teams make deliberate documentation decisions first.","timeSlots":[],"title":"Why Documentation Won’t Write Itself—and AI Won’t Save You","totalFavourites":5,"track":{"id":1701,"name":"Development Practices","description":"All about Getting Stuff Done right. Methodologies, better practices, etc.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-hearts-card.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Apache Parquet has become the lingua franca of the modern data ecosystem, powering data lakes and table formats like Apache Iceberg—but for Java, the go-to library parquet-java pulls in Hadoop and a truckload of other dependencies, and its reader is single-threaded. This was bugging me enough to start Hardwood, a brand-new Parquet parser written from scratch in modern Java, applying some of the performance lessons learned from the One Billion Row Challenge. Come and join me for this talk, where we&#39;ll look at:<br><br>- The internals of the Parquet format and what makes parallelizing its decoding surprisingly tricky<br>- Techniques for achieving high throughput, such as page-level parallelism, adaptive prefetching, and avoiding auto-boxing in hot loops<br>- How to use JDK Flight Recorder for identifying performance bottlenecks<br>- Practical learnings from using AI (specifically, Claude Code) as a coding companion—what works well, where you need to stay sharp, and why &quot;built with AI&quot; doesn&#39;t mean &quot;vibe-coded&quot;<br><br>Whether you&#39;re interested in file formats, Java performance, or getting a realistic take on AI-assisted development, there should be something in here for you.","fieldGroup":null,"fieldGroupValues":[],"id":23522,"keywords":[{"name":"performance"},{"name":"java"},{"name":"ai"},{"name":"parquet"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Gunnar Morling is an open-source software engineer in the Java and data streaming space, currently working as a Technologist at Confluent. Previously, he helped to build a realtime stream processing platform based on Apache Flink and led the Debezium project, a distributed platform for change data capture. He is a Java Champion and has founded multiple open source projects such as Hardwood, kcctl, JfrUnit, and MapStruct. Gunnar is an avid blogger (morling.dev) and has spoken at various conferences like QCon, Java One, and Devoxx. He lives in Hamburg, Germany.","blueskyUsername":"gunnarmorling.dev","company":"Confluent","countryName":"Germany","firstName":"Gunnar","fullName":"Gunnar Morling","id":23036,"imageUrl":"https://lh3.googleusercontent.com/a-/AOh14GihCBYp1plXFDKfAchzpn7tZkBlhGUg3kD7xvlSjw=s96-c","lastName":"Morling","linkedInUsername":"gunnar-morling","mastodonUsername":"https://mastodon.online/@gunnarmorling","twitterHandle":"gunnarmorling"}],"summary":"A talk about Hardwood, a new modern Java Parquet parser built from scratch to avoid Hadoop dependencies and single-threaded limits. It explores Parquet internals, parallel decoding, high-throughput techniques, JDK Flight Recorder profiling, and lessons from AI-assisted development with Claude Code.","timeSlots":[],"title":"Hardwood: Building a Parquet Parser From Scratch (With a Little Help From AI)","totalFavourites":1,"track":{"id":1254,"name":"Cloud Native, Data & Infrastructure","description":"Kubernetes, platform engineering, vector DBs, model serving, and GPU orchestration.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-server-settings.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Ask the Oracle engineers anything related to your favourite programming language &amp; runtime!","fieldGroup":null,"fieldGroupValues":[],"id":23536,"keywords":[{"name":"engineers"},{"name":"runtime"},{"name":"oracle"},{"name":"programming"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"I work in the Java Platform Group at Oracle designing the Java programming language and virtual machine. I am also a member of the Programming Languages Research Group at Oracle Labs. I am based in Cambridge, UK.<br>My mission is to keep Java as a leading language and platform for developers around the world. Given my background as a researcher, I am especially keen to find, adapt and transfer ideas and techniques from the research community and get them into the hands of Java programmers. I spend much of my time working on Java’s industry-leading specifications.<br><br>I joined Oracle in March 2014. Previously I was a senior researcher at Microsoft Research Cambridge from March 2004 until February 2014. Before that I was a University Lecturer at the University of Cambridge Computer Laboratory and a Fellow, College Lecturer and Director of Studies at St John’s College, Cambridge. I studied for my PhD at the University of Cambridge, and for my BSc at Imperial College, London.","blueskyUsername":"","company":"Oracle","countryName":"United Kingdom","firstName":"Gavin","fullName":"Gavin Bierman","id":21503,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-81f196b1-a89f-4d7a-85d3-5e7e4e171a24.jpg","lastName":"Bierman","linkedInUsername":"gavin-bierman-a0173075","mastodonUsername":"","twitterHandle":"GavinBierman"},{"anonymizedBio":null,"bio":"Maurizio Cimadamore is a compiler architect at Oracle. He is currently working on the language and runtime aspects of many foundational projects that will change the shape of the Java platform, such as Project Valhalla and Project Panama.<br>In the previous years, he has contributed to the design and implementation of several features of the Java programming language, such as diamond inference, lambda expressions and local variable type-inference. Maurizio holds a PhD in language design and implementation.","blueskyUsername":null,"company":"Oracle","countryName":"Italy","firstName":"Maurizio","fullName":"Maurizio Cimadamore","id":21513,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-66579526-c2c5-46b5-87ed-6bb6f34121af.jpg","lastName":"Cimadamore","linkedInUsername":null,"mastodonUsername":null,"twitterHandle":null},{"anonymizedBio":null,"bio":"Per Minborg is a manager in the Java Core Library team at Oracle and is also a member of the Panama project team. He is an inventor and developer with more than 25 years of Java coding experience. He has been a frequent contributor to various open-source projects, is a regular speaker at events, Oracle JavaOne alumnus, and co-author of the publication Modern Java.","blueskyUsername":"pminborg.bsky.social","company":"Oracle","countryName":"Sweden","firstName":"Per-Ake","fullName":"Per-Ake Minborg","id":23047,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-a388bc3b-5180-411a-a4a7-5631e4341892.jpg","lastName":"Minborg","linkedInUsername":"per-%C3%A5ke-minborg-448a623b6/?lipi=urn%3Ali%3Apage%3Ad_flagship3_feed%3B4pm%2B8nsET3GGj6bkmM3geg%3D%3D","mastodonUsername":null,"twitterHandle":null},{"anonymizedBio":null,"bio":"Viktor is a Software Architect in the Java Platform Group at Oracle.<br><br>For more than two decades, he has focused on enabling developers to solve problems with maximal productivity and maintainability.<br><br>Specializing in developer ergonomics in the realm of concurrent, parallel, and distributed programming; he has contributed to the standard libraries of several major programming languages, been involved in more than a dozen Open Source projects, and has spoken at numerous conferences and universities.","blueskyUsername":"","company":"Oracle","countryName":"Sweden","firstName":"Viktor","fullName":"Viktor Klang","id":23049,"imageUrl":"https://lh3.googleusercontent.com/a/AAcHTtdkY-Lks0gsRcvl05pqpW8-GOpvuVndojO99ZxUsSy0rgo=s96-c","lastName":"Klang","linkedInUsername":"","mastodonUsername":"","twitterHandle":""},{"anonymizedBio":null,"bio":"Alan Bateman is an architect in the Java Platform Group at Oracle and a long-time contributor to OpenJDK. He leads the OpenJDK Core Libraries Group and has helped shape the evolution of the Java platform through the design and implementation of many JDK features, including New I/O (NIO), JVMTI and serviceability, the Java Module System, and, more recently, Project Loom.","blueskyUsername":"","company":"Oracle","countryName":"Ireland","firstName":"Alan","fullName":"Alan Bateman","id":28801,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-777f0d6e-3ce7-4670-9962-7f3e5f309f46.jpg","lastName":"Bateman","linkedInUsername":"","mastodonUsername":"","twitterHandle":""}],"summary":"Ask Oracle engineers any questions about your favorite programming language and runtime.","timeSlots":[],"title":"Ask the Architects","totalFavourites":9,"track":{"id":2754,"name":"Java Language & Platform","description":"Project Loom, Leyden, Valhalla, Panama, and the ever evolving JVM.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-coffee-mug.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Agentic coding generates code faster than any team can review it, and that speed lets a single questionable pattern spread across a codebase before anyone notices. This talk shows how to stop that drift at the source, with layered guardrails that make architectural violations structurally hard to introduce instead of something you catch too late in review.<br><br>Drawn from reviewing hundreds of AI-assisted pull requests: natural-language (NL) repo rules don&#39;t hold the line against an LLM. The reliable fix is a deterministic foundation, executable architectural rules acting as fitness functions for AI-generated code, built with ArchUnit, custom linters, and CI gates that fail the build the instant a boundary is crossed. That layer is also what makes NL rules work: once it fences off the cases that must never be wrong, targeted NL rules become precise instead of suggestions an agent ignores. Includes live demos of guardrails catching violations in real time.<br><br>Takeaways: why NL rules fail to stop LLMs propagating bad patterns; how to build a deterministic enforcement layer (ArchUnit, custom linters, CI gates) with instant feedback; how that layer makes your NL rules reliable; a practical model for sorting any rule into the right layer.<br><br>Audience: software architects, tech leads, and senior engineers maintaining architectural consistency on AI-augmented teams.","fieldGroup":null,"fieldGroupValues":[],"id":5507,"keywords":[{"name":"agentic"},{"name":"guardrails"},{"name":"linters"},{"name":"archunit"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":30,"freeTickets":2,"id":957,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Tools-in-Action","pause":false,"scheduleInSmallRoom":false,"slug":"tia30"},"speakers":[{"anonymizedBio":null,"bio":"I am a Domain Tech Lead at INSHUR with more than 12 years of experience working on digital transformation initiatives across fintech, insurtech, and cybersecurity. My work has included modernizing legacy platforms, migrating monoliths to microservices, and building large-scale cloud-native systems.<br>More recently, I have focused on applying AI to digital transformation, leading the development of agentic AI systems and integrating large language models into operational workflows. I am interested in making AI and complex technology initiatives practical, accessible, and understandable across engineering, operations, and business teams.","blueskyUsername":"","company":"INSHUR","countryName":"United Kingdom","firstName":"Sasha","fullName":"Sasha Podlesniuk","id":5807,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-48d9d8c1-f223-44ec-ba3e-6aee8911b78e.jpg","lastName":"Podlesniuk","linkedInUsername":"sasha-podlesniuk","mastodonUsername":"","twitterHandle":""}],"summary":"This talk explains how to prevent AI-generated code from spreading architectural violations by using layered guardrails. It shows why natural-language rules fail, and how deterministic enforcement with ArchUnit, custom linters, and CI gates can stop bad patterns immediately and make higher-level rules effective.","timeSlots":[],"title":"Stopping AI-Generated Architectural Drift: Deterministic Guardrails for Agentic Coding","totalFavourites":5,"track":{"id":1252,"name":"Architecture & Modernization","description":"Designing for agentic workflows, event-driven systems, and legacy transformation.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-blockchain.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"Hand two teams the same model and you get wildly different agents. That gap, the system around the model, is where the enterprise questions live: Is it working? How would I know? Can I make it cheaper? Am I locked into one vendor? None is settled by a better model.<br><br>This talk introduces Agent Control Theory: treating a coding agent the way engineers treat a drone or autonomous car, an uncertain system you instrument, measure, and steer. Record every run as an immutable journal, judge it against a spec, model the trajectory as a Markov chain, and let the evidence pick the next lever: prompt, skills, workflow, tools, or model, cheapest first.<br><br>This is classical control theory, and the math earns its keep: the Markov model yields expected work remaining, and your chosen cost (tokens spent, quality verified) is the performance index the loop steers by. The key is the controller, turning verdict and diagnosis into the next move: human today, AI as the evidence matures.<br>The agent is not one giant prompt but a workflow of deterministic steps and AI steps, with agentic CLIs (Claude Code, Gemini CLI, Codex) doing the judgment work and Agent Client the portable API to programmatically control them. Once the judges become a benchmark, the agent is a swappable engine: same task, same judges, same evidence. The vendor swap becomes an experiment, not a leap of faith. Source available Java, the AgentWorks stack: agent-workflow, agent-client, agent-journal, agent-judge, agent-experiment.<br>","fieldGroup":null,"fieldGroupValues":[],"id":25661,"keywords":[{"name":"theory"},{"name":"workflow"},{"name":"control"},{"name":"agent"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Dr. Mark Pollack is the creator of AgentWorks, an open-source agent engineering stack for the JVM, and the founder of Spring AI. After more than twenty years building the Spring ecosystem&#39;s data and integration projects, he now works independently on the infrastructure that makes AI agents dependable: durable workflow orchestration, execution tracing and cost metering, evaluation and judging, sandboxed execution, and a multi-provider client that drives agentic CLIs — Claude Code, Gemini, Qwen, Amazon Q — behind a single API. The stack spans agent-workflow, agent-journal, agent-judge, agent-bench, agent-sandbox, agent-hooks, and agent-client, alongside the Agent Client Protocol (ACP) Java SDK and claude-agent-sdk-java, the Java SDK mirroring Anthropic&#39;s official SDKs.<br><br>His current research, Agent Control Theory, treats coding agents as systems to be measured and steered rather than prompted and hoped for: capture the full execution trajectory, judge the outcome, and use the data to characterize and then improve agent behavior. The approach draws on his pre-Spring career in experimental physics, where he built offline computing systems for high-energy nuclear physics at Brookhaven National Laboratory before moving to front-office trading systems in finance.<br><br>Mark has been part of Spring since 2003, when he contributed its JMS support. As founder and lead of Spring AI he brought LLM integration, RAG, vector stores, and tool calling to Java and Spring developers. He previously founded and led Spring Data, Spring Cloud Data Flow, Spring XD, Spring AMQP, Spring Shell, and Spring.NET.<br><br>He is a returning speaker at Devoxx Belgium, SpringOne, Spring I/O, and DevNexus, and has appeared on Software Engineering Daily. He builds in the open at lab.pollack.ai and writes at pollack.ai.","blueskyUsername":"","company":"Tuvium","countryName":"United States of America","firstName":"Mark","fullName":"Mark Pollack","id":25502,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-66cdea20-f3d9-49aa-8899-6579e673b1c3.jpg","lastName":"Pollack","linkedInUsername":"marklpollack","mastodonUsername":"","twitterHandle":""}],"summary":"The talk presents “Agent Control Theory” for enterprise coding agents: treat agents as measurable systems, log every run, judge against specs, and use evidence to optimize prompts, tools, workflows, or models. It aims to reduce cost, improve quality, and enable vendor portability through controlled experimentation.","timeSlots":[],"title":" Introducing Agent Control Theory: The System Runs the Model","totalFavourites":7,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Processing large amounts of data efficiently is a common challenge in modern systems. Many workloads spend most of their time performing simple mathematical operations on large arrays of numbers. Modern CPUs can speed this up using SIMD instructions, which allow a single instruction to process multiple values at once. Traditionally, accessing these capabilities from Java has been difficult and often required platform-specific native code.<br><br>The Panama Vector API changes this by allowing Java developers to express these operations directly in Java while the JVM turns them into efficient CPU instructions.<br><br>Elasticsearch provides an interesting real-world example. Modern features such as vector search rely on large numbers of vector calculations, and analytical queries written in ES|QL often process large batches of numeric data. In both cases the system repeatedly performs simple operations over large arrays of values. Elasticsearch and its underlying search engine Lucene use the Vector API to speed up these operations by taking advantage of SIMD instructions available on modern CPUs.<br><br>Using an incubating API in production software is unusual and normally avoided. In this case, however, the potential performance gains are significant enough to make it worthwhile. This talk explores how Elasticsearch integrates the Vector API, how it safely enables and disables SIMD acceleration at runtime, and what this tells us about the future of high-performance computing in Java.","fieldGroup":null,"fieldGroupValues":[],"id":17556,"keywords":[{"name":"elasticsearch"},{"name":"simd"},{"name":"java"},{"name":"vector"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Notorious engineer at work and after hours, tracing meanders of the art of software engineering. Remote Software Gardener, mostly working in web-oriented Java gardens. Java Champion. Docker Captain. Testcontainers Champion. Programming usually in Java (since 1.3), Scala and Go, but in other languages too. Fan of agility, seen mostly as choosing the right tools and approaches after asking the right questions. Developer, trainer and conference speaker. In his talks, Piotr covers not only hardcore Java but also software architecture, computer security, and soft-skills.","blueskyUsername":"piotrprz.bsky.social","company":"Elastic","countryName":"Poland","firstName":"Piotr","fullName":"Piotr Przybyl","id":16384,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-378903c1-6e22-40fd-89cd-46195162ee5a.jpg","lastName":"Przybyl","linkedInUsername":"piotrprzybyl","mastodonUsername":"https://mstdn.social/@piotrprz","twitterHandle":"piotrprz"}],"summary":"This talk explains how Elasticsearch uses Java’s Panama Vector API to accelerate vector search and analytical queries with SIMD instructions. It shows how Lucene and Elasticsearch enable runtime SIMD safely, despite the API being incubating, and discusses implications for high-performance Java computing.","timeSlots":[],"title":"SIMD for Java: how Elasticsearch already benefits from the Panama Vector API","totalFavourites":5,"track":{"id":1254,"name":"Cloud Native, Data & Infrastructure","description":"Kubernetes, platform engineering, vector DBs, model serving, and GPU orchestration.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-server-settings.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"<p class=\"ql-align-justify\">Java’s code reflection API, developed in OpenJDK Project Babylon, opens up a new path for targeting foreign programming models directly from Java, including GPUs. This talk introduces the Heterogeneous Accelerator Toolkit (HAT), a Java parallel programming framework to accelerate modern workloads on specialised hardware through its three core stages: reflect, transform, and accelerate.<br><p class=\"ql-align-justify\"><br><p class=\"ql-align-justify\">The reflect phase introduces the basics of code reflection and its key concepts, making the session accessible to developers new to the API. We then show how HAT reflects Java compute code into an analysable code model, transforms that model into a GPU-friendly representation, and accelerates execution by offloading selected computations to OpenCL or CUDA.<br><p class=\"ql-align-justify\"><br><p class=\"ql-align-justify\">Then, this talk shows a set of examples including tensor-core programming and matrix multiplication, fundamental workloads for AI and natural-language processing. The talk also covers performance analysis and tuning of the CUDA backend with NVIDIA Nsight Compute and Nsight Systems, from profiling generated kernels to identifying optimisation opportunities.","fieldGroup":null,"fieldGroupValues":[],"id":21657,"keywords":[{"name":"cuda"},{"name":"reflection"},{"name":"parallelism"},{"name":"gpu"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Juan Fumero, PhD, is a Software Developer in Oracle’s Java Platform Group, specializing in JIT compilation, managed runtime systems, GPU programming, and heterogeneous computing. Previously a Research Fellow at the University of Manchester, he led the development of TornadoVM, a framework for accelerating Java applications on GPUs, FPGAs, and other hardware. He holds a PhD from the University of Edinburgh and has contributed to projects with Intel, ESA, CERN, and Oracle Labs.","blueskyUsername":"jfumero.dev","company":"Java Platrform Group - Oracle","countryName":"Italy","firstName":"Juan","fullName":"Juan Fumero","id":21504,"imageUrl":"https://lh3.googleusercontent.com/a-/AOh14Ght9T258iuEoSietb6uF8idCUEZukx0rIGQMYGSWQ=s96-c","lastName":"Fumero","linkedInUsername":"juanjosefumeroalfonso","mastodonUsername":"","twitterHandle":"snatverk"}],"summary":"The talk presents HAT, a toolkit using Java Code Reflection to accelerate Java workloads on GPUs through reflection, transformation, and offloading to OpenCL or CUDA. It includes tensor-core and matrix-multiplication examples, plus performance profiling and tuning with NVIDIA Nsight Compute and Nsight Systems.","timeSlots":[],"title":"Reflect, Transform, Accelerate: Bringing GPU Computing to Java","totalFavourites":2,"track":{"id":2754,"name":"Java Language & Platform","description":"Project Loom, Leyden, Valhalla, Panama, and the ever evolving JVM.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-coffee-mug.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Modern software delivery pipelines face increasing pressure from auditors, regulators, and internal governance teams. Yet many builds remain non‑reproducible. This lack of determinism creates blind spots in compliance, undermines traceability, and exposes organisations to risks when validating what actually went into production.<br><br>This session demonstrates how developers can use Apache Maven features to reliably produce identical artifacts from identical inputs. You’ll also learn how to diagnose where reproducibility breaks down and how Maven’s built‑in verification tools can highlight sources of non‑determinism.<br><br>Join this talk to understand why reproducibility is becoming a non‑negotiable requirement for responsible software development and what you can do to make your build deterministic by design.","fieldGroup":null,"fieldGroupValues":[],"id":4096,"keywords":[{"name":"maven"},{"name":"compliance"},{"name":"determinism"},{"name":"reproducibility"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Maarten is a solution architect, senior Java developer, and technical trainer with a passion for developer productivity and software quality. He is recognised as a Java Champion and Oracle ACE Pro for his contributions to the Java community through speaking, mentoring, and content creation. Maarten is passionate about &quot;building the right thing&quot; and &quot;building the thing right&quot;. He loves to share new ideas and knowledge through speaking and <a href=\"https://maarten.mulders.it\" rel=\"noopener noreferrer\" target=\"_blank\">his blog</a>. When he&#39;s not writing code or speaking at conferences, Maarten enjoys exploring creativity through photography, music, and experimenting in the kitchen - in no particular order.","blueskyUsername":"mthmulders.bsky.social","company":"Info Support","countryName":"Netherlands","firstName":"Maarten","fullName":"Maarten Mulders","id":3927,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-caf6823d-09ef-45bb-8e40-43a6fd1d1e8e.jpg","lastName":"Mulders","linkedInUsername":"mthmulders","mastodonUsername":"https://mastodon.online/@mthmulders","twitterHandle":"mthmulders"}],"summary":"This session shows how Apache Maven can make builds reproducible by producing identical artifacts from identical inputs. It explains how to diagnose non-determinism, use Maven’s verification tools, and improve traceability and compliance in software delivery pipelines increasingly scrutinized by auditors and regulators.","timeSlots":[],"title":"Deterministic by Design - Achieving Reproducible Builds with Maven","totalFavourites":4,"track":{"id":1701,"name":"Development Practices","description":"All about Getting Stuff Done right. Methodologies, better practices, etc.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-hearts-card.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"<strong>Detailed Description</strong><br>Temporal makes it remarkably easy to implement long-running business workflows. But once those workflows span multiple services and require synchronous business decisions, straightforward Saga implementations quickly expose non-obvious problems.<br><br>We&#39;ll explore the challenges we encountered while building distributed transactions with Temporal in a real production system. Starting with a classic Saga implementation, we&#39;ll examine why it wasn&#39;t enough, what problems emerged around synchronous workflows, failures, cancellation and compensation, and how the architecture evolved to address them. We&#39;ll also discuss reconciliation, consistency guarantees, and the trade-offs between keeping workflows simple and building resilient distributed systems.<br><br><strong>Key Takeaways</strong><br>• Common pitfalls when implementing Saga with Temporal.<br>• Designing reliable synchronous workflows.<br><br><strong>Target Audience</strong><br>Backend engineers, software architects, and tech leads building distributed systems or using Temporal for business workflow orchestration.","fieldGroup":null,"fieldGroupValues":[],"id":16418,"keywords":[{"name":"saga"},{"name":"distributedtransactions"},{"name":"consistency"},{"name":"temporal"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":30,"freeTickets":2,"id":957,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Tools-in-Action","pause":false,"scheduleInSmallRoom":false,"slug":"tia30"},"speakers":[{"anonymizedBio":null,"bio":"Andrei Sulyz is a Technical Lead with 10 years of experience building distributed systems across startups and enterprise environments. He currently works on the processing platform of a fintech company, designing backend systems for financial transactions and core platform services. His focus is distributed systems, backend architecture and developer productivity. Andrei has led the adoption of Temporal from initial evaluation to production and is now building AI agents that automate software development workflows. He enjoys understanding how technologies work under the hood and sharing practical lessons from real production experience.","blueskyUsername":"","company":"Skyro","countryName":"Spain","firstName":"Andrei","fullName":"Andrei Sulyz","id":16359,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-10dc359e-517c-4cfb-b859-7d7c9ca845a9.jpg","lastName":"Sulyz","linkedInUsername":"andrey-sulyz","mastodonUsername":"","twitterHandle":""}],"summary":"This talk examines real-world challenges of implementing distributed transactions with Temporal. It covers pitfalls of classic Saga patterns, especially for synchronous workflows, failures, retries, and compensation, and explains how the architecture evolved to improve reliability, reconciliation, and consistency in production distributed systems.","timeSlots":[],"title":"Solving Distributed Transactions with the Saga Pattern and Temporal","totalFavourites":7,"track":{"id":1252,"name":"Architecture & Modernization","description":"Designing for agentic workflows, event-driven systems, and legacy transformation.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-blockchain.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"AI coding agents feel like magic. It is easy to assume there is something exotic inside, some secret sauce that makes agents reliable. Well, there isn&#39;t, the core of every AI coding agent is very simple: send a message to a model, parse tool calls, execute them, feed the results back, repeat. Everything else (context management, permissions, observability, safety guardrails) is engineering layered on top of it that we should be building.<br><br>In this deep dive, we build that engine from scratch (in Java!), live on stage. Not to build the best agent, but to understand how the pieces fit together. We point it at a real codebase, and watch what happens. It compiles. Tests pass. And it violates every convention the team agreed on. So we iterate. We add context, constraints, and feedback, and at each step we examine what changed, why it helped, and what it maps to in the tools you already use.<br><br>The goal is a mental model. By the end, you will understand the components inside the AI coding tools you use every day, what you can layer on top to get smoother results and safer expectations, and where the honest limits still are, the gap no amount of engineering has closed yet.","fieldGroup":null,"fieldGroupValues":[],"id":4087,"keywords":[{"name":"tool calls"},{"name":"ai agents"},{"name":"context management"},{"name":"safety guardrails"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Ji is a Data Platform Engineer at Xomnia with a background in Computer Science &amp; Engineering from TU Delft and a recently completed MSc in Artificial Intelligence from Utrecht University. With years of experience in software development, he focuses on solving real-world software and data problems, while maintaining a strong interest in AI, education, and emerging digital policy. He is particularly drawn to questions around EU sovereign tech, AI alignment, and how to build systems that are not only capable, but also compliant, trustworthy, and grounded in human values. Driven by the belief that technology, when built thoughtfully, can be a genuine force for good, Ji is passionate about the role AI can play in improving learning experiences and advancing society responsibly.","blueskyUsername":"","company":"Xomnia","countryName":"Netherlands","firstName":"JI","fullName":"JI Darwish","id":46151,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-69dfe225-6442-4759-bebe-064247f07b54.jpg","lastName":"Darwish","linkedInUsername":"ji-darwish","mastodonUsername":"","twitterHandle":""}],"summary":"AI coding agents are fundamentally simple: prompt a model, execute tool calls, feed results back, and repeat. This talk builds such an engine in Java, then iteratively adds context, constraints, and feedback to show how real tools improve reliability, safety, and understanding of their limits.","timeSlots":[],"title":" Harness Engineering: Building the System Around Your AI Coding Agent ","totalFavourites":9,"track":{"id":1252,"name":"Architecture & Modernization","description":"Designing for agentic workflows, event-driven systems, and legacy transformation.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-blockchain.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"In March 2027, in JDK 28 (JVM gods willing!), after more than 12 years of effort, the Valhalla project will deliver its first feature: Value Classes (JEP 401) as a preview feature. Value classes are defined as regular classes with a &quot;value&quot; keyword in front. They are backward compatible with your code written before Java 28, without you having to recompile it.<br>Value classes bring new optimization opportunities at the JVM level: scalarization on stack and flattening on heap. For that, the Java specification had to be reinterpreted and enhanced, challenging us to reconsider some of the fundamentals on which Java was created 30 years ago. What does == mean? Is a reference always a pointer? Can an instance of a value class be null? Can you observe the transition between the default values and the final values of fields during object construction? And more.<br>This presentation covers all these questions, showing the trade-offs that need to be made in order to bring value classes to the Java platform.<br>You will hear about new code patterns, performance, and type safety. And, as value classes are just the first step, we will cover what Valhalla should bring in the future.","fieldGroup":null,"fieldGroupValues":[],"id":15354,"keywords":[{"name":"performance"},{"name":"valhalla"},{"name":"value classes"},{"name":"jvm"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":180,"freeTickets":2,"id":959,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Deep Dive","pause":false,"scheduleInSmallRoom":false,"slug":"deep180"},"speakers":[{"anonymizedBio":null,"bio":"José is a Java Developer Advocate at Oracle. He holds a PhD in applied mathematics and computer science and is a Java Champion alumnus. He has been an assistant professor at the University Sorbonne Paris Nord for 25 years. He is an active member of the Paris Java User Group, and a disorganizer of the JChateau unconference. He contributes Java learning content on the dev.java website. He publishes &quot;Java Coding Tips&quot;, a biweekly series of shorts, and the &quot;JEP Café&quot;, a video series, both on the Java YouTube channel.","blueskyUsername":"josepaumard.bsky.social","company":"Oracle","countryName":"France","firstName":"José","fullName":"José Paumard","id":15304,"imageUrl":"https://lh3.googleusercontent.com/a-/AOh14GhsVIUuTR9Onoo-D8UMW5QId2Yw1V_EUvqdWdNQ0RQ=s96-c","lastName":"Paumard","linkedInUsername":"jos%C3%A9-paumard-2458ba5","mastodonUsername":"","twitterHandle":""},{"anonymizedBio":null,"bio":"Tenured associate professor at Université Gustave Eiffel (Paris) and longtime OpenJDK member researching runtime environments (Java VM, .NET). He has contributed to major Java features including invokedynamic (JSR 292), Lambda (JSR 335), and the Jigsaw module system (JSR 376), and currently works on OpenJDK&#39;s Amber (records, pattern matching) and Valhalla (value types) projects. He&#39;s also the main contributor to the ASM bytecode library.<br>A frequent conference speaker (Devoxx France, FOSDEM), he regularly presents on modern Java features like virtual threads, structured concurrency, and value types.","blueskyUsername":"","company":"University Gustave Eiffel","countryName":"France","firstName":"Remi","fullName":"Remi Forax","id":18075,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocK8ScVAfwuF-N0FTBQLG4RDPeS7vzgzVc_VNU0pEJrFPgQ32w=s96-c","lastName":"Forax","linkedInUsername":"","mastodonUsername":"","twitterHandle":""}],"summary":"Java 28’s Valhalla project introduces preview value classes, enabling JVM optimizations like stack scalarization and heap flattening. The talk explores compatibility, revised Java semantics, nullability, construction behavior, performance, type safety, and new coding patterns, while outlining future Valhalla enhancements.","timeSlots":[],"title":"Will Valhalla Fix Tony's Billion-Dollar Mistake?","totalFavourites":13,"track":{"id":2754,"name":"Java Language & Platform","description":"Project Loom, Leyden, Valhalla, Panama, and the ever evolving JVM.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-coffee-mug.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Architects in real life study the monuments built by earlier generations like Cologne Cathedral, Big Ben or Eiffel Tower to understand what makes structures endure. What are the monuments of software to inspire us software engineers? And what can we learn from them for our own software architecture projects?<br><br>In this talk we explore a curated set of the most influential software monuments that shaped computing and the architectural ideas behind their lasting impact. From Linux, which grew from a student project into the backbone of modern computing, to the Apollo Guidance Computer that guided humans to the Moon. From Java, one of the most influential programming platforms of the last three decades, to Deep Blue, the machine that defeated the human world chess champion and pushed the limits of computational intelligence.<br><br>We revisit the birth of the World Wide Web, the software that started the internet revolution and the simple architectural principles that enabled a global platform for applications and information. And we look at ELIZA, the 1960s chatbot that already revealed both the promise and the surprising psychological effects of human–computer interaction.<br><br>Through these stories we uncover the architectural principles that made these systems successful. Principles that still shape modern software systems today. The talk connects history with practice, offering concrete insights and inspiration for engineers designing the next generation of software systems.","fieldGroup":null,"fieldGroupValues":[],"id":12753,"keywords":[{"name":"java"},{"name":"architecture"},{"name":"linux"},{"name":"internet"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Tobias works as a modernization architect at viadee consulting. He supports customers in the modernization of their software architecture and the migration of software systems. His focus sector is insurance and banking. He loves to share his knowledge and experience at international conferences on a regularly basis. ","blueskyUsername":null,"company":"viadee Consultancy","countryName":"Germany","firstName":"Tobias","fullName":"Tobias Voss","id":12607,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-6dacf797-a95e-45a7-885f-141c52896630.jpg","lastName":"Voss","linkedInUsername":"tobiaslvoss","mastodonUsername":null,"twitterHandle":null}],"summary":"The talk explores landmark software systems—Linux, Apollo Guidance Computer, Java, Deep Blue, the World Wide Web, and ELIZA—to reveal enduring architectural principles behind their success and show how these lessons can inspire modern software design.","timeSlots":[],"title":"Software Monuments - Architectural Lessons from the Systems That Shaped Computing","totalFavourites":5,"track":{"id":1252,"name":"Architecture & Modernization","description":"Designing for agentic workflows, event-driven systems, and legacy transformation.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-blockchain.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Decisions, decisions, decision, that is our life every day. But, what is worse than making a bad decision is not remembering why we made a decision, good or bad. Architectural Decision Records are highly important to document the decisions we make, to support the decisions, to bring in necessary and sufficient reasons, and to reevaluate decisions when the business requirements and/or the technologies change. In this presentation we will look at ADRs, how to create them, how to maintain them, and the values they provide.","fieldGroup":null,"fieldGroupValues":[],"id":49256,"keywords":[{"name":"documentation"},{"name":"architectural"},{"name":"decisions"},{"name":"records"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Dr. Venkat Subramaniam is an award-winning author, founder of Agile Developer, Inc., and an instructional professor at the University of Houston.<br>He has trained and mentored thousands of software developers in the US, Canada, Europe, and Asia, and is a regularly-invited speaker at several international conferences. Venkat helps his clients effectively apply and succeed with agile practices on their software projects.<br>Venkat is a (co)author of multiple books, including the 2007 Jolt Productivity award winning book Practices of an Agile Developer. His latest book is Functional Programming in Java: Harnessing the Power of Java 8 Lambda Expressions. You can reach him by email at venkats@agiledeveloper.com or on twitter at @venkat_s.","blueskyUsername":null,"company":null,"countryName":"United States of America","firstName":"Venkat","fullName":"Venkat Subramaniam","id":49109,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-83e2efa2-69c8-4599-8ec1-5ec974dd3673.jpg","lastName":"Subramaniam","linkedInUsername":null,"mastodonUsername":null,"twitterHandle":null}],"summary":"This presentation explains Architectural Decision Records (ADRs), showing how to create and maintain them and why they matter. It highlights their role in documenting decisions, capturing the reasons behind them, and helping teams reassess choices as business needs or technologies change.","timeSlots":[],"title":"ADRs: The Why and How","totalFavourites":13,"track":{"id":1701,"name":"Development Practices","description":"All about Getting Stuff Done right. Methodologies, better practices, etc.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-hearts-card.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"I&#39;ve always wanted to create a developer UI for Spring Boot, but the task was massive. The project I ended up doing has 83,000 lines of code, 116 test suites... The honest by-hand estimate for one experienced developer: 6.5 to 8.5 months.<br><br>I did it in about 11 days, shipping version 1 after less than 2 weeks.<br><br>Not by typing faster: I didn&#39;t even open my IDE. I did this by managing a fleet of AI agents: 223 merged pull requests, around 20 a day, with the agents doing all the scaffolding, the panels and the tests while I architected, reviewed and steered. That&#39;s roughly a 12–17× reduction in human effort, as measured from my git history and PR metadata.<br><br>This talk is about showing you the recipe for delivering at this speed, using modern AI tools. I&#39;ll show you how to run it: write the specifications, the test harness, running agents in parallel... And working differently: prep the agents in the afternoon, let them build overnight, merge the results over coffee the next day.<br><br>And as a bonus, we get a great new Spring Boot developer console!","fieldGroup":null,"fieldGroupValues":[],"id":11556,"keywords":[{"name":"developer"},{"name":"ai"},{"name":"spring boot"},{"name":"automation"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Julien Dubois is a Java Champion and a Principal Manager at <a href=\"https://www.microsoft.com/\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"color: var(--primary-color);\">Microsoft</a>. With his team of world-class developer advocates, Julien works directly with the engineering groups to improve how developers can leverage AI using Microsoft and GitHub solutions.<br><br>With over 25 years of experience in the Java ecosystem, Julien is best known as the creator of <a href=\"https://www.jhipster.tech/\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"color: var(--primary-color);\">JHipster</a>, an Open Source platform with 22,000+ GitHub stars that revolutionized how developers build Spring Boot applications. His recent work focuses on bringing enterprise-grade AI capabilities to Java through his contributions to <a href=\"https://github.com/langchain4j/langchain4j\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"color: var(--primary-color);\">LangChain4j</a> and <a href=\"https://spring.io/projects/spring-ai\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"color: var(--primary-color);\">Spring AI</a>.<br><br>Julien is a recognized thought leader in the Java community, having spoken at over 200 international conferences including Devoxx, Spring One, and Microsoft Build. He authored <em style=\"color: var(--primary-color);\"><a href=\"https://www.julien-dubois.com/book\" rel=\"noopener noreferrer\" target=\"_blank\">Spring par la pratique</a></em>, the first French book on the Spring Framework, which became a bestseller. His presentations typically feature live-coding sessions and practical workshops that help developers immediately apply new technologies.","blueskyUsername":"","company":"GitHub","countryName":"France","firstName":"Julien","fullName":"Julien Dubois","id":12008,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-832ab0d0-7760-423f-a78e-7f767c7e95b8.jpg","lastName":"Dubois","linkedInUsername":"juliendubois","mastodonUsername":"","twitterHandle":"juliendubois"}],"summary":"An AI-agent workflow enabled building an 83,000-line Spring Boot developer UI in 11 days instead of 6.5–8.5 months. The talk explains how to orchestrate multiple agents with specs, tests, and parallel overnight builds to achieve major productivity gains while delivering a new developer console.","timeSlots":[],"title":"223 Pull Requests in 11 Days: The Recipe for Building Real Software with AI Agents","totalFavourites":28,"track":{"id":1701,"name":"Development Practices","description":"All about Getting Stuff Done right. Methodologies, better practices, etc.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-hearts-card.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"Are you tired of juggling dozens of passwords? In 2022 alone, hackers exposed over 24 billion passwords, compromising personal identities, finances, and more. But what if there was a better way? Enter Passkeys. This cutting-edge solution not only offers robust multi-factor authentication but is now paving the way to replace passwords altogether. Join Daniel Garnier Moiroux and Josh Long as they unveil the power of Passkeys. Witness firsthand how the new Spring Security 7  can revolutionize your systems and services, making them more secure and easier to use. Say goodbye to password fatigue and hello to a secure, seamless login experience. Are you ready to embrace the future of authentication? <br>","fieldGroup":null,"fieldGroupValues":[],"id":14459,"keywords":[{"name":"passwords"},{"name":"authentication"},{"name":"spring security"},{"name":"passkeys"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Daniel Garnier is a software engineer in the Spring team, working on Spring AI, the Java MCP SDK, and Spring Security. He is an adjunct professor at Mines Paris, where he teaches CS and software engineering classes.<br><br>He contributes to Spring Security, and has a keen interest in automation and developer productivity","blueskyUsername":"garnier.wf","company":"Spring","countryName":"France","firstName":"Daniel","fullName":"Daniel Garnier-Moiroux","id":7619,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-3e998da2-a249-46ae-baa9-dd880478c765.jpg","lastName":"Garnier-Moiroux","linkedInUsername":"garniermoiroux","mastodonUsername":null,"twitterHandle":null},{"anonymizedBio":null,"bio":"<a href=\"http://twitter.com/starbuxman\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"color: var(--gray-400);\">Josh (@starbuxman)</a> has been the first Spring Developer Advocate since 2010. Josh is a Java Champion, author of 7 books (including <a href=\"http://reactivespring.io/\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"color: var(--gray-400);\">&quot;Reactive Spring&quot;</a>) and numerous best-selling video training (including <a href=\"https://www.safaribooksonline.com/library/view/building-microservices-with/9780134192468/\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"color: var(--gray-400);\">&quot;Building Microservices with Spring Boot Livelessons&quot;</a>with Spring Boot co-founder Phil Webb), and an open-source contributor (Spring Boot, Spring Integration, Axon, Spring Cloud, Activiti, Vaadin, etc), a Youtuber (<a href=\"https://youtube.com/@coffeesoftware\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"color: var(--gray-400);\">Coffee + Software with Josh Long</a> as well as <a href=\"http://bit.ly/spring-tips-playlist\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"color: var(--gray-400);\">my Spring Tips series </a>), and a podcaster (<a href=\"http://bootifulpodcast.fm/\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"color: var(--gray-400);\">&quot;A Bootiful Podcast&quot;</a>).<br><br>","blueskyUsername":"starbuxman.bsky.social","company":"the Spring team","countryName":"United States of America","firstName":"Josh","fullName":"Josh Long","id":14654,"imageUrl":"https://lh3.googleusercontent.com/a-/AOh14GhTAlrBfIHBoWpP1mfcKm-kRON4bdBF_LccGehD=s96-c","lastName":"Long","linkedInUsername":"joshlong","mastodonUsername":"","twitterHandle":"starbuxman"}],"summary":"Passkeys offer a passwordless future with stronger, simpler authentication. This talk by Daniel Garnier Moiroux and Josh Long explores how Spring Security 7 can help replace passwords, improve security, and streamline login experiences for users and systems.","timeSlots":[],"title":"Bootiful Security","totalFavourites":18,"track":{"id":1255,"name":"Security, Trust & Compliance","description":"Guardrails, prompt injection defence, model governance, and supply-chain security.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-surveillance-camera.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"Coding agents look like magic. Strip away the hype and you find a surprisingly small core: a loop, a language model, and… a shell.<br><br>In this Tools in Action, we will see this core live. We give a small, local LLM (under 10B, running on Docker Model Runner) a single built-in tool (bash) and watch it turn into a coding helper. It lists files, greps the repo, runs the tests, curls an API, pipes into jq… all on its own, because the model already knows these CLIs. And when it doesn&#39;t? It runs --help and figures it.<br><br>We&#39;ll see the smallest agent loop in action: the model decides which command to run, the agents executes it, feeds the result back, and repeat until it answers. We&#39;ll look at what actually goes over the wire (the tool description, the tool_calls the model emits), why writing a good description is really prompt engineering, and why returning errors is what lets the model recover on its own.<br><br>You&#39;ll leave understanding how coding agents really work under the hood, why one well-chosen built-in tool often beats a pile of MCP servers, and how far a tiny local model can go. <br><br>Live demos, few slides, code you can run tonight.<br>","fieldGroup":null,"fieldGroupValues":[],"id":22911,"keywords":[{"name":"prompt engineering"},{"name":"bash"},{"name":"coding agents"},{"name":"language model"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":30,"freeTickets":2,"id":957,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Tools-in-Action","pause":false,"scheduleInSmallRoom":false,"slug":"tia30"},"speakers":[{"anonymizedBio":null,"bio":"Principal Solutions Architect at Docker<br>- Principal Solution Architect chez Docker<br>- WebAssembly lover<br>- GenAI on Raspberry Pi addict<br>- Container-oriented","blueskyUsername":"k33gorg.bsky.social","company":"Docker","countryName":"France","firstName":"Philippe","fullName":"Philippe Charrière","id":18086,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-c958a486-4d64-44ef-bb6d-77de06638b5d.jpg","lastName":"Charrière","linkedInUsername":"phcharriere","mastodonUsername":"","twitterHandle":"k33g_org"}],"summary":"A live demo shows how a tiny local LLM becomes a coding agent using just a bash tool and a simple loop. It explores tool calls, prompt engineering, error recovery, and why one built-in tool can outperform many servers—revealing how coding agents work under the hood.","timeSlots":[],"title":"One tool to rule them all: bash, a tiny LLM, and the birth of a coding agent","totalFavourites":10,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"ADVANCED","description":"Ever wondered how you would write code if you were a seasoned hacker?<br>In this hands-on session, you’ll learn how to adopt that mindset to build secure Java applications with confidence in the AI era. Every year, thousands of organizations are breached, and billions of records are exposed. Only in 2024, cyberattacks compromised 1.7 billion individuals, and millions of applications were targeted daily. Through &quot;live demos&quot; of real-world attacks and defenses, we’ll cover the essentials every modern Java developer needs in 2026.<br><br><strong>Key takeaways:</strong><br><ul><li>A quick look at the OWASP Top 10 (2025) and practical solutions for the newest risks.</li><li>How to implement supply chain security strategies to defend against threats like <em>Shai-Hulud</em> or <em>Log4Shell</em>.</li><li>Ways to integrate essential security checks (SAST/SCA) into your CI/CD pipeline for continuous protection.</li><li>Practical threat modeling techniques to identify and prioritize risks early in the design phase and later in incident response.</li><li>How to set up security monitoring and logging to detect and respond to attacks in production.</li><li>Practical strategies to use AI assistants securely in your development workflow.</li><li>And finally, why using hardened container images is a simple yet highly effective strategy for runtime security.</li></ul>","fieldGroup":null,"fieldGroupValues":[],"id":8194,"keywords":[{"name":"owasp"},{"name":"java"},{"name":"security"},{"name":"devsecops"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":180,"freeTickets":2,"id":959,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Deep Dive","pause":false,"scheduleInSmallRoom":false,"slug":"deep180"},"speakers":[{"anonymizedBio":null,"bio":"Soroosh is a software engineer and software architecture enthusiast, passionate about building simple but impactful solutions. With over 15 years of experience in diverse domains, including Telecom, Media &amp; Entertainment, and E-Commerce. He has worked with small startups and large enterprises serving 80 million active subscribers. Currently working as a Solution Architect at Rabobank. Soroosh strongly believes in the power of collaborative learning and enjoys sharing his experiences and insights with other developers.","blueskyUsername":null,"company":"Rabobank","countryName":"Netherlands","firstName":"Soroosh","fullName":"Soroosh Khodami","id":8669,"imageUrl":"https://lh3.googleusercontent.com/a/AAcHTtdOw1DaVsLzC-GyXIj6Db1K0D66F-cMGH5gQp9I0Q=s96-c","lastName":"Khodami","linkedInUsername":"sorooshkhodami","mastodonUsername":null,"twitterHandle":"sorooshkh"}],"summary":"Hands-on session for Java developers on building secure applications in the AI era. Covers OWASP Top 10, supply chain security, SAST/SCA in CI/CD, threat modeling, monitoring and logging, secure use of AI assistants, and hardened container images, with live demos of real-world attacks and defenses.","timeSlots":[],"title":"Write Java Code Like a Seasoned Hacker: 2026 Edition","totalFavourites":17,"track":{"id":1255,"name":"Security, Trust & Compliance","description":"Guardrails, prompt injection defence, model governance, and supply-chain security.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-surveillance-camera.png"}},{"afterVideoURL":null,"audienceLevel":"ADVANCED","description":"Modern software increasingly interacts with AI models, query languages, and other specialized programming models, forcing you to switch contexts, embed foreign code, or write verbose wrappers to bridge the gap. What if you could express logic from outside the JVM directly in Java?<br><br>In this session, we start by looking at how Java enables you to safely interact with runtimes outside of the JVM using the Foreign Function and Memory API and tools like <a href=\"https://jdk.java.net/jextract/\" rel=\"noopener noreferrer\" target=\"_blank\">jextract</a>.<br>Then will push further with <a href=\"https://openjdk.org/projects/babylon/\" rel=\"noopener noreferrer\" target=\"_blank\">Project Babylon</a>’s code reflection: express AI models as Java programs that Babylon can analyze, transform and lower to inference engines, thus leveraging hardware accelerator backends while skipping external model files or the need to glue code.<br><br>Along the way, you will learn how to build expressive FFM-based inference today and author pure Java AI-ready models with Code Reflection tomorrow!","fieldGroup":null,"fieldGroupValues":[],"id":22916,"keywords":[{"name":"java"},{"name":"inference"},{"name":"foreignfunctionmemory"},{"name":"codereflection"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Ana is a Java Champion Alumni and Senior Developer Advocate for the Java Platform Group at Oracle, with an extensive background in Java and cloud development. More recently, her work has expanded to explore how machine learning and AI can be applied within the Java ecosystem, helping Java developers adopt emerging capabilities while continuing to benefit from the stability, tooling, and performance of the Java Platform. She actively supports the growth of technical communities through knowledge sharing and enjoys curating content for conferences as a program committee member. ","blueskyUsername":"ammbra1508.bsky.social","company":"Oracle","countryName":"Netherlands","firstName":"Ana-Maria","fullName":"Ana-Maria Mihalceanu","id":5830,"imageUrl":"https://lh3.googleusercontent.com/a-/AOh14Gj1OS6OpAzuwBKwoUuCi9gxvNPvdmVA7nbW8lg3mg=s96-c","lastName":"Mihalceanu","linkedInUsername":"","mastodonUsername":"https://mastodon.social/@ammbra1508","twitterHandle":"ammbra1508"},{"anonymizedBio":null,"bio":"Lize Raes loves helping developers to bring AI into real-world applications. As Developer Advocate for Java + AI at Oracle and collaborator at LangChain4j, she’s invested into making cutting-edge tech accessible and useful for developers. Her path has taken her from cochlear implant research to advising the Belgian government during COVID-19, to bioinformatics for drug development. Lize likes her projects hands-on and slightly unconventional, especially when they help make the world a bit better. Outside of work, you’ll find her behind the piano or in her woodworking atelier.","blueskyUsername":"","company":"Java Platrform Group - Oracle","countryName":"Switzerland","firstName":"Lize","fullName":"Lize Raes","id":18066,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-870e8938-ae57-4b4b-a4e8-db0c8f0e2864.jpg","lastName":"Raes","linkedInUsername":"lize-raes-a8a34110","mastodonUsername":"","twitterHandle":"lizeraes"}],"summary":"The session explores using Java to bridge external runtimes and AI models without glue code. It covers the Foreign Function and Memory API and jextract for safe native interaction, then Project Babylon’s code reflection to express, transform, and lower AI models directly in Java for accelerator-backed inference.","timeSlots":[],"title":"Java and the Next Generation of Programming Models","totalFavourites":16,"track":{"id":2754,"name":"Java Language & Platform","description":"Project Loom, Leyden, Valhalla, Panama, and the ever evolving JVM.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-coffee-mug.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Vector search is not hard to prototype: turn data into embeddings, store them, and return the closest matches. But real-world applications need to consider much more: application data, business logic, and practical constraints.<br><br>In this session, we’ll go through building a travel application with Micronaut, LangChain4j, and GraalVM.<br><br>Some of the topics we’ll cover:<br><br>– The strategy for generating vector embeddings<br>– Combining similarity results with application data and business constraints<br>– Combining semantic and location-aware search<br>– Most helpful features of Micronaut Data and Micronaut LangChain4j<br>– Building and running the application as a Native Image<br><br>We’ll see how these pieces work together to turn basic similarity search into a more intelligent and useful application.","fieldGroup":null,"fieldGroupValues":[],"id":24227,"keywords":[{"name":"micronaut"},{"name":"graalvm"},{"name":"vector search"},{"name":"embeddings"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":30,"freeTickets":2,"id":957,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Tools-in-Action","pause":false,"scheduleInSmallRoom":false,"slug":"tia30"},"speakers":[{"anonymizedBio":null,"bio":"Alina is a developer advocate for GraalVM at Oracle. Loves both programming and natural languages, compilers and performance, and open source. Ambassador of snacks and not running.","blueskyUsername":"","company":"Oracle","countryName":"Switzerland","firstName":"Alina","fullName":"Alina Yurenko","id":19772,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-a31c43d1-c596-4e24-af3f-078f54609e6c.jpg","lastName":"Yurenko","linkedInUsername":"alinayurenko","mastodonUsername":"","twitterHandle":"alina_yurenko"}],"summary":"This session shows how to build an e-commerce vector search app with Micronaut, LangChain4j, and GraalVM. It covers embedding generation, blending similarity with business and location data, key Micronaut features, and Native Image deployment to create smarter, practical search.","timeSlots":[],"title":" Expanding Vector Search Beyond Similarity","totalFavourites":6,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"For the last 20-30 years, the software industry has been learning — sometimes the hard way — how to build better software. Practices like TDD, refactoring, pair programming, simple design, collective code ownership, continuous integration, and coding standards didn&#39;t appear by magic. They came from pain, failed projects, and the brilliant minds behind XP — Kent Beck, Ward Cunningham, and Ron Jeffries — who asked: &quot;can we do this better?&quot;<br><br>And now? Now we have AI. And suddenly, some developers are asking: &quot;do we still need all that?&quot;<br><br>In this session, we&#39;ll look at 7 XP practices that are genuinely at risk in an AI-assisted world — not because they&#39;re wrong, but because AI makes it tempting to skip them. We&#39;ll see what happens when teams do skip them (spoiler: it&#39;s not pretty 😅), and more importantly, how these practices don&#39;t just survive the AI era — they become *more critical than ever*.<br><br>AI amplifies everything. Good habits and bad ones. If your team has no tests, no shared standards, no feedback loop — AI will help you build the mess of your life, faster than ever before.<br><br>AI is the best stress test XP practices have ever had. Spoiler: they pass 😉","fieldGroup":null,"fieldGroupValues":[],"id":15359,"keywords":[{"name":"refactoring"},{"name":"xp"},{"name":"ai"},{"name":"testing"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Nacho is a software engineer from Barcelona, fan of eXtreme Programming (XP) practices who has been working with Java and other web technologies before the Y2K. He had experience in different roles in the IT world (&#39;guy-for-everything&#39;, developer, team lead, project manager and CTO) working in companies in many sectors: energy, e-commerce, startups (some unicorn) technology consultancy and application performance management. Now working as a Principal Software Engineer at Dynatrace developing software for monitoring applications and in 2022 became Java Champion.<br>Always concerned with questions like &quot;how does it work?&quot; and &quot;how can we make it better?&quot;, Nacho loves to share his knowledge with others and learn from them. As a natural progression to this attitude, he founded the <a href=\"https://barcelonajug.org\" rel=\"noopener noreferrer\" target=\"_blank\">Barcelona Java Users Group</a> and co-founded the <a href=\"https://www.devbcn.com\" rel=\"noopener noreferrer\" target=\"_blank\">Barcelona Developers Conference</a> (DevBcn).<br>When he is not thinking about the next interesting thing to do for the community, he enjoys spending time with his family, playing sports or improving his TDD and other XP skills.","blueskyUsername":"icougil.bsky.social","company":"Dynatrace","countryName":"Spain","firstName":"Nacho","fullName":"Nacho Cougil","id":15309,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-2a8cc803-44ba-4599-9b4a-53ce17c0085d.jpg","lastName":"Cougil","linkedInUsername":"icougil","mastodonUsername":"https://mastodon.social/@icougil","twitterHandle":"icougil"}],"summary":"AI can tempt teams to skip core XP practices like TDD, refactoring, pair programming, and CI. This session shows why these habits are at risk in AI-assisted development, what breaks when they’re ignored, and why they matter even more as AI accelerates both good and bad engineering.","timeSlots":[],"title":"Is AI killing XP practices? (Or are we letting it?)","totalFavourites":12,"track":{"id":1701,"name":"Development Practices","description":"All about Getting Stuff Done right. Methodologies, better practices, etc.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-hearts-card.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"You have already built AI features into your Java application. The model is wrapped in a service, RAG feeds it context, tools are wired, calls are flowing. It works. Then requirements evolve. A single prompt-and-response is no longer enough. You need steps that follow each other, branches based on decisions, retries when things fail, sometimes several actions at once. The question shifts from &quot;how do I call an LLM?&quot; to &quot;how do I keep it under control?&quot;.<br><br>That is where agentic systems come in. In three hours we start with a single @Agent doing one job and grow it live into a multi-agent system that can analyze, plan, act, and report back. Each step starts naive. We run it, feel the cracks, then reach for the pattern that holds: sequential, loop, parallel, and conditional workflows. AgenticScope and typed keys keep shared state honest. Goal-oriented agents, an LLM-driven supervisor, and a custom Planner take over when a fixed pipeline stops being enough. We add non-AI agents for deterministic work, human-in-the-loop checkpoints before external actions, and observability with the AgentMonitor, because an agent you cannot see is an agent you cannot debug.<br><br>You will leave able to look at a problem and tell whether it wants a plain workflow or a real agent, and how much autonomy to hand over before you lose the thread. The goal is not smarter prompts. It is agentic systems easier to reason about and evolve, because the pattern you do not adopt is the one you do not have to debug.<br>","fieldGroup":null,"fieldGroupValues":[],"id":10020,"keywords":[{"name":"observability"},{"name":"agentic"},{"name":"supervisor"},{"name":"workflow"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":180,"freeTickets":2,"id":959,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Deep Dive","pause":false,"scheduleInSmallRoom":false,"slug":"deep180"},"speakers":[{"anonymizedBio":null,"bio":"Loïc Magnette is a seasoned software developer with a strong background in consulting. Currently a senior developer at Oniryx, he specializes in Java and Angular, delivering innovative solutions and sharing his knowledge as a speaker. As a co-organizer of the Belgian Java User Group (BeJUG), he fosters connections within the developer community. Outside of tech, Loïc’s passion for wildlife inspires his work and creativity.","blueskyUsername":"lomagnette.bsky.social","company":"Oniryx","countryName":"Belgium","firstName":"Loïc","fullName":"Loïc Magnette","id":5809,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-cda3ea24-0a68-4fe3-a93c-e199a1d8fedf.jpg","lastName":"Magnette","linkedInUsername":"lomagnette","mastodonUsername":"","twitterHandle":"LoMagnette"}],"summary":"This talk shows how to evolve a Java AI app from simple LLM calls into controllable agentic systems. It covers sequential, loop, parallel, and conditional workflows, shared state, supervisors, planners, human checkpoints, and observability—helping you decide when to use workflows versus autonomous agents.","timeSlots":[],"title":"From AI to Agent: A Field Guide to Agentic Patterns in LangChain4j","totalFavourites":9,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"JPA makes database interaction feel almost magical—until your app grinds to a halt. In this talk, we’ll take a tour through the common (and not-so-common) performance pitfalls that turn object-relational mapping into an object-relational mess. From data loading surprises to connection mismanagement, we’ll explore real-world issues using a sample app: the FunFactStore, where fun facts are sold, but bugs are free.<br><br>We’ll dig into how seemingly harmless libraries can sometimes do more harm than good, and how tooling can help you spot trouble before your users do. Whether you’re using Spring Data JPA, navigating tricky transaction boundaries, or just wondering why things suddenly got slow, this session offers practical insights—and maybe a few fun facts.","fieldGroup":null,"fieldGroupValues":[],"id":22905,"keywords":[{"name":"jpa"},{"name":"performance"},{"name":"orm"},{"name":"transactions"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Jos gets a smile on his face when he makes other people happy by letting a computer do what they don’t like to do. He has been trying to do so professionally for the past 17 years.<br><br>In his spare time, Jos likes to play tennis. He is a trainer/coach for kids playing the typical Dutch sport korfball.","blueskyUsername":"","company":"EasingYou","countryName":"Netherlands","firstName":"Jos","fullName":"Jos Roseboom","id":21540,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-bc6b28d6-203a-4331-8206-f63ac80f7245.jpg","lastName":"Roseboom","linkedInUsername":"jos-roseboom-75508b11","mastodonUsername":"","twitterHandle":""}],"summary":"This talk examines common JPA performance pitfalls, from unexpected data loading and transaction issues to connection mismanagement. Using a sample app, it shows how libraries and tooling can reveal real-world ORM problems and help prevent slowdowns in Spring Data JPA applications.","timeSlots":[],"title":"When ORM Becomes OMG: Performance Pitfalls in JPA and Friends","totalFavourites":5,"track":{"id":1254,"name":"Cloud Native, Data & Infrastructure","description":"Kubernetes, platform engineering, vector DBs, model serving, and GPU orchestration.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-server-settings.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Most agent frameworks ask a language model to decide what to do next. That works, until it doesn&#39;t — and when it doesn&#39;t, you&#39;re left with a non-reproducible trace and no way to explain what happened. Embabel takes the opposite approach.<br><br>Created by Rod Johnson — who calls it the most important project since founding Spring — Embabel is a JVM-native agent framework built on Spring AI and Spring Boot. Its core is Goal-Oriented Action Planning (GOAP), an algorithm borrowed from game AI: you declare goals, annotate actions with @Action and @AchievesGoal, and a deterministic, non-LLM planner chains them by pre- and post-conditions to reach the goal. The plan is code-generated, inspectable before it runs, and explainable afterwards. If Spring AI and LangChain4j are the Servlet API of GenAI, Embabel is Spring MVC.<br><br>Full presentation details pending. ","fieldGroup":null,"fieldGroupValues":[],"id":49257,"keywords":[{"name":"deterministic"},{"name":"spring"},{"name":"embabel"},{"name":"goap"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Rod Johnson is a developer, author, entrepreneur and advisor. He is the creator of the Spring Framework and Embabel agent framework.","blueskyUsername":null,"company":"Embabel","countryName":"Australia","firstName":"Rod","fullName":"Rod Johnson","id":49107,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-8bd19dbe-7c4f-4457-970d-dcdcaeea60b0.jpg","lastName":"Johnson","linkedInUsername":"johnsonroda","mastodonUsername":null,"twitterHandle":"springrod"}],"summary":"Embabel is a JVM-native agent framework built on Spring AI and Spring Boot that replaces LLM-driven decision-making with deterministic Goal-Oriented Action Planning (GOAP). Developers declare goals and actions; a code-generated planner chains them by conditions, producing inspectable, reproducible, and explainable execution traces.","timeSlots":[],"title":"Embabel Agent v1.5","totalFavourites":6,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"Coding agents are dangerous: they can write files (including their own permissions or scripts meant to keep them in check), scan the filesystem, read credentials, and make tool calls that modify databases or exfiltrate data. Any content the agent processes (a pull request, an external code library, or online documentation) can trigger these actions and lead to persisted compromise. The &#39;Comment and Control&#39; attack demonstrated this, as did the mini-Shai-Hulud attack, which copied its loader into Claude&#39;s <code>settings.json</code>, so it re-executed on every session start.<br><br>Built-in agent sandboxes are inadequate. Agents are very good at escaping them (see SandboxEscapeBench) but often need not, as they can disable the sandbox themselves, as specified in the Claude bash sandbox documentation.<br><br>Can we make coding agents secure? This talk is for developers running coding agents on their machines or in CI/CD. First we map the attack surface: prompt injection variations (e.g. role-play, poem attack) and how to hide them (Unicode smuggling, custom glyphs). Then we cover seven specific threats (supply chain compromise, data exfiltration) and seven defence layers.<br><br>We treat the agent itself as untrusted, clamping it down with externally enforced controls it cannot reach or reconfigure (VMs, network firewalls). Attendees will leave with a sandbox taxonomy to evaluate their own setups, a set of ready-to-use tools that score well against it, and a concrete plan to shrink their agents&#39; blast radius.","fieldGroup":null,"fieldGroupValues":[],"id":7011,"keywords":[{"name":"coding agents"},{"name":"sandbox security"},{"name":"prompt injection"},{"name":"data exfiltration"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":30,"freeTickets":2,"id":957,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Tools-in-Action","pause":false,"scheduleInSmallRoom":false,"slug":"tia30"},"speakers":[{"anonymizedBio":null,"bio":"Richard Gross is an IT archaeologist at MaibornWolff with more than ten years of modernization experience. His focus is on hexagonal architectures, hypermedia APIs, TestDSLs and the expressive and unambiguous modelling of the domain as code. He enjoys mastering TDD, BDD, DDD, decoupled design and even practices that don&#39;t include two D&#39;s. He also shaped the open source project CodeCharta, which lets even non-developers grasp the quality of their software.","blueskyUsername":"richargh.de","company":"MaibornWolff GmbH","countryName":"Germany","firstName":"Richard","fullName":"Richard Gross","id":5839,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-7f802c4e-9a8f-467c-99d9-7d96c94b9ebc.jpg","lastName":"Gross","linkedInUsername":"richargh","mastodonUsername":"https://mas.to/richargh","twitterHandle":""}],"summary":"Coding agents can be easily compromised through prompt injection, file access, and tool misuse, leading to persistence or data exfiltration. Built-in sandboxes are insufficient. This talk maps key threats, explains seven defense layers, and recommends externally enforced controls like VMs and firewalls to reduce an agent’s blast radius.","timeSlots":[],"title":"Secure Your Coding Agent Like It’s Malware","totalFavourites":11,"track":{"id":1255,"name":"Security, Trust & Compliance","description":"Guardrails, prompt injection defence, model governance, and supply-chain security.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-surveillance-camera.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"<br>When code misbehaves, coding agents often fall back on an old habit. They add print statements. The method works. It also changes the program before the agent understands the problem.<br><br>The debugger provides a cleaner way to find the evidence. Logpoints inspect application state while the program keeps running. They can write custom messages without changing the source. You can even place them inside compiled third-party libraries. Every output line links back to the code that produced it. This includes logpoints and regular loggers as well as print statements.<br><br>IntelliJ IDEA makes its debugger tools available to coding agents. The debugger skill covers dozens of tools and settings. Few developers keep all of them in their heads. The complete playbook fits into the agent&#39;s context.<br><br>The agent combines that debugger knowledge with its understanding of the project code. It can choose useful locations for breakpoints and logpoints. It can start a debug run configuration and read actual values. As the evidence develops, it can move its observation points. The source stays untouched.<br><br>What attendees will learn:<br><br>- How Logpoints capture runtime state without suspending the program or modifying its source<br>- How to investigate behavior inside compiled third-party libraries<br>- How navigable debugger output connects runtime observations to their origin in code<br>- How an agent combines code context with debugger knowledge to place useful breakpoints and logpoints<br>","fieldGroup":null,"fieldGroupValues":[],"id":23533,"keywords":[{"name":"debugger"},{"name":"logpoints"},{"name":"runtime"},{"name":"intellij"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":30,"freeTickets":2,"id":957,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Tools-in-Action","pause":false,"scheduleInSmallRoom":false,"slug":"tia30"},"speakers":[{"anonymizedBio":null,"bio":"Anton is a Developer Advocate at JetBrains, where he focuses on IntelliJ IDEA and the intersection of AI agents and developer tooling. A Java Champion since 2014 with a background in server-side development, he has spent over a decade building tools and content for developers. These days, you&#39;ll find him speaking at conferences, exploring agentic workflows, and looking for ways to make the development experience smarter and more enjoyable.","blueskyUsername":"antonarhipov.bsky.social","company":"JetBrains","countryName":"Estonia","firstName":"Anton","fullName":"Anton Arhipov","id":5831,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-d4d89f78-d4bb-456f-ab6f-4768b4822745.jpg","lastName":"Arhipov","linkedInUsername":"antonarhipov","mastodonUsername":"","twitterHandle":"antonarhipov"}],"summary":"IntelliJ IDEA’s debugger tools let coding agents inspect runtime state without altering source code. Using logpoints, agents can trace behavior in running code, including compiled third-party libraries, and link output back to its origin. The debugger skill guides agents to investigate bugs more cleanly than print statements.","timeSlots":[],"title":"Teaching a New Dog Old Tricks: Give the Agent a Debugger","totalFavourites":8,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"We&#39;ve all been there: you need a quick automation script, so you reach for Bash or Python and immediately get tripped up by syntax you can never remember. Or you try JavaScript and watch 5 + 3 quietly become &quot;53&quot;. You want something fast, but you also want type safety and a language you actually know.<br><br>Good news: modern Java has become a real scripting language. Shebang support, single-file execution, and instance main methods mean no boilerplate and no build step—just a file you can run. When you need external libraries, JBang handles dependencies with a single line. And unlike a hastily typed shell script, the compiler still has your back before anything runs.<br><br>Through live demos, we&#39;ll go from a throwaway one-liner to genuinely useful scripts, using records and text blocks to keep them short and readable: parsing a CSV and calling an API, or building a self-contained tool your AI harness can invoke, returning typed, predictable output instead of best-effort text. All in Java, and all without a pom.xml in sight. You&#39;ll leave with a new tool for the jobs you currently hand off to Bash.","fieldGroup":null,"fieldGroupValues":[],"id":10021,"keywords":[{"name":"jbang"},{"name":"scripting"},{"name":"java"},{"name":"automation"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":30,"freeTickets":2,"id":957,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Tools-in-Action","pause":false,"scheduleInSmallRoom":false,"slug":"tia30"},"speakers":[{"anonymizedBio":null,"bio":"Loïc Magnette is a seasoned software developer with a strong background in consulting. Currently a senior developer at Oniryx, he specializes in Java and Angular, delivering innovative solutions and sharing his knowledge as a speaker. As a co-organizer of the Belgian Java User Group (BeJUG), he fosters connections within the developer community. Outside of tech, Loïc’s passion for wildlife inspires his work and creativity.","blueskyUsername":"lomagnette.bsky.social","company":"Oniryx","countryName":"Belgium","firstName":"Loïc","fullName":"Loïc Magnette","id":5809,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-cda3ea24-0a68-4fe3-a93c-e199a1d8fedf.jpg","lastName":"Magnette","linkedInUsername":"lomagnette","mastodonUsername":"","twitterHandle":"LoMagnette"}],"summary":"The talk shows how modern Java has become practical for scripting and automation, thanks to shebang support, single-file execution, and instance main methods. It also covers JBang for dependency management and advanced use cases, with live demos demonstrating fast, maintainable Java scripts.","timeSlots":[],"title":"Java Script (No, Not That One): Modern Automation with Java","totalFavourites":5,"track":{"id":2754,"name":"Java Language & Platform","description":"Project Loom, Leyden, Valhalla, Panama, and the ever evolving JVM.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-coffee-mug.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"What do you learn after spending years maintaining and evolving a technology that predates modern programming languages, cloud platforms, and smartphones?<br><br>This session explores real engineering challenges encountered while building PDF technology at scale, from compatibility and performance to security, testing, and interoperability. Through a series of stories and hard-earned lessons, you&#39;ll see why mature systems can be some of the best teachers for designing resilient software and why the hardest problems are often the ones users never notice.","fieldGroup":null,"fieldGroupValues":[],"id":50104,"keywords":[],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":null,"description":null,"dinerInvite":true,"duration":40,"freeTickets":1,"id":5151,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":null,"name":"Lunch Talk","pause":false,"scheduleInSmallRoom":false,"slug":"lunch-talk"},"speakers":[{"anonymizedBio":null,"bio":"Software engineer at Apryse, specializing in PDF technologies and the iText SDK. With nearly 7 years of experience in backend development, he works on core PDF internals, standards compliance.","blueskyUsername":"","company":"Apryse","countryName":"Belgium","firstName":"Guust","fullName":"Guust Ysebie","id":50054,"imageUrl":null,"lastName":"Ysebie","linkedInUsername":"guust-ysebie-648749291","mastodonUsername":"","twitterHandle":""}],"summary":"A session on engineering lessons from maintaining and scaling legacy PDF technology, covering compatibility, performance, security, testing, and interoperability. It shows how mature systems teach resilient software design and highlights the invisible challenges behind reliable user experiences.","timeSlots":[],"title":"Engineering Lessons from Working on Software Older Than Me","totalFavourites":null,"track":{"id":1701,"name":"Development Practices","description":"All about Getting Stuff Done right. Methodologies, better practices, etc.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-hearts-card.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"Have you ever wondered what it takes to become a conference speaker? Where do you start? Which topic do you pick? And how do you actually deliver a talk that lands?<br>In this session, a group of experienced speakers will answer these questions and more. We&#39;ll share tips on getting started, writing proposals that get accepted, preparing your material, and delivering a great presentation. We&#39;ll talk about what worked, what didn&#39;t, and the lessons we learned along the way. You&#39;ll leave with practical takeaways - and the confidence to submit your first proposal.","fieldGroup":null,"fieldGroupValues":[],"id":19707,"keywords":[{"name":"speaking"},{"name":"proposals"},{"name":"presentations"},{"name":"technical events"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":60,"freeTickets":1,"id":954,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"BOF","pause":false,"scheduleInSmallRoom":true,"slug":"bof60"},"speakers":[{"anonymizedBio":null,"bio":"Bert Jan is CTO at OpenValue and focuses on Java, AI, software architecture, Continuous Delivery and DevOps. Bert Jan is a Java Champion, JavaOne Rock Star speaker, Duke&#39;s Choice Award winner and leads NLJUG, the Dutch Java User Group. He loves to share his experience by speaking at conferences, writing for the Dutch Java magazine and helping out Devoxx4Kids with teaching kids how to code. Bert Jan is easily reachable on BlueSky via @bjschrijver.dev.","blueskyUsername":"bjschrijver.dev","company":"OpenValue","countryName":"Netherlands","firstName":"Bert","fullName":"Bert Jan Schrijver","id":19753,"imageUrl":"https://avatars.githubusercontent.com/u/4464854?v=4","lastName":"Jan Schrijver","linkedInUsername":"bjschrijver","mastodonUsername":null,"twitterHandle":"bjschrijver"}],"summary":"This session, led by experienced speakers, offers practical guidance on starting technical speaking: choosing topics, writing proposals, preparing talks, and delivering effectively. It shares lessons learned, successes, failures, and key takeaways to help attendees begin their own speaking journey.","timeSlots":[],"title":"Getting started with speaking: Your first conference talk","totalFavourites":8,"track":{"id":1253,"name":"People, Practices & Career","description":"Leading teams, engineering culture, and career resilience.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-deepfake-ai.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"In this session I will share <strong>best practices</strong> for using MCP setups and AI <strong>Agents</strong> in real development workflows 🤖. The goal is to improve both <strong>quality</strong> and <strong>security</strong>, since even with all the excitement around these tools, it’s still very easy to create confusing interactions, accidental data exposure, or Agents that trigger actions we never intended.<br><br>I will also present r<strong>eports comparing how different LLM models generate code</strong>, showing clear differences in stability, output consistency, and the amount of guidance each model needs to avoid mistakes.<br><br>And last but not least, I will talk about the elephant in the room: <strong>metrics 📏</strong>. How do we measure our improvement using AI? Is it something companies are doing right? Spoiler alert ... no 😰<br><br>The talk focuses on helping teams build <strong>more reliable, productive, and secure AI workflows</strong>, making AI code generation a real benefit rather than a risky experiment 😅.","fieldGroup":null,"fieldGroupValues":[],"id":9032,"keywords":[{"name":"security"},{"name":"metrics"},{"name":"agents"},{"name":"mcp"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"International Speaker, JavaChampion, Cofounder of JBCNConf and DevBcn conferences in Barcelona, and AI4Devs conference in Amsterdam.<br><br>Working as a Principal AI Development Enabler at GK Software, taking care of the AI Adoption with best practices and tooling and helping the company as the Engineering Excellence Lead.<br><br>Formerly Senior Staff Developer Advocate in Java at Sonar (SonarQube), focused on Code Quality, Dev Productivity, AI &amp; Security.<br><br>I have worked as a (paid) developer for more than 30 years ago using multiple languajes, but for the last 15 using Java. Although I started when I was 14 with my Amstrad CPC 6128 :)<br><br>I am very interested in simulated reality, psychology, philosophy, critical thinking, AI and Java.","blueskyUsername":"","company":"GK Software","countryName":"Spain","firstName":"Jonathan","fullName":"Jonathan Vila López","id":8693,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-f359c583-9652-403e-8cf9-20a2e4265cef.jpg","lastName":"Vila López","linkedInUsername":"jonathanvila","mastodonUsername":"","twitterHandle":"vilojona"}],"summary":"This session shares best practices for MCP setups and AI agents in development workflows, focusing on quality, security, and avoiding unintended actions. It compares LLM code-generation stability and consistency, and addresses how to measure AI-driven improvement, helping teams build reliable, productive, and safe AI workflows.","timeSlots":[],"title":"Agents With Seatbelts: Practical Ways to Keep AI Code Gen Under Control","totalFavourites":22,"track":{"id":1701,"name":"Development Practices","description":"All about Getting Stuff Done right. Methodologies, better practices, etc.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-hearts-card.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"Maven is more than 20 years old, and it&#39;s last major version (Maven 3) was released in 2010. Since then Maven got several great updates, but the Maven team also realized that Maven can&#39;t evolve further without huge changes which have the capability to break the whole ecosystem if done wrong. Now - after years of intensive planning and coding - the release of Maven 4 is closer than ever before!<br><br>In this talk I&#39;ll speak about the motivation and challenges the team had while developing Maven 4 and of course about its new features and improvements.","fieldGroup":null,"fieldGroupValues":[],"id":21675,"keywords":[{"name":"maven"},{"name":"version"},{"name":"features"},{"name":"ecosystem"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Matthias loves Java, Jakarta EE / Microprofile, testing and documentation. He is a Maven committer and maintainer of the JUnit extension library &quot;JUnit Pioneer&quot;.","blueskyUsername":"bukama.bsky.social","company":"ITZBund","countryName":"Germany","firstName":"Matthias","fullName":"Matthias Bünger","id":3924,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-c097beff-4de0-4a4d-ab32-87019a3d1108.jpg","lastName":"Bünger","linkedInUsername":"matthias-bünger-a71b60282","mastodonUsername":"https://mastodon.social/@bukama","twitterHandle":""}],"summary":"This talk explores Maven 4’s long-awaited development, the challenges of evolving a mature ecosystem without breaking compatibility, and the motivations behind its redesign. It also highlights key new features and improvements in the upcoming major release.","timeSlots":[],"title":"All you need to know about Maven 4!","totalFavourites":16,"track":{"id":1701,"name":"Development Practices","description":"All about Getting Stuff Done right. Methodologies, better practices, etc.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-hearts-card.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"We are living through a revolution. <br><br>From assisting us in writing code to coordinating a fleet of agents, we find ourselves in the eye of the storm. Coding agents like Claude Code, Copilot, Codex CLI, and Cursor are reshaping our craft and our place within the company.<br><br>I brought Claude Code to my company, Back Market, in June 2025. We were &quot;behind&quot; other companies, such as Doctolib. Step by step, we moved from smart autocompletion to writing features end-to-end. Today we have Product Managers who write code, developers who do architecture and design, and managers who build their own internal tools—all with Claude Code. And there&#39;s me, looking at how we can control our monthly spending, leading a team of 40 subject-matter experts, with successes (and failures).<br><br>But more broadly, what&#39;s the flip side? What happens when a junior developer opens a single pull request with 50 modified files using Claude Code? What happens when one team migrates a module in place of the team that originally owned it, with Claude Code? What are the risks, and how do you stay in control within your company?<br><br>Finally, as developers—whether junior or senior—this asks us to adapt. <br>How do we get up to speed? What does prompting actually mean? How does an agent work? What are Skills? What&#39;s the impact on CI/CD? On the Platform engineering teams? On the run side? On upfront design?<br><br>I don&#39;t think AI will replace developers. I think developers who use AI can replace us.","fieldGroup":null,"fieldGroupValues":[],"id":8171,"keywords":[{"name":"coding"},{"name":"developers"},{"name":"ai"},{"name":"agents"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Nicolas is a Principal Engineer at Back Market, a leader in refurbished electronic devices in 18 countries. He is also the co-creator and organizer of Devoxx France. He has a JVM background but has worked in different industries and technologies. Before joining Back Market, he was a Principal Engineer at Doctolib, during the COVID19 crisis. <br>He&#39;s also the author of &quot;le Touilleur Express&quot;, a blog about the journey of a software developer. <br>He has a YouTube Channel with more than 800 subscribers, on GenAI and Coding Agent.<br>","blueskyUsername":null,"company":"Back Market","countryName":"France","firstName":"Nicolas","fullName":"Nicolas Martignole","id":7648,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-e4f8b008-e24f-4ca0-a520-acbb98ac703a.jpg","lastName":"Martignole","linkedInUsername":"nmartignole","mastodonUsername":null,"twitterHandle":"nmartignole"}],"summary":"AI coding agents are transforming software development, enabling non-developers to build features and teams to work end-to-end. The talk explores real-world adoption, risks like large uncontrolled changes, cost management, and how developers and organizations must adapt to prompting, agents, skills, and CI/CD.","timeSlots":[],"title":"0 to 350 Engineers on Claude Code: What Could Go Wrong?","totalFavourites":21,"track":{"id":1253,"name":"People, Practices & Career","description":"Leading teams, engineering culture, and career resilience.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-deepfake-ai.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"An AI deletes a production database… and insists it didn&#39;t. Welcome to modern software engineering.<br>95% of developers now use AI tools weekly. Claude Code, Cursor, Copilot - agentic coding assistants are writing more code than ever. But the data shows a darker side: up to 5 times more technical debt, over 40% higher code complexity, and a flood of code that needs review.<br>The real shift isn&#39;t about writing more code faster. It&#39;s about moving from writing code to writing specs, from building systems to generating them, and from trusting output to verifying it.<br>In this talk, I&#39;ll share real stories - including a production database incident, a 45-minute spec-to-app demo, and lessons from 3 projects built in 1 hour. You&#39;ll leave with a practical framework: experiment boldly, deploy carefully, and raise the bar on testing. One rule applies no matter what: if you bring it to a review, it&#39;s your code.","fieldGroup":null,"fieldGroupValues":[],"id":19706,"keywords":[{"name":"accountability"},{"name":"softwareengineering"},{"name":"verification"},{"name":"generativeai"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Bert Jan is CTO at OpenValue and focuses on Java, AI, software architecture, Continuous Delivery and DevOps. Bert Jan is a Java Champion, JavaOne Rock Star speaker, Duke&#39;s Choice Award winner and leads NLJUG, the Dutch Java User Group. He loves to share his experience by speaking at conferences, writing for the Dutch Java magazine and helping out Devoxx4Kids with teaching kids how to code. Bert Jan is easily reachable on BlueSky via @bjschrijver.dev.","blueskyUsername":"bjschrijver.dev","company":"OpenValue","countryName":"Netherlands","firstName":"Bert","fullName":"Bert Jan Schrijver","id":19753,"imageUrl":"https://avatars.githubusercontent.com/u/4464854?v=4","lastName":"Jan Schrijver","linkedInUsername":"bjschrijver","mastodonUsername":null,"twitterHandle":"bjschrijver"}],"summary":"This talk explores how generative AI is changing software engineering—from coding to verification and guidance. It shares lessons, successes, failures, and responsible practices for using fast-evolving AI tools. The key message: even when AI does the work, humans remain accountable for the outcome.","timeSlots":[],"title":"Software engineering in the age of AI agents: who’s in control?","totalFavourites":20,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"For most of our careers, the scarce thing was producing code. That world is ending. An assistant now produces competent code faster than any of us can read it, and the bottleneck has moved from writing to understanding.<br><br>Nothing moved on the responsibility side, though. We are still accountable for every line we merge, no matter who or what typed it. Staying in the loop, knowing the system, owning the design, that is the job description now.<br><br>This talk is not a manifesto, it is a set of recipes. The practices I use daily to stay in control of code that arrives faster than I could write it:<br><br><ol><li><strong>Phased delivery</strong> - Large tasks are split into small phases with a review gate after each one. No big-bang diffs.</li><li><strong>Walk-throughs</strong> - The assistant guides me through a change step by step, in reading order, instead of leaving me alone with a raw diff.</li><li><strong>Made for humans </strong>- Correct is not the bar, understandable is. Design and readability are acceptance criteria, and I send back what does not meet them.</li><li><strong>Engineering depth </strong>- Know your stuff. The deeper you understand your system, the harder it is to be fooled by a confident, plausible answer.</li><li><strong>Files and comments </strong>- Sessions produce files and in-code comments instead of long chat threads. Easy to navigate, easy to annotate for the assistant.</li></ol><br>Together these form a flow that keeps me in control and grows my knowledge instead of eroding it. You will leave with techniques you can apply the next day, whatever assistant you use.","fieldGroup":null,"fieldGroupValues":[],"id":25042,"keywords":[{"name":"readability"},{"name":"understanding"},{"name":"control"},{"name":"code"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Renato Cavalcanti is an independent software engineer and consultant specializing in distributed systems, with deep expertise in Event Sourcing, CQRS, and Domain-Driven Design. He has been a contributor to Akka since 2017, working on the Akka libraries, and most recently Akka Runtime and Akka SDK, where he applies distributed systems principles, such as durability, workflows, supervision, and observability, to the design of reliable multi-agent AI systems.<br><br>A Scala developer since 2009, he founded BeScala, the Belgian Scala User Group, and is a regular speaker at Scala, Java, and broader developer conferences, as well as workshops on Scala and Event Sourcing.","blueskyUsername":"renato.cavalcanti.io","company":"Octo Cogito","countryName":"Belgium","firstName":"Renato","fullName":"Renato Guerra Cavalcanti","id":24197,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-c563b2ce-c0f7-426b-8f1f-81169b8efe6b.jpg","lastName":"Guerra Cavalcanti","linkedInUsername":"renatocavalcanti","mastodonUsername":"","twitterHandle":""}],"summary":"As AI writes code faster than humans can read it, the bottleneck shifts to understanding and accountability. This talk shares practical techniques—phased delivery, guided walk-throughs, human-centered review, engineering depth, and file-based collaboration—to keep developers in control, improve comprehension, and maintain design ownership.","timeSlots":[],"title":"Owning the Code You Didn't Type","totalFavourites":17,"track":{"id":1701,"name":"Development Practices","description":"All about Getting Stuff Done right. Methodologies, better practices, etc.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-hearts-card.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"AI is having a huge impact on our software development teams - nobody is sure how the role of a developer will evolve, and Simon and Katie don’t have the perfect prediction either!<br>Now that our teams have ever more capable coding assistants working around the clock, we are seeing “new” bottlenecks appear around value and trust questions. In response to this, we’re seeing organizations create new flavors of engineering roles, move down to one-pizza-teams, move to product owners and their AI wrangler (a one-pizza-slice team?), or even build factory lines. <br>This is not the first time the way we approach software teams has changed: we’ve gone from silos and super specialization to cross-functional Scrum teams and 2-pizza teams; from T-shaped and M-shaped professionals to full-stack, full-lifecycle, DevSecFin…Ops, value streams, Team Topologies, and more. We’ve added all kinds of coaches and then removed them again.<br>So who is invited to the pizza party of the future? Who makes decisions, who takes responsibility, what new and old roles and skills will be needed? And who is no longer welcome? We’ll take a look at what some of the friendlier agile critics from the past can warn us about. We will see how their takes can help us move to a more value-oriented future with agents and humans collaborating on user needs.","fieldGroup":null,"fieldGroupValues":[],"id":8164,"keywords":[{"name":"teams"},{"name":"software"},{"name":"ai"},{"name":"agile"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Katie is a delivery lead, manager, (ex) software developer, and trainer at Reply Comsysto. Over the past 8 years, she has been involved in complex software projects spanning various domains, from semiconductor manufacturing to food supply chains.<br>Developing quality software products requires a team effort. Therefore, her focus is on fostering a collaborative team culture, promoting an agile mindset, and continuously evolving suitable processes within the organization.","blueskyUsername":null,"company":"Comsysto Reply","countryName":"Germany","firstName":"Katie","fullName":"Katie Clark","id":5803,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-02e30f45-7d0b-455a-9fbf-17e105b17359.jpg","lastName":"Clark","linkedInUsername":null,"mastodonUsername":null,"twitterHandle":null},{"anonymizedBio":null,"bio":"Simon Rohrer, Head of Enterprise Architecture and Ways of Working at Saxo Bank has spent his career advocating for modern ways of working, with roles in hands on software engineering, agile coaching with a focus on technical excellence, and senior roles in enterprise architecture and strategy. <br><br>He&#39;s a co-author of Jonathan Smart&#39;s IT Revolution Press book Sooner Safer Happier, and working on a chapter on organising for outcomes for the forthcoming follow-up book.","blueskyUsername":null,"company":"Saxo Bank","countryName":"Denmark","firstName":"Simon","fullName":"Simon Rohrer","id":7602,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-399454c9-6bcf-448e-ab7d-778aac81bcc3.jpg","lastName":"Rohrer","linkedInUsername":null,"mastodonUsername":null,"twitterHandle":null}],"summary":"AI is reshaping software teams, creating new bottlenecks around value and trust. The talk explores how developer roles, team structures, and responsibilities may evolve—from cross-functional teams to AI-assisted models—drawing on past agile critiques to imagine a more value-driven future of human-agent collaboration.","timeSlots":[],"title":"The pizza party of the future 🍕 software teams and product value in the age of coding agents","totalFavourites":10,"track":{"id":1253,"name":"People, Practices & Career","description":"Leading teams, engineering culture, and career resilience.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-deepfake-ai.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"“It depends.” It’s the classic software architect’s answer… but what does it actually depend on? Patterns like Clean and Hexagonal Architecture are great tools, but they are often applied dogmatically. When we automatically wrap simple features in endless layers of abstraction and domain interfaces, we introduce unnecessary distance between related concepts. Those extra layers are intended to decouple, but they can sometimes just make our code harder to navigate, test, and maintain. In this talk, we’ll take a step back from “best practices” and look at the trade-offs behind architectural choices. Using clear Java code samples, we will explore the metrics that help guide these decisions: coupling, cohesion, and distance. Instead of looking for universally “clean” solutions, we’ll discuss how to evaluate what makes sense for your specific context.","fieldGroup":null,"fieldGroupValues":[],"id":8186,"keywords":[{"name":"cohesion"},{"name":"architecture"},{"name":"abstraction"},{"name":"coupling"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Ties is a software engineer with a passion for concepts, software engineering fundamentals and helping others. He combines these passions by doing public speaking, volunteer work for organisations like Devoxx4kids and codingcoach and working as a Software Quality Expert at Alliander.","blueskyUsername":"","company":"Alliander","countryName":"Netherlands","firstName":"Ties","fullName":"Ties van de Ven","id":8665,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-0f6945a0-82c6-4715-8549-69f9740c0197.jpg","lastName":"van de Ven","linkedInUsername":"tiesvandeven","mastodonUsername":"","twitterHandle":""}],"summary":"The talk critiques dogmatic use of Clean and Hexagonal Architecture, arguing that unnecessary abstraction can hurt code clarity and maintainability. Using Java examples, it explores trade-offs and decision metrics—coupling, cohesion, and distance—to help choose architecture based on context rather than universal “best practices.”","timeSlots":[],"title":"The Hexagonal Hangover","totalFavourites":16,"track":{"id":1252,"name":"Architecture & Modernization","description":"Designing for agentic workflows, event-driven systems, and legacy transformation.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-blockchain.png"}},{"afterVideoURL":null,"audienceLevel":"ADVANCED","description":"While some folks believe Open Source is important to do Because It&#39;s The Right Thing To Do, others have been able to persuade their organisations to open source valuable IP because it brings something to the company. Still others have been able to make money off an open source project they started.<br><br>Has this changed in the age of AI? If AI is being trained on open source and freely available code, does that make open source libraries and tools more or less valuable? Can an organisation still make money off their open source tools if AI agents can just go ahead and create code for them without needing training, consulting or support contracts?<br><br>Or was the value never in the money it brought, but in the community story? Making your code freely available, creating useful documentation and example code, supporting the community that grows around your open source tool might be the real goal, not simply the path to the destination.<br><br>Trisha wants to bring together open source maintainers, contributors and enthusiasts to discuss difficult questions around running an open source tool. Like:<br><ul><li>How does it support itself financially?</li><li>How do you decide what belongs in an open source offering vs what should be commercial/paid?</li><li>Why do we create open source tools in the first place?</li><li>What are the pros and cons of having open source tools in an AI world?</li><li>How do we build businesses around open source tools?</li><li>How do we use open source tools to support businesses?</li></ul>","fieldGroup":null,"fieldGroupValues":[],"id":8167,"keywords":[{"name":"ai"},{"name":"opensource"},{"name":"community"},{"name":"business"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":60,"freeTickets":1,"id":954,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"BOF","pause":false,"scheduleInSmallRoom":true,"slug":"bof60"},"speakers":[{"anonymizedBio":null,"bio":"Trisha Gee is a Java Champion, author, and internationally recognised speaker who has spent over 20 years building software and helping developers build it better. From high-performance financial systems to developer tools, she brings hands-on experience and a clear, practical perspective on what actually makes teams effective, and how engineering organisations build better software.<br><br>She is the co-author of Head First Java and Getting to Know IntelliJ IDEA, and her talks, articles, and videos are widely used by developers to navigate complex topics and improve how they work. She focuses on developer productivity, proven engineering practices, and the role of human judgment in an increasingly AI-assisted world.<br><br>Trisha got her start in developer communities, founding and supporting user groups and engaging directly with developers. She continues to champion community-led learning, inclusive practices, and the idea that great software comes from people, not just tools.","blueskyUsername":"trishagee.bsky.social","company":"Digital Aguacates","countryName":"Spain","firstName":"Trisha","fullName":"Trisha Gee","id":7646,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocLsMb8CUpH7W48b3uQ9kMWx6uoYjj07hJVCxmz2MT5fbaMVope5ow=s96-c","lastName":"Gee","linkedInUsername":"trishagee","mastodonUsername":"https://mastodon.social/@trishagee","twitterHandle":"trisha_gee"}],"summary":"This talk explores how AI changes the value of open source, asking whether libraries and tools remain commercially useful when AI can generate code. It brings together maintainers and contributors to discuss funding, community, business models, and the purpose of open source in an AI-driven world.","timeSlots":[],"title":"Open Source in the Age of AI: Where's the value?","totalFavourites":8,"track":{"id":1701,"name":"Development Practices","description":"All about Getting Stuff Done right. Methodologies, better practices, etc.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-hearts-card.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"More and more of us use <strong>Coding Assistants</strong> that excel at **writing code**.<br><br>They are <strong>good</strong> and they are <strong>expensive</strong>!<br><br>The same underlying models can be used to write<br>more <strong>specialized, cheaper, more predictable AI agents</strong>.<br><br>+ Maybe you need an agent <strong>specialized for your business</strong>.<br>+ Or you need a <strong>cheap</strong>, disposable one for a quick and dirty task.<br>+ Later, you want <strong>multiple agents</strong> to collaborate.<br><br>All of that can be done with no code, leveraging <a href=\"https://docker.github.io/docker-agent/\" rel=\"noopener noreferrer\" target=\"_blank\">Docker Agent</a>,<br>an open-source project and a real Swiss Army knife for AI agent creation:<br><br>+ Create intelligent agents that solve real problems in minutes, <strong>without code</strong>.<br>+ Test, benchmark, and optimize agent behavior systematically through <strong>evals</strong>.<br>+ Build collaborative multi-agent architectures with <strong>MCP, ACP and A2A</strong>.<br>+ Work with any LLM provider on your own terms: <strong>frontier, local, small, large</strong>.","fieldGroup":null,"fieldGroupValues":[],"id":19713,"keywords":[{"name":"docker agent"},{"name":"ai agents"},{"name":"multi-agent"},{"name":"coding assistants"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Engineer at Docker, working an AI agents.","blueskyUsername":null,"company":"Docker","countryName":"France","firstName":"David","fullName":"David Gageot","id":19756,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-00adb09a-3b25-4aa0-a9c0-c7a771d40845.jpg","lastName":"Gageot","linkedInUsername":null,"mastodonUsername":null,"twitterHandle":null}],"summary":"Docker Agent is an open-source, no-code platform for creating specialized AI agents quickly and affordably. It supports testing, benchmarking, optimization, and collaborative multi-agent workflows, while working with any LLM provider.","timeSlots":[],"title":"Create your own AI Agents without code","totalFavourites":11,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"This conference started in 2001 as Javapolis, the same year J2EE&#39;s first specs were taking shape. Twenty-five years later, on this stage, we&#39;re closing that loop: implementing those specs with a 2026 AI coding agent as co-author, live.<br><strong style=\"color: rgb(0, 0, 0);\">Part 1 — Building Vidocq, then building something new, live.</strong> We&#39;ll walk through how Vidocq, our Jakarta EE Core Profile 11 and MicroProfile 7.1 runtime, came together: the choice to code against formal specifications rather than our own assumptions, and what changed once AI joined that process. Where AI-generated code passed our review but failed spec conformance. Where a spec&#39;s edge cases caught something the AI happily hallucinated past. The workflow we landed on to keep AI output honest against TCK-level requirements. Then we&#39;ll do it live: implementing a Jakarta EE or MicroProfile spec we haven&#39;t built yet, on stage, with an AI agent constrained by the spec text. Real live coding, backup video included in case it goes sideways.<br><strong style=\"color: rgb(0, 0, 0);\">Part 2 — Vidocq, from spec to CLI.</strong> A fast tour of what defines the runtime: JPMS enforced at unit granularity, Build Compatible Extensions, and the JDK 25 features (virtual threads, structured concurrency, scoped values) behind Vidocq&#39;s zero external dependencies. Then straight to the command line: we&#39;ll bootstrap and build a small app on Vidocq live, showing how those choices feel to work with, not just how they look in a diagram.<br>Two decades of spec work, one AI model, one CLI. Watch the gap close.<br>","fieldGroup":null,"fieldGroupValues":[],"id":17765,"keywords":[{"name":"cdi"},{"name":"jpms"},{"name":"microprofile"},{"name":"jakartaee"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":180,"freeTickets":2,"id":959,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Deep Dive","pause":false,"scheduleInSmallRoom":false,"slug":"deep180"},"speakers":[{"anonymizedBio":null,"bio":"Antoine is a Java Champion and former spec lead for Jakarta EE CDI. He was part of the founding team behind Quarkus at Red Hat and worked on major MicroProfile specifications such as Fault Tolerance and Health Check. Today, Antoine is an architect and technical expert at SCIAM, where he leads complex projects largely built on the very technologies he helped design. He is also the co-creator of the Vidocq framework, a modern MicroProfile stack built on Java 25 and JPMS.","blueskyUsername":"antoine.sabot-durand.net","company":"SCIAM","countryName":"France","firstName":"Antoine","fullName":"Antoine Sabot-Durand","id":18064,"imageUrl":"https://avatars.githubusercontent.com/u/489817?v=4","lastName":"Sabot-Durand","linkedInUsername":"antoinesabotdurand","mastodonUsername":"","twitterHandle":""},{"anonymizedBio":null,"bio":"Yann Blazart is a Senior Tech Lead and a passionate advocate of Jakarta EE and Quarkus. He has been in love with Java for 26 years and has been working with SCIAM since 2019. A long-time open-source contributor, Yann has taken part in projects such as WicketExtJs, TomEE, and JAX-WS Metro.<br>He is no stranger to the Devoxx stage: he ran two Hands-on Labs at Devoxx France (2012 and 2015) on Java EE, and more recently delivered a Hands-on Lab on Quarkus and Apache Ignite at Riviera Dev, Devoxx BE, and Devoxx MA in 2023. In 2024, he laid the foundations of what has since become langchain4j-cdi. In 2026, together with Antoine Sabot-Durand, he built Vidocq (<a href=\"https://vidocq.dev\" rel=\"noopener noreferrer\" target=\"_blank\">https://vidocq.dev</a>) — the first fully European MicroProfile 7.1 runtime.","blueskyUsername":"yblazart.bsky.social","company":"SCIAM","countryName":"France","firstName":"yann","fullName":"yann Blazart","id":18083,"imageUrl":"https://lh3.googleusercontent.com/a/AAcHTte0rDSnHTsgef7nTSqwxu70yJKQehjTgrVJ3oSkC7n6hlw=s96-c","lastName":"Blazart","linkedInUsername":"yblazart","mastodonUsername":"","twitterHandle":"yblazart"},{"anonymizedBio":null,"bio":"Sébastien Blanc is a Passion-Driven-Developer with one primary goal : Make the Developers Happy. He likes to share his passion by giving talks that are pragmatic, fun and focused on live coding.","blueskyUsername":"sebi2706.bsky.social","company":"SCIAM","countryName":"France","firstName":"Sebastien","fullName":"Sebastien Blanc","id":21521,"imageUrl":"https://lh3.googleusercontent.com/a-/AOh14GghdlsQf-LeH_np8EgyP0zMkqdtdA3aeHvPYsYOag=s96-c","lastName":"Blanc","linkedInUsername":"sébastien-blanc-08a73b1","mastodonUsername":"","twitterHandle":"sebi2706"}],"summary":"A candid retrospective on building a Jakarta EE Core Profile and MicroProfile runtime from scratch. It covers architectural tradeoffs, JPMS-driven design changes, CDI event lessons, spec interpretation, dependency minimization, governance decisions, and what they would do differently with JDK 25 and hindsight.","timeSlots":[],"title":"Can AI Build a Jakarta EE Runtime? The Vidocq Experiment","totalFavourites":8,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Most agent talks stop when the agent can call a tool. This session tackles the harder and more practical question: how do you build a custom, production-minded agent for your organization’s workflows and guardrails and make it a first-class participant inside the developer’s IDE?<br><br>In this live-coded session, we’ll build a coding agent in Java / Kotlin, connect it directly to an IntelliJ-based IDE through the Agent Client Protocol (ACP), and extend it into an orchestrator that can collaborate with external coding agents such as Codex, Claude, and Gemini.<br><br>You’ll learn how to:<br><ol><li><strong>Build your own agent on the JVM</strong>, including its reasoning loop, tools, state, and guardrails. Although we’ll create a coding agent, the same techniques apply to chatbots, banking assistants, support agents, and other domain-specific systems.</li><li><strong>Connect a custom agent to an IDE through ACP protocol</strong>, without creating a dedicated integration for every agent.</li><li><strong>Integrate and orchestrate multiple external coding agents through ACP </strong>in a coordinated pipeline, assigning each task to the agent best suited to perform it.</li><li>Take advantage of the IDE as more than a chat window by <strong>giving agents access to the project context, code understanding, developer-defined skills, and more!</strong></li></ol><br>By the end of the session, you’ll have a practical blueprint for building an agent that understands your development environment, follows your rules, and can coordinate other agents to complete real software-engineering tasks.","fieldGroup":null,"fieldGroupValues":[],"id":24233,"keywords":[{"name":"guardrails"},{"name":"orchestration"},{"name":"agent"},{"name":"ide"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"<strong>Technical Product Manager for the ACP Protocol and Agent Ecosystem at JetBrains.</strong><br><br>Vadim is the creator and former Technical Lead of the Koog framework at JetBrains. Over the past 9 years at JetBrains, he has contributed to a wide range of projects, including the IntelliJ Kotlin plugin, Kotlin Libraries, the Ktor framework, Qodana Cloud Backend, and Multiplatform Tooling. He also led the technological direction of AI agent development across multiple products as part of the AI Agents Platform.<br>Today, Vadim is responsible for the ACP Protocol and Open Agent Ecosystem in JetBrains IDEs, driving the vision of making JetBrains IDEs the open gateway for integrating any external AI agents while augmenting them with JetBrains IDEs&#39; deep code understanding and development capabilities.","blueskyUsername":"","company":"JetBrains","countryName":"Hungary","firstName":"Vadim","fullName":"Vadim Briliantov","id":10158,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-08d32376-4f7e-4483-800c-cd8ccf513b2f.jpg","lastName":"Briliantov","linkedInUsername":"vadim-briliantov","mastodonUsername":"","twitterHandle":"VadimBriliantov"}],"summary":"This session shows how to build a production-ready coding agent in Java/Kotlin, connect it to IntelliJ via ACP, and orchestrate external agents like Codex, Claude, and Gemini. It covers reasoning loops, tools, guardrails, IDE context, and coordinated multi-agent workflows for real software engineering tasks.","timeSlots":[],"title":"Build the Builder: A Java Coding Agent in Your IDE with ACP","totalFavourites":null,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"AI coding agents are changing how we develop software. Existing evidence suggests that, up to a point, they significantly reduce the importance of the linguistic features of programming languages, and are able to write code equally well in most if not all mainstream languages. But a programming language is much more than syntax. An AI agent can&#39;t make Python code as fast as Java code, and it can&#39;t make Java code run as well as JavaScript in the browser. In a world where syntax is less important, the runtime gains even more prominence, and Java&#39;s runtime is a superb target for code written by, or with the assistance of, AI.<br><br>Java&#39;s runtime - the JVM and the standard library - has been Java&#39;s core strength since Java&#39;s inception. Java programs get faster and easier to operate just by upgrading to a newer JDK, thanks to continually improving JIT optimizations, better GCs, better observability, and a better standard library. This is an especially dynamic time for the Java runtime, integrating value classes from Project Valhalla, AOT code compilation from Project Leyden, making compact object headers the default from Project Lilliput, and removing the need to manually set the heap size so that the JVM could automatically optimise the CPU/RAM tradeoff. Each of these involved tremendous change under the hood, but little or no change to the programming model.","fieldGroup":null,"fieldGroupValues":[],"id":49251,"keywords":[{"name":"java"},{"name":"runtime"},{"name":"jvm"},{"name":"aicoding"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#e89c1a","description":null,"dinerInvite":true,"duration":20,"freeTickets":2,"id":955,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Keynote","pause":false,"scheduleInSmallRoom":false,"slug":"key20"},"speakers":[{"anonymizedBio":null,"bio":"Ron is an architect in the Java Platform Group at Oracle","blueskyUsername":null,"company":"Oracle","countryName":"United Kingdom","firstName":"Ron","fullName":"Ron Pressler","id":49102,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-be6279f3-d001-4451-baa8-03a4ca9af02d.jpg","lastName":"Pressler","linkedInUsername":null,"mastodonUsername":null,"twitterHandle":null}],"summary":"AI coding agents reduce the importance of language syntax, making runtime performance and operability more critical. Java’s JVM and standard library are a strong fit: newer JDKs continually improve speed, observability, garbage collection, and usability without changing the programming model, with major innovations underway in Valhalla, Leyden, and Lilliput.","timeSlots":[],"title":"The Year of the Runtime","totalFavourites":11,"track":{"id":2754,"name":"Java Language & Platform","description":"Project Loom, Leyden, Valhalla, Panama, and the ever evolving JVM.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-coffee-mug.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"The most agentified engineering teams of my clients are all converging towards the same workflow, aiming to optimize the code review step while preventing human cognitive debt and skill erosion. This talk summarizes their practices, teaching actionable steps and milestones to gradually improve the quality of AI-generated code up to a point in which you can safely start decreasing the code review ‘intensity’. Dark Factories are not built ground up - instead, lights are responsibly dimmed, then turned off one by one, area by area, after observing impeccable code produced consistently.<br><br>","fieldGroup":null,"fieldGroupValues":[],"id":31452,"keywords":[{"name":"cognitive debt"},{"name":"ai-generated code"},{"name":"code review"},{"name":"automation"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":180,"freeTickets":2,"id":959,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Deep Dive","pause":false,"scheduleInSmallRoom":false,"slug":"deep180"},"speakers":[{"anonymizedBio":null,"bio":"With 2 decades of software engineering experience, Victor spent the last 10 years training thousands of developers and architects from 150+ companies. Since early 2026, he’s been working hard to help his clients adopt Agentic Engineering, coaching AI Champions, developers, testers, product owners, ops, and managers with practical, actionable advice to kick-start their agentic reconversion. Every year, Victor gives energetic, intense conference talks in which he distills his training sessions - so be sure not to miss these ideas, heavily brainstormed with millennia of total experience. More about him on<a href=\"https://victorrentea.ro\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"background-color: transparent; color: rgb(0, 0, 0);\"> </a><u style=\"background-color: transparent; color: rgb(17, 85, 204);\"><a href=\"https://victorrentea.ro\" rel=\"noopener noreferrer\" target=\"_blank\">https://victorrentea.ro</a></u>, and <u style=\"background-color: transparent; color: rgb(17, 85, 204);\"><a href=\"https://agentic.how\" rel=\"noopener noreferrer\" target=\"_blank\">https://agentic.how</a></u>.","blueskyUsername":null,"company":"Freelance","countryName":"Romania","firstName":"Victor","fullName":"Victor Rentea","id":30506,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-51aee41f-0079-4820-98bb-56e70a2e89d3.jpg","lastName":"Rentea","linkedInUsername":"victor-rentea-trainer","mastodonUsername":null,"twitterHandle":"victorrentea"}],"summary":"This talk shares how agentified engineering teams optimize code review for AI-generated code while avoiding cognitive debt and skill erosion. It outlines practical steps and milestones to progressively improve code quality, then safely reduce review intensity as confidence grows, gradually “dimming the lights” area by area.","timeSlots":[],"title":"Responsibly Dimming the Lights in the Software Factory","totalFavourites":31,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"When a nerdy dad and his musician son join forces, some nice things can happen. MelodyMatrix started as a small MIDI experiment and grew into a full project. We presented it in 2024 with a live piano performance at Devoxx and J-Fall to prove it. A year later, AI entered the workflow.<br><br>Vik is back at the piano. Frank is back with his laptop. And we bring AI-assisted coding to the stage to demonstrate a workflow that actually worked.<br><br>You&#39;ll see how AI turned a photo of a hand-drawn chord diagram into a working JavaFX dynamic view, generated a drum set visualization from a description, and how a disciplined Architect/Coder workflow hunted down frame-by-frame rendering differences in Lottie animations. The key insight: design before prompting, keep sessions scoped, and let the failing test tell you what to fix next.<br><br>We also used this workflow to improve websites, achieve better SEO results, generate UI views, and burn too many API tokens. You&#39;ll see the bill.<br><br>No framework benchmarks. No enterprise use cases. Just two people, one piano, a few open-source projects, and an honest look at what systematic AI-assisted coding feels like from the inside.","fieldGroup":null,"fieldGroupValues":[],"id":13752,"keywords":[{"name":"ai-assisted"},{"name":"seo"},{"name":"midi"},{"name":"javafx"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":null,"description":null,"dinerInvite":true,"duration":40,"freeTickets":1,"id":5151,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":null,"name":"Lunch Talk","pause":false,"scheduleInSmallRoom":false,"slug":"lunch-talk"},"speakers":[{"anonymizedBio":null,"bio":"Frank Delporte is a Java Champion working at azul.com, blogger on webtechie.be and foojay.io, author of &quot;Java Programming for Raspberry Pi&quot; (webtechie.be/books), creator of lottie4j.com and melodymatrix.rocks, and contributor to pi4j.com. Frank blogs about his experiments with Java(FX), sometimes combined with electronic components, on the Raspberry Pi.","blueskyUsername":"frankdelporte.be","company":"Azul","countryName":"Belgium","firstName":"Frank","fullName":"Frank Delporte","id":13552,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-fb7af307-de39-456f-a5d2-879c0f97a2f9.jpg","lastName":"Delporte","linkedInUsername":"frankdelporte","mastodonUsername":"https://foojay.social/@frankdelporte","twitterHandle":""},{"anonymizedBio":null,"bio":"16-year full-stack musician with a broad interest in coding with AI tools.","blueskyUsername":null,"company":"The World","countryName":"Belgium","firstName":"Vik","fullName":"Vik Delporte","id":13553,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-3b6109d7-2292-4e6c-8be8-bcfde5babd11.jpg","lastName":"Delporte","linkedInUsername":null,"mastodonUsername":null,"twitterHandle":null}],"summary":"MelodyMatrix returns with a live piano demo of AI-assisted coding. The talk shows how AI turned sketches and descriptions into JavaFX and UI visuals, fixed Lottie rendering issues via disciplined testing, and improved websites and SEO. It offers an honest, practical look at systematic AI workflows.","timeSlots":[],"title":"Looking at Music, Again. What a Dad, a Pianist Son, and AI Built Together","totalFavourites":5,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Getting a model to run on a Mac is easy. Getting it to run fast — with production-grade throughput, stable memory behavior, and accuracy that survives optimization — is where the real engineering lives. This session goes deep into the inference stack behind the MLX ecosystem (mlx-vlm, mlx-audio, nativ — 5M+ downloads).<br>We&#39;ll work through the full pipeline with measured numbers at every stage:<br><strong style=\"color: rgb(0, 0, 0); background-color: rgba(0, 0, 0, 0);\">Unified memory in practice</strong> — why the architecture that makes 512GB of &quot;VRAM&quot; possible also changes how you batch, allocate, and evict; and where memory bandwidth, not compute, becomes the wall across M-series generations.<br><strong style=\"color: rgb(0, 0, 0); background-color: rgba(0, 0, 0, 0);\">Continuous batching without a scheduler&#39;s luxury</strong> — handling concurrent requests when the same RAM serves the OS, the app, and the model.<br><strong style=\"color: rgb(0, 0, 0); background-color: rgba(0, 0, 0, 0);\">KV-cache compression and quantization</strong> — which techniques hold accuracy on real long-context workloads versus which only look good in benchmarks, with results from MATH500 and LongBench evaluations.<br><strong style=\"color: rgb(0, 0, 0); background-color: rgba(0, 0, 0, 0);\">Speculative decoding across chip generations</strong> — when draft models pay off and when the overhead eats the win.<br><strong style=\"color: rgb(0, 0, 0); background-color: rgba(0, 0, 0, 0);\">Porting war stories</strong> — bugs from porting 1000+ models, and the testing methodology that now catches them.<br>You&#39;ll leave able to reason about the accuracy/latency/memory triangle on consumer hardware — and knowing which server-side habits to unlearn.<br>For engineers building or deploying on-device inference. Familiarity with transformer inference assumed.","fieldGroup":null,"fieldGroupValues":[],"id":31454,"keywords":[{"name":"memory"},{"name":"quantization"},{"name":"latency"},{"name":"inference"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Prince Canuma is Founder and CEO of Neywa Labs, building the inference stack for Apple Silicon. He is the creator and primary maintainer of the MLX open-source ecosystem — mlx-vlm, mlx-audio, and mlx-embeddings — with over 4M combined downloads, foundational to on-device AI on Apple hardware. He previously led developer experience at Neptune AI and worked at Arcee on post-training and inference optimization. His work focuses on model optimization and making AI accessible on local hardware.","blueskyUsername":null,"company":"Neywa Labs","countryName":"Mozambique","firstName":"Prince","fullName":"Prince Canuma","id":16387,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-05bb053f-e043-41b6-af64-c0fcd522a9b7.jpg","lastName":"Canuma","linkedInUsername":"prince-canuma","mastodonUsername":null,"twitterHandle":"Prince_Canuma"}],"summary":"A deep dive into fast, production-grade on-device inference on Macs using the MLX ecosystem. Covers unified memory, continuous batching, KV-cache compression, speculative decoding, and model porting pitfalls, with real benchmark results and engineering tradeoffs for balancing accuracy, latency, and memory on consumer hardware.","timeSlots":[],"title":"Run Frontier Open Models on consumer hardware","totalFavourites":3,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"The world of performance analysis is littered with flawed claims, cognitive biases, dangerous intuitions, and beguiling fallacies. Both Holly and Franz have been guilty of all of the above. Repeatedly. Especially Holly. But this is a no-judgement zone. Some measurement anti-patterns are subtle, and some are downright counter-intuitive. In this talk, Franz and Holly will explain why measuring performance is important, and talk through some of the ways it can go wrong. That would be depressing if that was all there was, so they’ll also introduce a toolbox of questions and principles that you can use to improve the performance of your own applications.<br>These include:<br><ul><li>How to set up a test system</li><li>Recommended load generators</li><li>The USE method</li></ul>","fieldGroup":null,"fieldGroupValues":[],"id":14463,"keywords":[{"name":"performance"},{"name":"biases"},{"name":"measurement"},{"name":"load testing"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"I&#39;ve been working for many years in the computer field. In the last 15 years I&#39;ve cultivated a strong passion in Java development and the under the hood details of OpenJDK, C and (x86) Assembly.<br>Big fan of DDD (Domain Driven Design) world, I&#39;ve developed several Event-Sourcing high performance solutions in the medical and IoT field.<br>I&#39;m an active member of various online communities on performance (<a href=\"https://groups.google.com/forum/#!forum/mechanical-sympathy\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"background-color: transparent; color: rgb(27, 100, 143);\">https://groups.google.com/forum/#!forum/mechanical-sympathy</a>), Senior Principal (Software) Performance Engineer and Performance Lead for Red Hat/IBM on Quarkus, Red Hat Top Inventor (2019).<br>I&#39;ve collaborated to different projects related high-performance computing both as committer and contributors eg Quarkus, Vert-x, Netty committer, JCTools author, PMC of ActiveMQ Apache Artemis (Messaging Broker), HdrHistogram, JGroups-raft, ...","blueskyUsername":"","company":"IBM","countryName":"Italy","firstName":"Francesco","fullName":"Francesco Nigro","id":5826,"imageUrl":"https://lh3.googleusercontent.com/a/AItbvmlsKs3_saDtZgJ0buTR5LvusOsvlGmdbC7cEeks=s96-c","lastName":"Nigro","linkedInUsername":"","mastodonUsername":"","twitterHandle":"forked_franz"},{"anonymizedBio":null,"bio":"Holly Cummins is a Senior Technical Staff Member on the IBM Quarkus team and a Java Champion. Over her career, Holly has been a full-stack javascript developer, a build architect, a client-facing consultant, a JVM performance engineer, and an innovation leader.  Holly has led projects to understand climate risks, count fish, help a blind athlete run ultra-marathons in the desert solo, and invent stories (although not at all the same time). She gets worked up about sustainability, technical empathy, extreme programming, the importance of proper testing, and automating all the things. You can find her at https://hollycummins.com, or follow her on socials at @holly_cummins. <br><br>Holly Cummins is a Senior Principal Software Engineer on the Red Hat Quarkus team and a Java Champion. Over her career, Holly has been a full-stack javascript developer, a build architect, a client-facing consultant, a JVM performance engineer, and an innovation leader.  Holly has led projects to understand climate risks, count fish, help a blind athlete run ultra-marathons in the desert solo, and invent stories (although not at all the same time). She gets worked up about sustainability, technical empathy, extreme programming, the importance of proper testing, and automating all the things. You can find her at http://hollycummins.com, or follow her on socials at @holly_cummins. ","blueskyUsername":"hollycummins.com","company":"IBM","countryName":"United Kingdom","firstName":"Holly","fullName":"Holly Cummins","id":14657,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-77051efe-f3d4-4e19-b52a-fcf146ad6d77.jpg","lastName":"Cummins","linkedInUsername":"holly-k-cummins","mastodonUsername":"https://hachyderm.io/@holly_cummins","twitterHandle":"holly_cummins"}],"summary":"This talk explores common performance measurement mistakes, cognitive biases, and misleading intuitions. Franz and Holly explain why performance testing matters, how it can go wrong, and offer practical guidance for improving application performance, including test system setup, load generators, and the USE method.","timeSlots":[],"title":"When benchmarks go bad - what we learned from measuring performance wrong","totalFavourites":8,"track":{"id":1701,"name":"Development Practices","description":"All about Getting Stuff Done right. Methodologies, better practices, etc.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-hearts-card.png"}},{"afterVideoURL":null,"audienceLevel":"ADVANCED","description":"This talk explores:<br>* how classical RSA encryption works<br>* how quantum algorithms (i.e. Shor’s algorithm) break RSA<br>* brief overview of where we are regarding quantum hardware<br>* why PQC still matters right now, to prevent “harvest now, decrypt later” attacks<br>* what lattice-based PQC looks like and how far along we already are in adopting it<br><br>The target audience is everyone generally interested in future technologies. Especially everyone who might have heard about quantum computing and Shor&#39;s algorithm breaking encryption, but don&#39;t know what that means for the future of cryptography and where we&#39;re at today.<br><br>The key take aways are a (very basic) general understanding how quantum computing works, to understand how it has the potential to break RSA, as well as quantum-safe encryption methods that are already being put in place, how they work and what the future might look like.","fieldGroup":null,"fieldGroupValues":[],"id":24224,"keywords":[{"name":"quantum"},{"name":"lattice"},{"name":"rsa"},{"name":"pqc"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Senior Developer from Germany with over 15 years of experience building web apps and leading frontend teams, currently living and working down under in Australia. Pragmatic perfectionist, always looking for opportunities to learn and grow.","blueskyUsername":"julianburr.de","company":"Sonar AI","countryName":"Australia","firstName":"Julian","fullName":"Julian Burr","id":24164,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocLOSngLPQFgOpPGXfZqQbR2eBQyiBQsKODaA7Kz896TbM9pjw=s96-c","lastName":"Burr","linkedInUsername":"julianburr","mastodonUsername":"","twitterHandle":""}],"summary":"This talk explains RSA encryption, how Shor’s algorithm could break it, the current state of quantum hardware, and why post-quantum cryptography matters now. It also introduces lattice-based quantum-safe encryption and current adoption progress, helping audiences understand future cryptography and “harvest now, decrypt later” risks.","timeSlots":[],"title":"Post-Quantum Today: How Your Passwords Will Be Safe in a Quantum Future","totalFavourites":9,"track":{"id":1255,"name":"Security, Trust & Compliance","description":"Guardrails, prompt injection defence, model governance, and supply-chain security.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-surveillance-camera.png"}},{"afterVideoURL":null,"audienceLevel":"ADVANCED","description":"Core reflection has been a cornerstone of Java since Java SE 1.1. It provides a unified model for inspecting classes, invoking methods and accessing fields. But reflection is also inefficient. Every reflective call must check access, handle argument conversions like boxing and, finally, invoke the target.<br><br>Method handles, introduced in Java 7, address this problem with an execution model that closely mirrors the JVM&#39;s. A method handle is one resolved executable operation: a typed capability whose access rights and type are established up front. In Java 9, var handles extended this model to fields and array elements.<br><br>In this talk, we’ll show how this trick—moving expensive, one-off setup work out of the hot path—has paid dividends across the Java platform. Method and var handles now sit at the core of many modern runtime features, making string concatenation more efficient, revolutionizing native interop with the Foreign Function &amp; Memory API, and enabling serialization to be redesigned on safer foundations.<br><br>This is both an advanced tour of an overlooked part of the Java runtime and a story of resilient platform design: how the right hammer keeps finding new nails.","fieldGroup":null,"fieldGroupValues":[],"id":21666,"keywords":[{"name":"method handles"},{"name":"java runtime"},{"name":"reflection"},{"name":"var handles"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Maurizio Cimadamore is a compiler architect at Oracle. He is currently working on the language and runtime aspects of many foundational projects that will change the shape of the Java platform, such as Project Valhalla and Project Panama.<br>In the previous years, he has contributed to the design and implementation of several features of the Java programming language, such as diamond inference, lambda expressions and local variable type-inference. Maurizio holds a PhD in language design and implementation.","blueskyUsername":null,"company":"Oracle","countryName":"Italy","firstName":"Maurizio","fullName":"Maurizio Cimadamore","id":21513,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-66579526-c2c5-46b5-87ed-6bb6f34121af.jpg","lastName":"Cimadamore","linkedInUsername":null,"mastodonUsername":null,"twitterHandle":null},{"anonymizedBio":null,"bio":"Viktor is a Software Architect in the Java Platform Group at Oracle.<br><br>For more than two decades, he has focused on enabling developers to solve problems with maximal productivity and maintainability.<br><br>Specializing in developer ergonomics in the realm of concurrent, parallel, and distributed programming; he has contributed to the standard libraries of several major programming languages, been involved in more than a dozen Open Source projects, and has spoken at numerous conferences and universities.","blueskyUsername":"","company":"Oracle","countryName":"Sweden","firstName":"Viktor","fullName":"Viktor Klang","id":23049,"imageUrl":"https://lh3.googleusercontent.com/a/AAcHTtdkY-Lks0gsRcvl05pqpW8-GOpvuVndojO99ZxUsSy0rgo=s96-c","lastName":"Klang","linkedInUsername":"","mastodonUsername":"","twitterHandle":""}],"summary":"The talk explains how Java reflection is inefficient, and how method handles and var handles create reusable, typed capabilities that better match JVM linkage. It also shows how this design supports newer APIs like Foreign Function & Memory and serialization, illustrating resilient platform design.","timeSlots":[],"title":"Teaching an Old Handle New Tricks: From Core Reflection to FFM","totalFavourites":5,"track":{"id":2754,"name":"Java Language & Platform","description":"Project Loom, Leyden, Valhalla, Panama, and the ever evolving JVM.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-coffee-mug.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"Are you passionate about Java and curious to meet the people shaping its community here in Belgium? Whether you’re a first-time Devoxx attendee, a seasoned Java veteran, or just someone who enjoys geeking out over JVM minutiae, this is the place to be.<br><br>Join us for an informal and interactive session. We’ll share what the BeJUG is all about: how we connect Java enthusiasts across the country, the kinds of events we organize (from meetups to hands-on sessions), and how you can get involved as an attendee, a speaker, or even a contributor.<br><br>Come say hi, share your ideas, ask questions, or just hang out and network with fellow Java lovers. No slides, no strict agenda, just a room full of like-minded people who care about the Java ecosystem and its vibrant Belgian community. Everyone is welcome, and we’d love to hear what you would like to see from your local Java User Group!","fieldGroup":null,"fieldGroupValues":[],"id":13753,"keywords":[{"name":"java"},{"name":"bejug"},{"name":"community"},{"name":"networking"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":60,"freeTickets":1,"id":954,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"BOF","pause":false,"scheduleInSmallRoom":true,"slug":"bof60"},"speakers":[{"anonymizedBio":null,"bio":"Frank Delporte is a Java Champion working at azul.com, blogger on webtechie.be and foojay.io, author of &quot;Java Programming for Raspberry Pi&quot; (webtechie.be/books), creator of lottie4j.com and melodymatrix.rocks, and contributor to pi4j.com. Frank blogs about his experiments with Java(FX), sometimes combined with electronic components, on the Raspberry Pi.","blueskyUsername":"frankdelporte.be","company":"Azul","countryName":"Belgium","firstName":"Frank","fullName":"Frank Delporte","id":13552,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-fb7af307-de39-456f-a5d2-879c0f97a2f9.jpg","lastName":"Delporte","linkedInUsername":"frankdelporte","mastodonUsername":"https://foojay.social/@frankdelporte","twitterHandle":""},{"anonymizedBio":null,"bio":"Developer Relations Engineer for Timefold, Java Champion and co-organizer of the Belgian Java User Group. Tom has a decade worth of experience delivering systems and loves to share not only knowledge but also passion for our craft. <br><br>You can read more at his blog (http://www.tomcools.be) or follow him on Bluesky (@tomcools.be).","blueskyUsername":"tomcools.be","company":"Timefold","countryName":"Belgium","firstName":"Tom","fullName":"Tom Cools","id":13555,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocLiUjyjM49h8fxM3bZDY_EBsphO-BhswQ2kD7N4rUU3lgNYf2Hs=s96-c","lastName":"Cools","linkedInUsername":"tom-cools-17547548","mastodonUsername":"","twitterHandle":""}],"summary":"An informal, interactive session introducing BeJUG, Belgium’s Java User Group. Learn how it connects Java enthusiasts, what events it runs, and how to get involved as attendee, speaker, or contributor. No slides or agenda—just networking, ideas, and community discussion for all Java lovers.","timeSlots":[],"title":"Hi, Belgian Java Community, we want to meet you!","totalFavourites":5,"track":{"id":1253,"name":"People, Practices & Career","description":"Leading teams, engineering culture, and career resilience.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-deepfake-ai.png"}},{"afterVideoURL":null,"audienceLevel":"ADVANCED","description":"Project Amber has introduced a series of Java language features that together<br>enable a new programming style: data oriented programming. At its core is<br>compositional pattern matching, which allows values to be deconstructed<br>naturally and safely.<br><br>Where does Project Amber go from here? This talk explores the next wave of<br>language features under development. These experiments extend pattern matching<br>in several directions, including user-defined deconstruction for ordinary<br>interfaces and classes, nested constant patterns for more compact and expressive<br>matching, an exhaustive pattern-matching statement, safer primitive value<br>conversions within pattern matching, and a compact notation for deconstructing<br>and constructing record instances — a process we call reconstruction.<br><br>Along the way, I’ll present some of the experimental designs we’re exploring,<br>discussing both the opportunities they create and the language design challenges<br>they raise.<br>","fieldGroup":null,"fieldGroupValues":[],"id":21655,"keywords":[{"name":"reconstruction"},{"name":"deconstruction"},{"name":"java"},{"name":"pattern-matching"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"I work in the Java Platform Group at Oracle designing the Java programming language and virtual machine. I am also a member of the Programming Languages Research Group at Oracle Labs. I am based in Cambridge, UK.<br>My mission is to keep Java as a leading language and platform for developers around the world. Given my background as a researcher, I am especially keen to find, adapt and transfer ideas and techniques from the research community and get them into the hands of Java programmers. I spend much of my time working on Java’s industry-leading specifications.<br><br>I joined Oracle in March 2014. Previously I was a senior researcher at Microsoft Research Cambridge from March 2004 until February 2014. Before that I was a University Lecturer at the University of Cambridge Computer Laboratory and a Fellow, College Lecturer and Director of Studies at St John’s College, Cambridge. I studied for my PhD at the University of Cambridge, and for my BSc at Imperial College, London.","blueskyUsername":"","company":"Oracle","countryName":"United Kingdom","firstName":"Gavin","fullName":"Gavin Bierman","id":21503,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-81f196b1-a89f-4d7a-85d3-5e7e4e171a24.jpg","lastName":"Bierman","linkedInUsername":"gavin-bierman-a0173075","mastodonUsername":"","twitterHandle":"GavinBierman"}],"summary":"Project Amber is advancing Java’s data-oriented programming with new pattern-matching features: user-defined deconstruction, nested constant patterns, exhaustive matching, safer primitive conversions, and compact record reconstruction. The talk explores experimental designs, their benefits, and the language design challenges they introduce.","timeSlots":[],"title":"What’s happening with Project Amber?","totalFavourites":11,"track":{"id":2754,"name":"Java Language & Platform","description":"Project Loom, Leyden, Valhalla, Panama, and the ever evolving JVM.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-coffee-mug.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"It feels like with every new Java release, there are more and more Garbage Collectors (GCs) coming with more and more options. We hear cryptic phrases like: &quot;Oh, awesome, ZGC became generational while Shenandoah isn&#39;t&quot; or &quot;Did you heard how Netflix reduced their tail latencies with ZGC?&quot;<br><br>Naturally, it leaves us with a ton of questions:<br><ul><li>What on earth are they talking about?</li><li>What exactly is ZGC?</li><li>If this ZGC is so magical, why are there even other GCs left in Java anyway?</li><li>Why do we only ever talk about different GCs for Java, but never for Go or JavaScript? Can the Java folks make up their minds and pick one?</li><li>And what about native? Do we even need a GC there?</li></ul><br>Whether you are a Java developer or just plain curious, everyone is welcome! We will trace the journey from the creation of Java all the way to the present day to understand why we need a GC and why it isn&#39;t a solved problem. We will also take a tour of the various GCs, their evolutions, their strengths, and their weaknesses. (Spoiler alert: ZGC is not the one GC to rule them all).<br><br>By the end of this talk, you will know exactly when to use which GC so you can find the perfect fit for every project, every application, and every environment.","fieldGroup":null,"fieldGroupValues":[],"id":9008,"keywords":[{"name":"garbage collection"},{"name":"zgc"},{"name":"java"},{"name":"shenandoah"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"A Java developer with over 20 years of experience, Antoine has been a key part of Axway since 2012.<br><br>He dedicated 13 years to their Analytics software, evolving from developer to software architect while maintaining a hands-on development role. His final five years on the project were focused on performance optimization, cloud migration, and security.<br><br>Antoine is passionate about open source and reports bugs to community-driven projects. He is always eager to migrate to the latest JDK and introduce new features to his team.<br><br>Today, he is leveraging his expertise to build an AI Gateway solution, tackling complex code, and mentoring others.","blueskyUsername":"adessaigne.bsky.social","company":"Axway","countryName":"France","firstName":"Antoine","fullName":"Antoine DESSAIGNE","id":8679,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-763af354-0c0f-4884-9525-88a9034759dd.jpg","lastName":"DESSAIGNE","linkedInUsername":"antoine-dessaigne-3618aa37","mastodonUsername":"","twitterHandle":"adessaigne"}],"summary":"This talk explains why Java has multiple garbage collectors, what ZGC, Shenandoah, and others do, and their strengths and weaknesses. It traces GC history, compares alternatives, and shows when to use each one for the right project, application, or environment.","timeSlots":[],"title":"G1, ZGC, Shenandoah, ... with all these GCs in Java, which one do I choose?","totalFavourites":8,"track":{"id":2754,"name":"Java Language & Platform","description":"Project Loom, Leyden, Valhalla, Panama, and the ever evolving JVM.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-coffee-mug.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Structured Concurrency is the next major feature from Project Loom. Following the introduction of Virtual Threads in JDK 21, which dramatically reduced the effort of writing, maintaining, and observing high-throughput concurrent applications, structured concurrency raises the level of abstraction for concurrent programming. It treats groups of related tasks as a single unit of work, simplifying cancellation, error handling, and observability while making concurrent code easier to understand, maintain, and debug.<br><br>The feature has evolved through several preview releases, shaped by extensive real-world experience and community feedback. Despite its small surface area, the API enables a wide range of structured concurrency patterns.<br><br>In this session, we will explain the motivation and design of structured concurrency, show how to use it effectively, and discuss the lessons learned as the feature evolved. We&#39;ll also look beneath the surface at the new lower-level API behind the latest design, offering an early glimpse of work that is expected to form the basis of a future lower-level structured concurrency API.<br><br>","fieldGroup":null,"fieldGroupValues":[],"id":29351,"keywords":[{"name":"projectloom"},{"name":"structuredconcurrency"},{"name":"concurrency"},{"name":"virtualthreads"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Alan Bateman is an architect in the Java Platform Group at Oracle and a long-time contributor to OpenJDK. He leads the OpenJDK Core Libraries Group and has helped shape the evolution of the Java platform through the design and implementation of many JDK features, including New I/O (NIO), JVMTI and serviceability, the Java Module System, and, more recently, Project Loom.","blueskyUsername":"","company":"Oracle","countryName":"Ireland","firstName":"Alan","fullName":"Alan Bateman","id":28801,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-777f0d6e-3ce7-4670-9962-7f3e5f309f46.jpg","lastName":"Bateman","linkedInUsername":"","mastodonUsername":"","twitterHandle":""}],"summary":"Structured Concurrency in Project Loom builds on virtual threads to simplify concurrent programming by treating related tasks as one unit. It improves cancellation, error handling, and observability, and makes code easier to understand and debug. The session covers its design, usage, evolution, and future lower-level API work.","timeSlots":[],"title":"Structured Concurrency Looms","totalFavourites":5,"track":{"id":2754,"name":"Java Language & Platform","description":"Project Loom, Leyden, Valhalla, Panama, and the ever evolving JVM.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-coffee-mug.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"The LLM scanners like Augustus and Garak are established tools for security evaluation of LLM-based applications, as they are scanning by running through a fixed sample of adversarial attack data, and evaluating a response. However, LLMs are non-deterministic by design, meaning that each input can generate a different response. It is not only non-determinism, but also the vast linguistic attack surface and the wide variety of threats that demonstrate that traditional Unit testing methods are insufficient. This talk proposes a Java tool for security and safety testing for LLM-based applications using probabilistic testing methods, and security contracts. In contrast to the traditional scanners, Tiberius fits naturally into a standard Java test suite, and integrates with the probabilistic testing tool PUnit to support multi-trial scanning and statistical assertions. Different adversarial probes can be integrated and tested directly in Java code, e.g., application specific adversarial attacks, like prompt injections and jailbreaks. A scan (multi-) run can execute 200+ attack probes against a deployed model and serializes the results into versioned json test-fixtures, which can be used in downstream regression tests. The tool furthermore includes a fingerprinting capability, and detects systemic bias, as even system prompts and guardrails can be biased. The audience will leave knowing Java-native LLM security and safety testing techniques.","fieldGroup":null,"fieldGroupValues":[],"id":9024,"keywords":[{"name":"java"},{"name":"security"},{"name":"llm"},{"name":"testing"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":30,"freeTickets":2,"id":957,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Tools-in-Action","pause":false,"scheduleInSmallRoom":false,"slug":"tia30"},"speakers":[{"anonymizedBio":null,"bio":"Iryna Dohndorf is a software engineer at Karakun, where she works on customer projects using the Java technology stack. With strong technical expertise, genuine curiosity, and a deep passion for computer science, she develops technologies that tackle the challenges of modern companies and today’s society.<br><br>An enthusiastic interdisciplinary researcher and developer, Iryna has conducted research in modeling and optimization at TU Dortmund and has worked on software for autonomous driving, government agencies, and EU projects supporting the advancement of organic farming.<br><br>Beyond her project work, Iryna is deeply engaged in the international developer community. She is an active member of the BaselOne Program Committee and the Devoxx UK Program Committee,and a frequent speaker at international conferences. Through her talks, writing, and community<br>involvement, she aims to inspire developers, encourage critical thinking about emerging technologies,<br>and contribute to the sustainable growth of the global Java ecosystem.<br><br>Outside of work, she enjoys spending time with family and friends, and is passionate about swimming, skiing, and—most recently—cycling.<br><br>You can learn more about her software development work and research at: https://iryna-dohndorf.netlify.app &amp; https://github.com/tiberius-security/tiberius","blueskyUsername":"","company":"Karakun","countryName":"Germany","firstName":"Iryna","fullName":"Iryna Dohndorf","id":8682,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-ee16aab0-6755-4c6b-8b99-3dd750f954c3.jpg","lastName":"Dohndorf","linkedInUsername":"iryna-dohndorf","mastodonUsername":"","twitterHandle":""}],"summary":"This talk introduces Tiberius, a Java-native tool for LLM security and safety testing. It uses probabilistic multi-trial scans, security contracts, and statistical assertions to test adversarial attacks like prompt injections and jailbreaks, detect bias, and generate versioned JSON fixtures for regression testing.","timeSlots":[],"title":"Beyond assertEquals: Probabilistic Security and Bias Testing for Java LLM Applications","totalFavourites":7,"track":{"id":1255,"name":"Security, Trust & Compliance","description":"Guardrails, prompt injection defence, model governance, and supply-chain security.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-surveillance-camera.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Whether you want to reduce your carbon footprint or cut back on machine resource usage, energy-efficient builds matter more than ever. CI systems often waste energy and time because of inefficient build pipelines. In this lunch session I will demonstrate a few tricks that will give you greener and faster Maven builds. We’ll look at practical examples using GitLab CI and GitHub Actions, so you can apply the techniques right away in your own projects.","fieldGroup":null,"fieldGroupValues":[],"id":24244,"keywords":[{"name":"maven"},{"name":"energy"},{"name":"githubactions"},{"name":"ci"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":null,"description":null,"dinerInvite":true,"duration":40,"freeTickets":1,"id":5151,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":null,"name":"Lunch Talk","pause":false,"scheduleInSmallRoom":false,"slug":"lunch-talk"},"speakers":[{"anonymizedBio":null,"bio":"Jan is an experienced solution architect with over 15 years of experience as Kotlin/Java developer. He loves to combine architecture and coding as this is the sweet spot to invent clever, solutions that have an impact in society.<br><br>With a MSc. in Geophysics he has a natural interest in geospatial technology, climate change and maps. He has mainly leveraged these for the public interest in assignments for Dutch government agencies.<br><br>In his spare time he practices photography with a focus on street and documentary photography. Living in a university town, he is engaged in a project that supports students and young professionals in the area of well-being and meaning.","blueskyUsername":"janboonen.bsky.social","company":"the/experts.","countryName":"Netherlands","firstName":"Jan","fullName":"Jan Boonen","id":24175,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-83370e03-af8c-4887-818a-857c2813597a.jpg","lastName":"Boonen","linkedInUsername":"janboonen","mastodonUsername":"","twitterHandle":""}],"summary":"This session shows practical ways to make Maven builds greener and faster by improving CI pipelines. Using GitLab CI and GitHub Actions examples, it demonstrates techniques to reduce energy use, save machine resources, and cut build time.","timeSlots":[],"title":"Green Maven builds: sustainable CI in practice","totalFavourites":8,"track":{"id":1701,"name":"Development Practices","description":"All about Getting Stuff Done right. Methodologies, better practices, etc.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-hearts-card.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"<em>TL;DR: DuckDB is a complete analytical SQL engine that runs in-process. No server, no dependencies, one binary, MIT licensed. This session is one duck and a lot of live demos.</em><br><br>While the big data warehouses were busy adding pricing tiers, a small open source project from a research group in Amsterdam quietly built one of the fastest analytical engines around. No license fees, no vendor lock-in, no sales call required.<br><br>What makes DuckDB remarkable is how far the same engine scales. It starts as a CLI tool on your laptop, poking at CSV, JSON and Excel files with a friendly SQL dialect and larger-than-memory processing that spills to disk instead of falling over. The same binary embeds into your Java application via JDBC and runs analytics in-process, with no network hop in sight. Point it at S3 and it queries files in place; add DuckLake and it becomes a full lakehouse on open formats. And with the new Quack protocol, ducks are learning to talk to each other, turning DuckDB into a client-server database with multiple writers.<br><br>Expect live demos along that entire scale, from laptop to lakehouse.<br>You will leave with a good sense of what DuckDB can do for you, where its limits are, and why it keeps showing up in so many stacks.<br><br><strong>Who is this for?</strong> Developers, architects and data-curious engineers who occasionally need answers from data but would rather not operate a warehouse to get them. SQL basics are enough; no data engineering background required.","fieldGroup":null,"fieldGroupValues":[],"id":17558,"keywords":[{"name":"sql"},{"name":"lakehouse"},{"name":"duckdb"},{"name":"analytics"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":30,"freeTickets":2,"id":957,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Tools-in-Action","pause":false,"scheduleInSmallRoom":false,"slug":"tia30"},"speakers":[{"anonymizedBio":null,"bio":"Oliver Geisser is a freelance Cloud &amp; AI Solution Architect with 20+ years in software development, architecture, and technical leadership. A former Enterprise Architect at an international corporation, he designed and delivered a company-wide cloud-first strategy. Today he helps teams modernize applications, adopt cloud platforms, and bring agentic AI into engineering workflows.<br><br>See more: https://www.geisser-consulting.de/","blueskyUsername":"ogeisser.bsky.social","company":"Geisser Consulting","countryName":"Germany","firstName":"Oliver","fullName":"Oliver Geisser","id":16391,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-49e100ac-5a9a-4e96-9a22-85b2a52b50d4.jpg","lastName":"Geisser","linkedInUsername":"oliver-geisser-29ba6879","mastodonUsername":"","twitterHandle":"ogeisser"}],"summary":"DuckDB is a fast, open-source in-process analytical SQL engine with no server or dependencies. This session demos its scale from laptop analytics on CSV/JSON/Parquet to embedded Java apps, S3 queries, and lakehouse use with DuckLake and Quack, aimed at developers and engineers needing simple data analysis.","timeSlots":[],"title":"From Laptop to Lakehouse: Analytical SQL with DuckDB","totalFavourites":4,"track":{"id":1254,"name":"Cloud Native, Data & Infrastructure","description":"Kubernetes, platform engineering, vector DBs, model serving, and GPU orchestration.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-server-settings.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Agentic AI is something everyone wants to use or sell. We wanted an overview of the work and active agents and therefore we created an orchestration tool. Using the Agent, Skills and Spec files from default locations so its interchangeable with other tools. And it really started to change the way we worked on software projects.<br><br>As a Java software Engineer it could be seen as a automation of tasks, as an Scrum Master/Product Owner a way to coordinate and for the business analyst a way to store functional requirements. We&#39;ve used Embabel Agent as the fundamental layer. On top of that we&#39;ve created a visual representation so we can have a website open in our office which shows which agent is active, what it&#39;s doing and what&#39;s the next task. <br><br>For Software Development teams this will be the biggest change, developers are more reviewing and delivering feedback to the AI while business analysts had a field day of delivering the requirements for the spec files which were reviewed by an AI agent before they could be assigned to an AI-agent. The product owner is in control of the queue where sprints are no longer weeks but days. <br><br>I want to share how we created this orchestrator and explain on which impact each technical step had on the way-of-work in our team. It wasn&#39;t just about creating an application anymore, everything had impact on how we work. ","fieldGroup":null,"fieldGroupValues":[],"id":23531,"keywords":[{"name":"agentic"},{"name":"requirements"},{"name":"orchestration"},{"name":"automation"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"CTO and Software Architect with over 10 years of hands-on java development experience. He is passionate about Software Development, Artificial Intelligence (AI), Robotics, IoT, Cybersecurity, Open Source Software and loves tech gadgets. Ricky is a speaker on conferences like Code&amp;Comedy, DevSecCon, JFall, Devoxx UK and has a background as a lecturer on an University of Applied sciences. Besides all that Ricky is a Fitness and Martial Arts instructor and enthusiast. Current focus is forming and testing new AI best practices. ","blueskyUsername":"","company":"MetaFactory","countryName":"Netherlands","firstName":"Ricky","fullName":"Ricky van Rijn","id":21529,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-5361a8d1-ea08-4d32-8575-5dbaae4cb186.jpg","lastName":"van Rijn","linkedInUsername":"rickyvanrijn","mastodonUsername":"","twitterHandle":"RickyvanRijn"}],"summary":"We built an agent orchestration tool using Embabel Agent, Skills, and Spec files to coordinate AI-driven software work. It provides a visual dashboard for active agents, tasks, and next steps, reshaping team roles: developers review AI output, analysts define requirements, and product owners manage faster sprint queues.","timeSlots":[],"title":"We created our own AI orchestrator and it became so much more!","totalFavourites":13,"track":{"id":1701,"name":"Development Practices","description":"All about Getting Stuff Done right. Methodologies, better practices, etc.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-hearts-card.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Distributed systems have a dirty secret. Your message broker swears the domain event is published — others are already listening, already reacting to this new order. But then, in a split second, your database rolls back. A constraint violation. Something breaks. And now the entire system knows about an order that never actually existed.<br><br>This talk covers the patterns that prevent that chaos: the Dual Write problem, Outbox and Inbox patterns for consistency between database and event stream, idempotent consumers, and Sagas — Orchestration and Choreography.<br><br>You&#39;ll leave knowing which pattern solves which problem, when to use each, and what you&#39;re really trading off with eventual consistency","fieldGroup":null,"fieldGroupValues":[],"id":17791,"keywords":[{"name":"distributedsystems"},{"name":"inbox"},{"name":"sagas"},{"name":"outbox"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Hey there, I&#39;m Emanuel - a Software Craftsman from Romania.<br><br>I value <em style=\"color: rgb(103, 106, 108);\">simplicity</em> and <em style=\"color: rgb(103, 106, 108);\">intentionality</em> over blindly applying patterns and abstractions.<br><br>I care deeply about the <em style=\"color: rgb(103, 106, 108);\">design</em> and <em style=\"color: rgb(103, 106, 108);\">testability</em> of the software I create.<br><br>I also value <em style=\"color: rgb(103, 106, 108);\">communication</em> and <em style=\"color: rgb(103, 106, 108);\">collaboration</em> and enjoy sharing my knowledge through open-source contributions and technical articles.<br>","blueskyUsername":"","company":"","countryName":"Romania","firstName":"Emanuel","fullName":"Emanuel Trandafir","id":18092,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocJIeD6DlrYMLqQ25N-MsDC0Oz2dracw1hlS6BqbbRBwEXJINS13=s96-c","lastName":"Trandafir","linkedInUsername":"emanueltrandafir","mastodonUsername":"","twitterHandle":""}],"summary":"This talk explains how to avoid inconsistencies in distributed systems caused by dual writes and failed transactions. It covers Outbox/Inbox patterns, idempotent consumers, and Saga orchestration/choreography, showing when to use each and the trade-offs involved with eventual consistency.","timeSlots":[],"title":"Consistency Patterns in Event-Driven Architecture","totalFavourites":12,"track":{"id":1252,"name":"Architecture & Modernization","description":"Designing for agentic workflows, event-driven systems, and legacy transformation.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-blockchain.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"We bring a real legacy Scala application built on Play and Akka on stage. Anonymized from production code that we have worked on and migrate it live to Java 25 twice. We use Claude as the coding agent, but the method works with any agent. Willem Jan steers it toward Quarkus and Radek explores Spring Boot. We take turns instead of racing side by side, so the room can follow one decision at a time. We stop at each checkpoint where we score both the framework and the agent&#39;s output on a shared scorecard.<br><br>The session has four parts:<br><ol><li><strong style=\"color: rgb(0, 0, 0);\">Diagnose and plan</strong> (together): a tour of the legacy app, why a big-bang rewrite is off the table, the strangler fig approach, and characterization tests written with the agent before we touch anything.</li><li><strong style=\"color: rgb(0, 0, 0);\">Translate the domain</strong> (together): case classes, Option, Either, and for-comprehensions become records, sealed interfaces, pattern matching, and Optional. The agent proposes, while we review and correct the suggestions live.</li><li><strong style=\"color: rgb(0, 0, 0);\">Two apps </strong>(alternating): guiding both frameworks through a series of migration stages. At each checkpoint, we unpack what went right, where the agent needed human intervention, and update our scorecard across performance, developer experience, and testability.</li><li><strong style=\"color: rgb(0, 0, 0);\">Verdict</strong> (together): the final scorecard, when we would pick which framework, where the agent actually saved time and where it needed a human override, and open Q&amp;A</li></ol>","fieldGroup":null,"fieldGroupValues":[],"id":21670,"keywords":[{"name":"migration"},{"name":"java"},{"name":"quarkus"},{"name":"spring"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":180,"freeTickets":2,"id":959,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Deep Dive","pause":false,"scheduleInSmallRoom":false,"slug":"deep180"},"speakers":[{"anonymizedBio":null,"bio":"Radek has a background in Software Engineering, ML, and AI from his undergraduate and postgraduate studies at TU Delft, where he recently completed his Master&#39;s Thesis in Explainable AI (XAI) for large language models (LLMs). He sees great potential in integrating and understanding how ML/AI can be woven into modern software, a passion he&#39;s brought to stages across Europe, speaking at conferences like Devoxx, Voxxed Days, JNation, and LunaConf on topics ranging from secure AI agents with Quarkus LangChain4j to ML development for software engineers.<br>But Radek doesn&#39;t stop at code. He spends his mornings and evenings making people sweat as a group fitness instructor, and his talk <em>Debugging Your Health: Fitness for Desk Warriors</em> has resonated with audiences across multiple conferences. With a passion for tech and fitness, he loves helping desk warriors optimize both their code and their health. When he&#39;s not debugging software or coaching group workouts, you can find him experimenting with new workout routines, geeking out over biomechanics, or trying to convince his coworkers to do squats during stand-up meetings.","blueskyUsername":"","company":"Lunatech","countryName":"Netherlands","firstName":"Radek","fullName":"Radek Kargul","id":3944,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocJzV9KZ_Fhk3y62Yn8Kg8JHArGLGXsjsYInr82h8yopG5O5QJ0=s96-c","lastName":"Kargul","linkedInUsername":"radek-kargul","mastodonUsername":"","twitterHandle":""},{"anonymizedBio":null,"bio":"Willem Jan is a Principal Software Engineer at Lunatech who loves building cloud software and contributing to open source. He&#39;s all about writing quality code and finding ways to automate anything. Willem Jan has been working with Quarkus since the beginning and enjoys making sure his applications are both simple and secure. On weekends, you won&#39;t find him behind a keyboard - he&#39;s either out enjoying nature or volunteering with his local scout group.","blueskyUsername":"wjglerum.nl","company":"Lunatech","countryName":"Netherlands","firstName":"Willem","fullName":"Willem Jan Glerum","id":19752,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-fdb3dada-6952-4509-96e0-c39c4c5571e1.jpg","lastName":"Jan Glerum","linkedInUsername":"wjglerum","mastodonUsername":"","twitterHandle":""}],"summary":"A live modernization of a legacy Play/Akka app on Java 25: first protected by characterization tests, then translated from Scala to modern Java. The same slice is rebuilt twice—once in Quarkus, once in Spring Boot—while comparing startup, memory, DI, testability, and trade-offs.","timeSlots":[],"title":"Legacy JVM modernization with agentic AI: Quarkus vs Spring Boot","totalFavourites":5,"track":{"id":1252,"name":"Architecture & Modernization","description":"Designing for agentic workflows, event-driven systems, and legacy transformation.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-blockchain.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"After several years of Java development, I had left the ecosystem behind. Not out of spite, but out of pragmatism: Python was getting the job done. Beefy CI/CD pipelines, easier to write; daily tools that bent to fit any need; in short, the simple joy of writing a Hello World without filling out three XML files first. The rise of AI cemented Python as the obvious choice. I had no reason left to reopen a Java IDE. None.<br><br>Except that a handful of friends kept the thread alive, with that community, with that ecosystem. A conference here, an article there, and little by little, certain projects started catching my eye. Step by step, I discovered what you could now build CLIs in Java  with picocli, with a type system that doesn&#39;t lie on top. Then came Quarkus: blazing-fast startup, native compilation, no more excuses about JVM heft. The final piece of the trinity was TamboUI: elegant TUIs and a pleasant DSL, offering a modern, refreshing take on terminal applications,  in Java.<br><br>In this talk, let me tell you how Java found its way back into my toolbox and my geeky heart: why I had left, why I thought I&#39;d never come back, and how the community kept my mind open. No sermon, no holy war, just a language and technology lover reconsidering things, and who thinks you might want to take a second look too.<br>","fieldGroup":null,"fieldGroupValues":[],"id":10802,"keywords":[{"name":"java"},{"name":"quarkus"},{"name":"tamboui"},{"name":"picocli"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"A passion born from reading, the world of computing and electronics caught me from my ZX Spectrum and has never let go.<br>A developer by trade, from video games to master data management, I&#39;ve also dabbled in the worlds of QA and production deployment.<br>I&#39;m now a Developer Advocate at Dataiku, juggling between tech, community, and knowledge sharing.<br><br>Since a passion always deserves to be passed on, I founded Mixteen to try to help children grasp the digital world.<br>This desire to share has also led me to take part in organizing several MiXiT conferences and then to join the board of the AFPy.<br>In parallel, I also try to share through blog posts and videos on my YouTube channel.<br><br>In short:<br><a href=\"https://dis.tontoncodeur.com/talks/\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"background-color: rgb(253, 253, 252); color: rgb(0, 115, 230);\">https://calm.show/talks/</a><br><br>In detail:<br><a href=\"https://www.twitch.tv/titimoby\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"background-color: rgb(253, 253, 252); color: rgb(0, 115, 230);\">https://www.twitch.tv/titimoby</a><br><a href=\"https://mixteen.org/\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"background-color: rgb(253, 253, 252); color: rgb(0, 115, 230);\">https://mixteen.org/</a><br><a href=\"https://tontoncodeur.fr/\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"background-color: rgb(253, 253, 252); color: rgb(0, 115, 230);\">https://tontoncodeur.fr/</a><br><a href=\"https://www.youtube.com/thierrychantier\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"background-color: rgb(253, 253, 252); color: rgb(0, 115, 230);\">https://www.youtube.com/thierrychantier</a><br><a href=\"https://www.afpy.org/\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"background-color: rgb(253, 253, 252); color: rgb(0, 115, 230);\">https://www.afpy.org</a><br>","blueskyUsername":"titimoby.eu","company":"Dataiku","countryName":"France","firstName":"Thierry","fullName":"Thierry Chantier","id":10180,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocJIqLuDzHLmlJCLNs_i3ZQmzlennTw_KQgt3Dz4qdDy_JF2_w=s96-c","lastName":"Chantier","linkedInUsername":"thierrychantier","mastodonUsername":"https://mamot.fr/deck/@TitiMoby","twitterHandle":""}],"summary":"A developer explains leaving Java for Python, then rediscovering Java through picocli, Quarkus, and TamboUI. The talk explores Java’s modern CLI, fast native apps, and terminal UIs, showing how community and new tooling made Java relevant again.","timeSlots":[],"title":"A Deserter Returns: What the Java community helped me rediscover","totalFavourites":null,"track":{"id":2758,"name":"Mind the Geek","description":"Developer candy: stuff we want to know about but dont (generally) at work, Robotics, biological computing, cybernetics, AI, new toys, tomorrows world","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-robot-arm.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Understanding how to monitor and optimize Java applications is fundamental to building efficient software.<br>This hands-on lab will introduce you to capturing data to understand your application behavior using JDK Flight Recorder (JFR), managing and analyzing JFR recordings, and creating custom JFR events. We&#39;ll also cover how JFR can integrate with Prometheus to correlate application and infrastructure behavior, all aimed at enhancing observability.<br>After this lab, you&#39;ll have the confidence to use JFR to monitor, diagnose, and fine-tune your applications.","fieldGroup":null,"fieldGroupValues":[],"id":15360,"keywords":[{"name":"observability"},{"name":"java"},{"name":"jfr"},{"name":"prometheus"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#00FF00","description":null,"dinerInvite":true,"duration":120,"freeTickets":2,"id":984,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":2,"name":"Hands-on Lab","pause":false,"scheduleInSmallRoom":true,"slug":"lab120"},"speakers":[{"anonymizedBio":null,"bio":"Ana is a Java Champion Alumni and Senior Developer Advocate for the Java Platform Group at Oracle, with an extensive background in Java and cloud development. More recently, her work has expanded to explore how machine learning and AI can be applied within the Java ecosystem, helping Java developers adopt emerging capabilities while continuing to benefit from the stability, tooling, and performance of the Java Platform. She actively supports the growth of technical communities through knowledge sharing and enjoys curating content for conferences as a program committee member. ","blueskyUsername":"ammbra1508.bsky.social","company":"Oracle","countryName":"Netherlands","firstName":"Ana-Maria","fullName":"Ana-Maria Mihalceanu","id":5830,"imageUrl":"https://lh3.googleusercontent.com/a-/AOh14Gj1OS6OpAzuwBKwoUuCi9gxvNPvdmVA7nbW8lg3mg=s96-c","lastName":"Mihalceanu","linkedInUsername":"","mastodonUsername":"https://mastodon.social/@ammbra1508","twitterHandle":"ammbra1508"},{"anonymizedBio":null,"bio":"José is a Java Developer Advocate at Oracle. He holds a PhD in applied mathematics and computer science and is a Java Champion alumnus. He has been an assistant professor at the University Sorbonne Paris Nord for 25 years. He is an active member of the Paris Java User Group, and a disorganizer of the JChateau unconference. He contributes Java learning content on the dev.java website. He publishes &quot;Java Coding Tips&quot;, a biweekly series of shorts, and the &quot;JEP Café&quot;, a video series, both on the Java YouTube channel.","blueskyUsername":"josepaumard.bsky.social","company":"Oracle","countryName":"France","firstName":"José","fullName":"José Paumard","id":15304,"imageUrl":"https://lh3.googleusercontent.com/a-/AOh14GhsVIUuTR9Onoo-D8UMW5QId2Yw1V_EUvqdWdNQ0RQ=s96-c","lastName":"Paumard","linkedInUsername":"jos%C3%A9-paumard-2458ba5","mastodonUsername":"","twitterHandle":""}],"summary":"Hands-on lab on Java observability using JDK Flight Recorder (JFR). Learn to capture, manage, and analyze recordings, create custom events, and integrate JFR with Prometheus to correlate application and infrastructure behavior. Participants will gain practical skills to monitor, diagnose, and optimize Java applications.","timeSlots":[],"title":"Analyze and Optimize Your Applications with JFR","totalFavourites":11,"track":{"id":2754,"name":"Java Language & Platform","description":"Project Loom, Leyden, Valhalla, Panama, and the ever evolving JVM.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-coffee-mug.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"Generative AI can write code in seconds. So does it still make sense to teach programming to children?<br>We at Devoxx4Kids think it does.<br><br>In our workshops, we use LEGO SPIKE robots to teach problem-solving, software design and computational thinking. There is just one challenge: LEGO SPIKE does not officially support Java.<br>Rather than accepting that limitation, we explored alternative approaches to bring Java to the platform and make LEGO robots accessible to our next generation Java developers.<br><br>In this session, we&#39;ll share our journey, demonstrate how Java can be used to control LEGO SPIKE robots, discuss the technical challenges we encountered, and show real-world examples from educational settings.<br><br>Attendees will learn:<br><ul><li>Why programming fundamentals remain relevant in the AI era</li><li>How LEGO SPIKE can be integrated into a Java ecosystem</li><li>Technical approaches for controlling SPIKE robots with Java</li><li>Lessons learned while teaching children with physical computing platforms</li><li></li></ul>Expect live demos, moving robots, and perhaps a few LEGO bricks on stage.","fieldGroup":null,"fieldGroupValues":[],"id":10045,"keywords":[{"name":"java"},{"name":"lego spike"},{"name":"programming education"},{"name":"generative ai"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":null,"description":null,"dinerInvite":true,"duration":40,"freeTickets":1,"id":5151,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":null,"name":"Lunch Talk","pause":false,"scheduleInSmallRoom":false,"slug":"lunch-talk"},"speakers":[{"anonymizedBio":null,"bio":"Eddy is the chairman of Devoxx4Kids Netherlands and an Engineering Manager at Ahold Delhaize Netherlands. He has a focus on AI, Data, FinOps and Java. <br>He loves to share his knowledge and help in his free time, with the Devoxx4Kids Foundation, kids to learn how to code in a fun way.","blueskyUsername":"eddyvos.bsky.social","company":"Devoxx4Kids Netherlands","countryName":"Netherlands","firstName":"Eddy","fullName":"Eddy Vos","id":10179,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-9b520e91-967e-42a4-9061-ff04e1ff6682.jpg","lastName":"Vos","linkedInUsername":"eddyvos","mastodonUsername":"","twitterHandle":"eddyvos_EVCS"}],"summary":"This session shows why teaching programming still matters in the AI era, using LEGO SPIKE robots in Java-based workshops for children. It covers technical methods to control SPIKE with Java, challenges encountered, educational lessons learned, and includes live robot demos.","timeSlots":[],"title":"Java, LEGO & AI: Teaching the Next Generation to Build, Not Just Prompt","totalFavourites":3,"track":{"id":2758,"name":"Mind the Geek","description":"Developer candy: stuff we want to know about but dont (generally) at work, Robotics, biological computing, cybernetics, AI, new toys, tomorrows world","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-robot-arm.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"The Loom project is about making asynchronous programming simpler. The promise is to enable the &quot;simple thread-per-request style to scale with near-optimal hardware utilization&quot;. Before virtual threads, this was only achievable with callback-based reactive programming. Loom first brought virtual thread in JDK 21 that makes the blocking of threads almost free. Along with it, it published the Scoped Values API in JDK 25, as a replacement of the Thread Local API. The last element is the Structured Concurrency API, which is still a preview feature in JDK 26 and 27. This hands-on lab guides you through writing a virtual thread-based web application that utilizes structured concurrency to parallelize requests, and implements different strategies to process them. Then it shows you how you can use scoped values to pass sensitive information from one module of your application to another one, without relying on method parameters. It also uses the principles of Data Oriented Programming to organize your application in a simple way. You will use StructuredTaskScopes, the implementations of the Joiner interface that the API gives you, and you will create your own implementations as well. In the end, you will see the patterns of code that the Loom project gives you to achieve the same throughput as a classical reactive application, and you will then be able to compare both approaches to choose which one you prefer.","fieldGroup":null,"fieldGroupValues":[],"id":22920,"keywords":[{"name":"structuredconcurrency"},{"name":"scopedvalues"},{"name":"virtualthreads"},{"name":"loom"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#00FF00","description":null,"dinerInvite":true,"duration":180,"freeTickets":2,"id":968,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":2,"name":"Hands-on Lab","pause":false,"scheduleInSmallRoom":true,"slug":"lab18"},"speakers":[{"anonymizedBio":null,"bio":"Ana is a Java Champion Alumni and Senior Developer Advocate for the Java Platform Group at Oracle, with an extensive background in Java and cloud development. More recently, her work has expanded to explore how machine learning and AI can be applied within the Java ecosystem, helping Java developers adopt emerging capabilities while continuing to benefit from the stability, tooling, and performance of the Java Platform. She actively supports the growth of technical communities through knowledge sharing and enjoys curating content for conferences as a program committee member. ","blueskyUsername":"ammbra1508.bsky.social","company":"Oracle","countryName":"Netherlands","firstName":"Ana-Maria","fullName":"Ana-Maria Mihalceanu","id":5830,"imageUrl":"https://lh3.googleusercontent.com/a-/AOh14Gj1OS6OpAzuwBKwoUuCi9gxvNPvdmVA7nbW8lg3mg=s96-c","lastName":"Mihalceanu","linkedInUsername":"","mastodonUsername":"https://mastodon.social/@ammbra1508","twitterHandle":"ammbra1508"},{"anonymizedBio":null,"bio":"José is a Java Developer Advocate at Oracle. He holds a PhD in applied mathematics and computer science and is a Java Champion alumnus. He has been an assistant professor at the University Sorbonne Paris Nord for 25 years. He is an active member of the Paris Java User Group, and a disorganizer of the JChateau unconference. He contributes Java learning content on the dev.java website. He publishes &quot;Java Coding Tips&quot;, a biweekly series of shorts, and the &quot;JEP Café&quot;, a video series, both on the Java YouTube channel.","blueskyUsername":"josepaumard.bsky.social","company":"Oracle","countryName":"France","firstName":"José","fullName":"José Paumard","id":15304,"imageUrl":"https://lh3.googleusercontent.com/a-/AOh14GhsVIUuTR9Onoo-D8UMW5QId2Yw1V_EUvqdWdNQ0RQ=s96-c","lastName":"Paumard","linkedInUsername":"jos%C3%A9-paumard-2458ba5","mastodonUsername":"","twitterHandle":""}],"summary":"A hands-on lab on Project Loom’s virtual threads, structured concurrency, and scoped values. It teaches building a scalable web app, parallelizing requests, passing sensitive data safely, and comparing Loom’s thread-per-request approach with reactive programming for similar throughput.","timeSlots":[],"title":"Using Structured Concurrency and Scoped Values to Create a Virtual Threads Based Asynchronous Application","totalFavourites":8,"track":{"id":2754,"name":"Java Language & Platform","description":"Project Loom, Leyden, Valhalla, Panama, and the ever evolving JVM.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-coffee-mug.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Every architecture decision carries a sustainability trade-off. A greener data center may sit farther from users, increasing latency. Going serverless eliminates idle compute waste but introduces cold starts and the complexity of maintaining multiple functions.<br><br>This session explores the tension between sustainability and the other &quot;-ilities&quot; (maintainability, portability, availability, performance) and presents practical techniques to reduce energy use, carbon footprint, and operating costs.<br><br>You will leave the session with a concrete catalog of trade-offs you can apply to your next project.","fieldGroup":null,"fieldGroupValues":[],"id":8169,"keywords":[{"name":"sustainability"},{"name":"trade-offs"},{"name":"latency"},{"name":"serverless"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Ioannis Kolaxis is a Director and a Senior Technology Architect at Accenture. He focuses on Green Software innovations, optimizing applications to have lower costs, reduced energy consumption and fewer carbon emissions. He is an inventor, speaker, and author of the Green Software book.<br>He was a kid in primary school when he first saw the green screen with the blinking cursor of an Amstrad CPC6128. This computer opened a new world to him, a world of continuous exploration and creation through programming.<br>Ioannis invented a novel way to work remotely and holds four patents for software solutions.<br>He frequently speaks at conferences such as GOTO Amsterdam 2022, Devoxx Ukraine 2021 and Oracle Code One 2019.<br>Visit his website to learn more: https://kolaxis.dev","blueskyUsername":"","company":"Accenture","countryName":"Greece","firstName":"Ioannis","fullName":"Ioannis Kolaxis","id":7644,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocJPsPavZKJoz3GJkmJ0SRkTbEPd96EJotlWK3x9Fl082Dw=s96-c","lastName":"Kolaxis","linkedInUsername":"ioannis-kolaxis","mastodonUsername":"","twitterHandle":""}],"summary":"The session examines sustainability trade-offs in architecture decisions, balancing energy use and carbon footprint against maintainability, portability, availability, and performance. It offers practical techniques to reduce emissions and costs, and provides a catalog of trade-offs to apply in future projects.","timeSlots":[],"title":"How to Architect Green Software","totalFavourites":13,"track":{"id":1252,"name":"Architecture & Modernization","description":"Designing for agentic workflows, event-driven systems, and legacy transformation.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-blockchain.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"Debugging a consistently failing unit test is easy; you set a breakpoint and fix it. But how do you debug a &quot;random&quot; failure in a massive microservices landscape or a distributed monolith?<br><br>During an interview, I was once told, &quot;You are more of a debugger than a coder.&quot; They were right: I thrive on the bugs that make others give up: the nasty, intermittent issues hidden under the carpet. <br>But you cannot solve these issues with &#39;System.out.println()&#39; or a simple debugger attached to localhost.<br><br>Debugging at scale requires a shift in mindset and tooling. It requires moving from the paradigm of &quot;5 Whys&quot; and &#39;logger.info&#39; to a structured observational approach based on observability data.<br>Based on production outages, I&#39;ll share how I uncovered the problems, the lessons I learned and how you can combine a debugging mindset with observability tooling like OpenTelemetry and the Grafana toolset to gain deeper insights.","fieldGroup":null,"fieldGroupValues":[],"id":21152,"keywords":[{"name":"observability"},{"name":"debugging"},{"name":"grafana"},{"name":"opentelemetry"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":null,"description":null,"dinerInvite":true,"duration":40,"freeTickets":1,"id":5151,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":null,"name":"Lunch Talk","pause":false,"scheduleInSmallRoom":false,"slug":"lunch-talk"},"speakers":[{"anonymizedBio":null,"bio":"Observability enthusiast and Grafana Champion, always looking for ways to improve software with better observability and what new insights can be gained. Delivering reliable software is always my priority. Combining existing tools often results in new ways to get an even better view. I work for OpenValue as a software &amp; observability engineer and SRE.","blueskyUsername":"ceesbos.nl","company":"OpenValue","countryName":"Netherlands","firstName":"Cees","fullName":"Cees Bos","id":16354,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-14d6453f-7d33-4f7a-86e4-3568aac637c9.jpg","lastName":"Bos","linkedInUsername":"ceesbos","mastodonUsername":"https://foojay.social/@cbos","twitterHandle":""}],"summary":"This talk explores debugging elusive, intermittent failures in large microservice and distributed systems. It argues for a shift from traditional logging and local debugging to structured observability, using tools like OpenTelemetry and Grafana to uncover root causes and gain deeper system insight.","timeSlots":[],"title":"Beyond system.out.println: Applying a Debugging Mindset at Scale","totalFavourites":10,"track":{"id":1701,"name":"Development Practices","description":"All about Getting Stuff Done right. Methodologies, better practices, etc.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-hearts-card.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"The most powerful compute fleet ever assembled wasn&#39;t built by a cloud provider. It&#39;s the half a billion-plus Apple Silicon devices already in laps, pockets, and offices — each with a GPU, a neural engine, and unified memory that would have qualified as a workstation five years ago. Collectively they represent more silicon than any datacenter on Earth. And for AI, they sit almost entirely idle.<br>This keynote makes the case that the next era of AI won&#39;t be defined by bigger clusters, but by inference moving to where the data already lives. I&#39;ll tell that story through building the MLX open-source ecosystem (mlx-vlm, mlx-audio, nativ — 5M+ downloads, used by Google DeepMind, Hugging Face, and LM Studio): what it actually takes to make consumer hardware run frontier models, why the server playbook fails on-device, and the hard-won engineering — quantization that holds accuracy, KV-cache compression, speculative decoding across chip generations — that closes the gap.<br>You&#39;ll leave with a new mental model for where AI workloads belong: which belong in the cloud, which belong on-device, and why the answer is about to flip for more of them than you think, for reasons of privacy, latency, cost, and sovereignty.<br>For every engineer and leader deciding where their AI features will live.","fieldGroup":null,"fieldGroupValues":[],"id":31455,"keywords":[{"name":"applesilicon"},{"name":"quantization"},{"name":"on-device"},{"name":"inference"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#e89c1a","description":null,"dinerInvite":true,"duration":20,"freeTickets":2,"id":955,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Keynote","pause":false,"scheduleInSmallRoom":false,"slug":"key20"},"speakers":[{"anonymizedBio":null,"bio":"Prince Canuma is Founder and CEO of Neywa Labs, building the inference stack for Apple Silicon. He is the creator and primary maintainer of the MLX open-source ecosystem — mlx-vlm, mlx-audio, and mlx-embeddings — with over 4M combined downloads, foundational to on-device AI on Apple hardware. He previously led developer experience at Neptune AI and worked at Arcee on post-training and inference optimization. His work focuses on model optimization and making AI accessible on local hardware.","blueskyUsername":null,"company":"Neywa Labs","countryName":"Mozambique","firstName":"Prince","fullName":"Prince Canuma","id":16387,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-05bb053f-e043-41b6-af64-c0fcd522a9b7.jpg","lastName":"Canuma","linkedInUsername":"prince-canuma","mastodonUsername":null,"twitterHandle":"Prince_Canuma"}],"summary":"This keynote argues that Apple Silicon devices form a massive, underused AI compute fleet. Drawing on the MLX ecosystem, it shows how on-device inference can handle frontier models through advanced optimization, and why privacy, latency, cost, and sovereignty will shift more AI workloads from cloud to device.","timeSlots":[],"title":"Half of a billion Idle GPUs: The Case for On-Device AI","totalFavourites":9,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Every time you ship a Java service to Kubernetes, you ship a base image, a bundled JDK, and an OS layer. None of which you wrote besides your application code and the selection of dependencies, but all of which you must monitor and regularly patch. The real artifact you care about, your application JAR and its dependencies, are buried inside 250 MB of packaging you never wanted to own. WebAssembly already solved this. With KWasm, the Wasm runtime lives on the node, the developer ships only a .wasm module as an OCI artifact, and a RuntimeClass tells Kubernetes to execute it. There is no Dockerfile, no container image involved at all.<br><br>Most Kubernetes users know that &quot;runtimeClassName: kata&quot; or &quot;runtimeClassName: wasm&quot; routes a pod to a different executor. Few know how this works with the containerd Runtime v2 TTRPC protocol, OCI bundle assembly, overlay filesystems, and runc delegation that make all this possible.<br><br>In this talk we walk through how the KWasm analogy actually maps cleanly to Java, and what custom containerd shims, node provisioners, and CRDs can actually do: allow you to build your own Kubernetes-based platform (and quite easily with agentic AI). We will explore a new open source project called <a href=\"https://brewlet.sh\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"color: rgb(0, 0, 0);\">Brewlet.sh</a> with live coding: its CLI <code style=\"color: rgb(0, 0, 0);\">brewlet push target/app.jar</code>, the Kubernetes deployment approach <code style=\"color: rgb(0, 0, 0);\">kubectl apply</code>, and see in practice how a Spring Boot service runs on Kubernetes without a single container image in sight.","fieldGroup":null,"fieldGroupValues":[],"id":25048,"keywords":[{"name":"kubernetes"},{"name":"springboot"},{"name":"containerd"},{"name":"webassembly"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Bruno Borges is a Principal Product Manager at GitHub with over 30 years of experience in Software Engineering, Product Management, Developer Relations, and Cloud &amp; AI developer experience. Currently, he leads developer relations and product management programs for AI and GitHub Copilot at Microsoft, driving initiatives like the <a href=\"github.com/github/copilot-sdk/tree/main/java/\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"background-color: transparent; color: rgb(0, 0, 0);\">GitHub Copilot SDK for Java</a>, and AI-assisted modernization workflows for enterprise developers. Bruno also continues to shape Microsoft&#39;s Java strategy, having led the public announcement of the Microsoft Build of OpenJDK and new tools like Azure Command Launcher for Java. Prior to his current focus on AI, he spent years building Microsoft Azure into a top destination for Java workloads, and before that served nearly six years at Oracle influencing developer relations strategy. A recognized Java Champion and top Java influencer, Bruno is a frequent conference speaker and open-source contributor with projects like <a href=\"https://javaevolved.github.io\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"background-color: transparent; color: rgb(0, 0, 0);\">Java Evolved</a>, <a href=\"https://brunoborges.github.io/jairosvg\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"background-color: transparent; color: rgb(0, 0, 0);\">JairoSVG</a>, <a href=\"https://brunoborges.github.io/jlib-inspector\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"background-color: transparent; color: rgb(0, 0, 0);\">JLib Inspector</a>, <a href=\"https://brunoborges.github.io/ghx\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"background-color: transparent; color: rgb(0, 0, 0);\">ghx</a>, and more. Visit github.com/brunoborges","blueskyUsername":"brunoborges.bsky.social","company":"GitHub","countryName":"Canada","firstName":"Bruno","fullName":"Bruno Borges","id":3933,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-32df7003-16c8-41d9-9052-accdde8c4fdf.jpg","lastName":"Borges","linkedInUsername":"brunocborges","mastodonUsername":"","twitterHandle":"brunoborges"}],"summary":"The talk shows how KWasm-style runtime delegation can let Java apps run on Kubernetes without container images. It explains containerd internals, custom shims, node provisioners, and CRDs, then demonstrates Brewlet.sh, a new open-source project that deploys a Spring Boot JAR directly as an OCI artifact.","timeSlots":[],"title":"Java on Kubernetes Without Container Images: The WebAssembly Way","totalFavourites":9,"track":{"id":1254,"name":"Cloud Native, Data & Infrastructure","description":"Kubernetes, platform engineering, vector DBs, model serving, and GPU orchestration.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-server-settings.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"Can you create a complete game with just 10 lines of code? That was the quest I set myself when recreating the classic game Snake in as few lines as possible. Let me tell you: I was not ready for the types of challenges I would face. For example, just registering button presses was not as straightforward as I had hoped.<br><br>Through live coding, I will show you how I overcame these obstacles and distilled Snake to its absolute essence. What key elements make this game instantly recognizable? By only using tools from the JDK, we will end up with a minimal code base and if not award-winning, at least a playable version of Snake.<br><br>Striving for conciseness led me to a deeper understanding of the code. I will show how constraints push us to think outside the box and lead to more creative solutions. Moreover, my approach can be applied to any problem. Sometimes the best way to understand code is by seeing how little of it you actually need!","fieldGroup":null,"fieldGroupValues":[],"id":19748,"keywords":[{"name":"coding"},{"name":"snake"},{"name":"minimalism"},{"name":"constraints"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Guus is a Java/Kotlin engineer at adesso Netherlands. With a passion for puzzles and a background in science, he strives for elegant solutions to complex problems. In his spare time, he likes to over-optimize the simple tasks of today, to hopefully live a lazy life tomorrow.","blueskyUsername":"","company":"adesso","countryName":"Netherlands","firstName":"Guus","fullName":"Guus de Wit","id":19777,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-df4a0ee3-439b-464e-94f4-33a5dce8a655.jpg","lastName":"de Wit","linkedInUsername":"guus-de-wit-0846a5161","mastodonUsername":"","twitterHandle":""}],"summary":"A live-coding talk recreates Snake in 10 lines of JDK-only code, overcoming input and design challenges to distill the game’s essence. The project demonstrates how extreme conciseness fosters creativity, deeper understanding, and transferable problem-solving techniques.","timeSlots":[],"title":"Snake in 10 Lines: Learning More by Coding Less","totalFavourites":8,"track":{"id":2758,"name":"Mind the Geek","description":"Developer candy: stuff we want to know about but dont (generally) at work, Robotics, biological computing, cybernetics, AI, new toys, tomorrows world","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-robot-arm.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"Can Java build a real AI agent — one that manages your calendar, reads your email, orders pizza, and remembers who you are across sessions? OpenClaw, the personal AI agent with 350K GitHub stars, proves the concept. We&#39;re going to build it twice, in Java, live on stage.<br><br>Baruch brings JetBrains Koog, Viktor brings LangChain4j. Same features, same LLM, completely different philosophies. We&#39;ll run six competitive rounds of coding, from basic agent setup through memory, tool calling, agentic workflows, guardrails, and observability. Each round surfaces a design disagreement: should memory be an Advisor or a Provider? Are agents composed services or first-class citizens? And when your guardrail framework and the model disagree, who wins?<br><br>The frameworks disagree on how AI agents should be built. The audience votes on who&#39;s right.","fieldGroup":null,"fieldGroupValues":[],"id":25027,"keywords":[{"name":"java"},{"name":"frameworks"},{"name":"ai"},{"name":"agent"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":180,"freeTickets":2,"id":959,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Deep Dive","pause":false,"scheduleInSmallRoom":false,"slug":"deep180"},"speakers":[{"anonymizedBio":null,"bio":"Viktor Gamov is a Developer Advocate at Confluent, a company that makes a cloud streaming platform based on Apache Kafka.<br>Viktor has extensive expertise in building enterprise application architectures using open-source technologies. <br>He enjoys helping architects and developers design and develop low-latency, scalable, and highly available distributed systems.<br>He is a professional conference speaker on distributed systems, streaming data, the JVM, DevOps, and other topics, and regularly speaks at events including JavaOne, Devoxx, OSCON, QCon, and others. <br>He co-authored O’Reilly’s «Enterprise Web Development.»<br>He blogs at http://gamov.io and co-hosts DevRelRad.io.<br>Follow Viktor on Twitter @gamussa, where he posts about gym life, food, open-source, and, of course, Kafka and Confluent!","blueskyUsername":"gamussa.dev","company":"Confluent","countryName":"United States of America","firstName":"Viktor","fullName":"Viktor Gamov","id":9605,"imageUrl":"https://lh3.googleusercontent.com/a/AAcHTtd9ZkVQ9giwUn-Tq1GRAjZ3ip6tMZ0Jnr2XMv2ECSYvkwJO=s96-c","lastName":"Gamov","linkedInUsername":"vikgamov","mastodonUsername":null,"twitterHandle":"gamussa"},{"anonymizedBio":null,"bio":"Baruch Sadogursky (@jbaruch) did Java before it had generics, DevOps before there was Docker, and DevRel before it had a name. He built DevRel at JFrog from a ten-person company through an IPO, co-authored &quot;Liquid Software&quot; and &quot;DevOps Tools for Java Developers,&quot; and is a Java Champion, a Microsoft MVP for AI, and a CNCF Ambassador alum.<br><br>Today, as a head of DevRel at Port and a self-certified Level 3 Context Sommelier, Baruch focuses on context engineering. On top of sharing context with AI agents, Baruch also shares knowledge with developers through blog posts, meetups, and conferences such as DevNexus, QCon, Kubecon, and Devoxx, mostly about how to make your AI engineering lifecycle smarter and increase your organization&#39;s productivity.","blueskyUsername":"jbaru.ch","company":"Port.io","countryName":"United States of America","firstName":"Baruch","fullName":"Baruch Sadogursky","id":9606,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocKqAphxO-bPI7xrWrgh3Vhn_yJ1H91TCUKCNY_tGTQagjntFox7kA=s96-c","lastName":"Sadogursky","linkedInUsername":"jbaruch","mastodonUsername":"","twitterHandle":"jbaruch"}],"summary":"A live Java showdown builds the same AI agent twice using JetBrains Koog and LangChain4j. Across six coding rounds, the speakers compare memory, tool calling, workflows, guardrails, and observability, exposing different design philosophies. The audience votes on which framework best fits real agent development.","timeSlots":[],"title":"Codepocalypse Now: LangChain4j vs JetBrains Koog","totalFavourites":8,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"Curious about the evolution and future direction of LangChain4j? Join our Birds of a Feather (BOF) session for an open and interactive discussion with members of the LangChain4j community. Since its debut at Devoxx Belgium 2023, LangChain4j has rapidly grown into a key framework for integrating large language models into Java applications. Whether you&#39;re already using LangChain4j in production or just starting to explore its capabilities, this session is a great opportunity to connect with fellow developers, contributors, and enthusiasts. We&#39;ll discuss the current state of the project, real-world adoption stories, ongoing challenges, and exciting new developments on the roadmap. This is your chance to ask questions, share feedback, exchange ideas, and help shape the future of LangChain4j. Come with curiosity and leave with insights, connections, and inspiration!","fieldGroup":null,"fieldGroupValues":[],"id":16435,"keywords":[{"name":"java"},{"name":"llm"},{"name":"langchain4j"},{"name":"framework"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":60,"freeTickets":1,"id":954,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"BOF","pause":false,"scheduleInSmallRoom":true,"slug":"bof60"},"speakers":[{"anonymizedBio":null,"bio":"Dimitris is an open source veteran with 25+ years of experience in IT and he is currently a (Red Hat) Sr.Director of Engineering at IBM in charge of the Cloud Native Runtimes group that includes Quarkus, Vert.x, SpringBoot and Node.js. He also served as the JBoss AS project lead and he has been a JBoss addict and contributor from the early start-up days. He worked previously at Intracom and Motorola in the areas of NMS/OSS, designing reusable frameworks and distributed systems. Dimitris studied computer science at the Technological Educational Institute of Athens and received an M.Sc. by research from University College Dublin, Ireland.<br> <br> Dimitris is a passionate advocator of Opensource &amp; Red Hat technologies and has presented on a variety of events and conferences around the world. He has been an invited speaker at various Java/Linux community events and user groups, and he has delivered inspirational talks on technology and Open Source in universities and educational institutes. In his spare time he has also helped with the organization of technology enablement events for children, like Scratch Days, Devoxx4Kids and JCrete4Kids.","blueskyUsername":"","company":"IBM","countryName":"Switzerland","firstName":"Dimitris","fullName":"Dimitris Andreadis","id":10167,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-c540ac38-0fdf-40cb-b0fe-8a357abd1f87.jpg","lastName":"Andreadis","linkedInUsername":"dandreadis","mastodonUsername":"","twitterHandle":"dandreadis"}],"summary":"An open BOF session on LangChain4j’s evolution, adoption, challenges, and roadmap. Join community members to discuss real-world use, share feedback, ask questions, and help shape the future of this fast-growing Java framework for integrating large language models.","timeSlots":[],"title":"LangChain4j Community BOF","totalFavourites":4,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Let&#39;s face it... containers and Kubernetes are everywhere!<br>But developers don&#39;t necessarily want to become Kubernetes specialists.<br><br>This presentation will focus on what developers need to know to get the most of Kubernetes without having to become a DevOps.<br><br>We will cover:<br><ul><li>modern local development environment (flox, kind...)</li><li>building container images (multistage build, build without docker...)</li><li>important kubernetes features developers need to know and how to handle them efficiently (requests/limits, graceful shutdown, probes, OCI volumes...)</li><li>how to investigate and debug code on kubernetes (kubectl debug, mirrord...)</li><li>how to secure applications (SecurityContext, CEL, SBOM, RuntimeClass with gVisor/Kata...)</li><li>how to integrate observability with OpenTelemetry</li></ul><br>The presentation will contain examples and demos with a strong focus on Best Practices.","fieldGroup":null,"fieldGroupValues":[],"id":17759,"keywords":[{"name":"usage"},{"name":"companies"},{"name":"kubernetes"},{"name":"evolution"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Alain Regnier is a Technical Architect and Entrepreneur passionate about innovation and new technologies.<br>He is a Kubestronaut and GDE Cloud (Google Developer Expert).<br><br>He works as Technical Director of the Kubernetes &amp; DevOps group at SCIAM, a company providing Expertise Consulting Services.<br>Before that he was CTO for Kubo Labs, a company specialized in Kubernetes on premise and on the Cloud.<br><br>He helps companies that want to move to Kubernetes or use it more efficiently following Best Practices. (strategy, cluster installation, applications update, training, audit...)<br><br>He has also spent 10 years in Silicon Valley working for startups and large companies, where he co-authored various standards about Web Services and Connected Devices.","blueskyUsername":"","company":"SCIAM","countryName":"France","firstName":"Alain","fullName":"Alain Regnier","id":18056,"imageUrl":"https://lh3.googleusercontent.com/a-/AFdZucoMvtrrwfCGhvKIFfqBfRpLpaU_hbL3lYUoE_Dulw=s96-c","lastName":"Regnier","linkedInUsername":"alainregnier","mastodonUsername":"","twitterHandle":""}],"summary":"Kubernetes for developers: what you need to know, without becoming a Kubernetes expert.","timeSlots":[],"title":"Kubernetes for Developers","totalFavourites":9,"track":{"id":1254,"name":"Cloud Native, Data & Infrastructure","description":"Kubernetes, platform engineering, vector DBs, model serving, and GPU orchestration.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-server-settings.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"Everyone is talking about AI-assisted development, but what does that mean for the next generation?<br>Are we still teaching kids to code? Should we? What skills matter when AI generates code? How do we make technology attractive and accessible to children?<br><br>Join organizers, mentors, teachers, parents, and developers for an open discussion on the future of Devoxx4Kids, coding education, robotics, and growing the next generation of makers.","fieldGroup":null,"fieldGroupValues":[],"id":10046,"keywords":[{"name":"coding"},{"name":"robotics"},{"name":"ai-assisted"},{"name":"education"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":60,"freeTickets":1,"id":954,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"BOF","pause":false,"scheduleInSmallRoom":true,"slug":"bof60"},"speakers":[{"anonymizedBio":null,"bio":"Eddy is the chairman of Devoxx4Kids Netherlands and an Engineering Manager at Ahold Delhaize Netherlands. He has a focus on AI, Data, FinOps and Java. <br>He loves to share his knowledge and help in his free time, with the Devoxx4Kids Foundation, kids to learn how to code in a fun way.","blueskyUsername":"eddyvos.bsky.social","company":"Devoxx4Kids Netherlands","countryName":"Netherlands","firstName":"Eddy","fullName":"Eddy Vos","id":10179,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-9b520e91-967e-42a4-9061-ff04e1ff6682.jpg","lastName":"Vos","linkedInUsername":"eddyvos","mastodonUsername":"","twitterHandle":"eddyvos_EVCS"}],"summary":"An open discussion on how AI-assisted development affects children’s coding education, including whether kids should still learn to code, which skills matter most, and how to make technology engaging and accessible. The session explores the future of Devoxx4Kids, robotics, and nurturing the next generation of makers.","timeSlots":[],"title":"Who will build software after AI?","totalFavourites":5,"track":{"id":2758,"name":"Mind the Geek","description":"Developer candy: stuff we want to know about but dont (generally) at work, Robotics, biological computing, cybernetics, AI, new toys, tomorrows world","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-robot-arm.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"Last year I built Backlog.md, an open source tool that captures your intent, splits it into small markdown tasks, and lets you follow your agents&#39; progress on a TUI Kanban board. A year and 300,000 agent-written lines later, my projects had quietly turned into a small dark factory: software getting built with nobody really reviewing it. Task tracking told me what the agents did, but not what my system had become. I am no longer the owner of my code.<br><br>Today I am building Groma.md to fix this. Groma keeps a real-time architectural blueprint of your project&#39;s domain as the source of truth, and tasks become the means to reach the blueprint&#39;s next iteration. Imagine UML without the fear that it goes stale, where you can watch exactly which parts of the system your agents are modifying.<br><br>Whether you are adding an order management system to a brownfield codebase or starting a new project from scratch, you design it in Groma and let the agents write the code, while you keep an eye on the overall architecture and stay in control of the meaningful decisions.<br><br>In this talk I will take a large open source repository and map it into a Groma blueprint live on stage, to show you how to become the owner of your code again.","fieldGroup":null,"fieldGroupValues":[],"id":25652,"keywords":[{"name":"architecture"},{"name":"blueprint"},{"name":"kanban"},{"name":"agents"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":30,"freeTickets":2,"id":957,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Tools-in-Action","pause":false,"scheduleInSmallRoom":false,"slug":"tia30"},"speakers":[{"anonymizedBio":null,"bio":"Alex Gavrilescu leads backend &amp; web engineering at Funstage GmbH in Vienna, keeping millions of free‑to‑play gamers happily tapping. He still ships code, tinkers with Raspberry Pi Kubernetes clusters for fun, and is passionate about weaving project‑management smarts with practical AI. Most recently he created <strong style=\"color: rgb(255, 255, 255);\">Backlog.md</strong>, a micro‑tool that turns side‑project chaos into shippable tasks.","blueskyUsername":"","company":"Backlog.md","countryName":"Italy","firstName":"Alex","fullName":"Alex Gavrilescu","id":24199,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-05b8ab40-661f-4685-ba72-9774462ba13b.jpg","lastName":"Gavrilescu","linkedInUsername":"alexandrugavrilescu","mastodonUsername":"","twitterHandle":"mrlesk"}],"summary":"Groma.md is an open-source tool that maintains a live architectural blueprint of your codebase, keeping you in control while agents write code. Unlike task tracking, it shows how the system evolves in real time. The talk will demo mapping a large repository into a Groma blueprint live.","timeSlots":[],"title":"In the loop, not in the dark: staying in control in the era of dark software factories","totalFavourites":8,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"You’ve probably seen AI agents in action—reasoning through complex problems, orchestrating API calls, recovering from mistakes, and maintaining intent across dozens of interactions. But how do they actually work? This workshop answers that question from first principles. Through a series of progressively more capable examples, we’ll evolve a simple request/response interaction into a complete agentic system with an explicit control loop: <strong>plan → act → observe → decide</strong>. Rather than treating agents as black boxes, we’ll expose the architectural patterns that make them reliable, understandable, and testable.<br><br>The examples are implemented with Spring Boot and Spring AI, but this is not a framework tutorial. The focus is on the fundamental patterns that underpin agentic systems, regardless of language, framework, or AI model. Using a dinner planning assistant as our running example, we’ll progressively introduce tool invocation, planning, memory, multi-step execution, evaluation, error handling, and termination conditions, showing how each capability emerges naturally as the agent evolves.<br><br>A central theme of the workshop is that <strong>agents are systems embedded in systems</strong>. Building robust agents is less about prompt engineering and more about software architecture. By the end of the session, you’ll have a clear mental model of the agentic loop and a practical set of architectural patterns you can apply to build production-ready agentic systems, regardless of the technologies you use.","fieldGroup":null,"fieldGroupValues":[],"id":24247,"keywords":[{"name":"memory"},{"name":"architecture"},{"name":"planning"},{"name":"agents"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":180,"freeTickets":2,"id":959,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Deep Dive","pause":false,"scheduleInSmallRoom":false,"slug":"deep180"},"speakers":[{"anonymizedBio":null,"bio":"Adib Saikali is a Distinguished Engineer at Tanzu, focused on helping large enterprises design and build AI-enabled platforms and applications using Spring. His work centers on AI agent architectures, agentic control loops, API design for autonomous systems, and enterprise governance for AI in production. Adib is the author of <em style=\"background-color: transparent; color: rgb(0, 0, 0);\">Software Security for Developers </em>and brings over 25 years of experience across startups and global enterprises in roles spanning developer, architect, and CTO.","blueskyUsername":null,"company":"Broadcom","countryName":"Canada","firstName":"Adib","fullName":"Adib Saikali","id":24178,"imageUrl":"https://lh3.googleusercontent.com/a/AAcHTtfY6Rruj1Zj96IlogKnZ3KQRWlq0jO9-eEuvaq7QgiQhw=s96-c","lastName":"Saikali","linkedInUsername":"asaikali","mastodonUsername":null,"twitterHandle":"asaikali"}],"summary":"This workshop explains agentic AI from first principles, evolving a simple request/response flow into a full plan-act-observe-decide loop. Using Spring Boot/Spring AI examples, it covers tools, planning, memory, multi-step execution, evaluation, error handling, and termination, emphasizing robust software architecture over prompt engineering.","timeSlots":[],"title":"Building AI Agents from First Principles","totalFavourites":8,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"<strong style=\"background-color: transparent; color: rgb(0, 0, 0);\"><em>Building Production-Ready A2A Agents with LangChain4j, Quarkus, Spring Boot &amp; Jakarta EE</em></strong><br>Enterprise AI is shifting from isolated chatbots to multi-agent ecosystems where specialized agents negotiate and delegate tasks. The <strong style=\"color: rgb(0, 0, 0); background-color: transparent;\">Agent-to-Agent (A2A) Protocol</strong> is the emerging standard for this interoperability, defining the wire format for seamless cross-language communication.<br>This intensive, hands-on workshop equips Java developers to build, connect, and scale production-grade A2A ecosystems using <strong style=\"color: rgb(0, 0, 0); background-color: transparent;\">LangChain4j</strong> and the official<strong style=\"color: rgb(0, 0, 0); background-color: transparent;\"> A2A Java SDK</strong>.<br><h3><strong style=\"color: rgb(0, 0, 0); background-color: transparent;\">🛠️ What You Will Learn &amp; Build</strong></h3>The journey begins with the core architecture, where you will decode the A2A specifications and implement an AgentCard for schema discovery alongside an AgentCardExecutor for standardized message delivery.<br>From there, you will transition into a <strong style=\"color: rgb(0, 0, 0); background-color: transparent;\">multi-runtime build,</strong> deploying identical agent capability contracts natively across <strong style=\"color: rgb(0, 0, 0); background-color: transparent;\">Spring Boot</strong>, JA2A, and <strong style=\"color: rgb(0, 0, 0); background-color: transparent;\">Quarkus</strong>.<br>To prove true language independence, you will connect a Python-based agent built with the A2A <strong style=\"color: rgb(0, 0, 0); background-color: transparent;\">Python SDK</strong> to achieve seamless, cross-framework interaction.<br>As the network grows, you will dive into orchestration by building a dynamic router agent capable of decomposing complex, multi-turn tasks and dispatching them across your diverse mesh.<br>Finally, you will prepare for <strong style=\"color: rgb(0, 0, 0); background-color: transparent;\">Enterprise Day-2 Operations </strong>by mastering production challenges like distributed state management, load balancing for stateful LLM conversations, and tracing complex interactions via <strong style=\"color: rgb(0, 0, 0); background-color: transparent;\">OpenTelemetry (OTel)</strong>.","fieldGroup":null,"fieldGroupValues":[],"id":5516,"keywords":[{"name":"microprofile"},{"name":"generativeai"},{"name":"jakartaee"},{"name":"langchain4j"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#00FF00","description":null,"dinerInvite":true,"duration":120,"freeTickets":2,"id":984,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":2,"name":"Hands-on Lab","pause":false,"scheduleInSmallRoom":true,"slug":"lab120"},"speakers":[{"anonymizedBio":null,"bio":"Into the Java World for the last 25 years, I joined Red Hat in 2013 to contribute on the development of the JakartaEE server WildFly and moved to IBM in 2025.<br>I also contribute to a large number of OSS projects and I&#39;m a member of the Apache NetBeans Dream Team.<br>I&#39;ve been one of the founder of the <a href=\"http://snowcamp.io\" rel=\"noopener noreferrer\" target=\"_blank\">SnowCamp</a> conference and I&#39;m a JUG leader of <a href=\"http://alpesjug.org\" rel=\"noopener noreferrer\" target=\"_blank\">AlpesJUG</a>.<br>Recently I&#39;ve started to look into Generative AI and LangChain4J and I started the wildfly-ai-feature-pack to facilitate developing Generative AI JakartaEE applications with WildFly, contributing to <a href=\"https://github.com/langchain4j/langchain4j-cdi\" rel=\"noopener noreferrer\" target=\"_blank\">langchain4j-cdi</a> and LangChain4J along the way.<br>I also contribute to the <a href=\"https://github.com/a2aproject/a2a-java\" rel=\"noopener noreferrer\" target=\"_blank\">A2A Java SDK</a> providing a reference implementation of the <a href=\"https://a2a-protocol.org/\" rel=\"noopener noreferrer\" target=\"_blank\">A2A</a> protocol in Java.","blueskyUsername":"ehsavoie.bsky.social","company":"IBM","countryName":"France","firstName":"Emmanuel","fullName":"Emmanuel Hugonnet","id":5813,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocI_LNcfEMO7A9N-kuKXYVnc6dpm2KSwRws_s0f4sSklrbdqruzA=s96-c","lastName":"Hugonnet","linkedInUsername":"ehsavoie","mastodonUsername":"https://framapiaf.org/@ehsavoie","twitterHandle":"ehsavoie"},{"anonymizedBio":null,"bio":"With over 25 years of experience in enterprise software development and AI engineering, I explore how artificial intelligence is transforming the way we build, learn, and live with technology. I have an old passion for Open Source and more recent one for AI Engineering.","blueskyUsername":"","company":"IBM","countryName":"Italy","firstName":"Stefano","fullName":"Stefano Maestri","id":16360,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocLGEYxm84uctahd-qUUcxCFJlvsJdS1ob8UEiziPUNLeb2CmlFF=s96-c","lastName":"Maestri","linkedInUsername":"meste","mastodonUsername":"","twitterHandle":"maeste"},{"anonymizedBio":null,"bio":"Mario is a senior principal software engineer at IBM working as Drools project lead. Among his interests there are also high performance systems and generative AI, being an active contributor of widely adopted projects like Quarkus and LangChain4j. He is also a Java Champion, the JUG Milano coordinator, a frequent speaker and the co-author of &quot;Modern Java in Action&quot; published by Manning.","blueskyUsername":null,"company":"IBM","countryName":"Italy","firstName":"Mario","fullName":"Mario Fusco","id":3932,"imageUrl":"https://lh3.googleusercontent.com/a-/AOh14GinuLQCwL67BBgfGsiWRl3mu3Ya0TbDffhYFiXX=s96-c","lastName":"Fusco","linkedInUsername":"mario-fusco-3467213","mastodonUsername":null,"twitterHandle":"mariofusco"}],"summary":"LangChain4j-CDI brings generative AI to Jakarta EE/MicroProfile with a CDI extension for easy AI service injection. It demonstrates building enterprise AI agents using MCP and A2A protocols, plus resilience, observability, and multi-provider configuration. Live coding shows deployment on Quarkus, WildFly, and Helidon in minutes.","timeSlots":[],"title":"Wiring Up the AI Mesh: Building A2A-Compliant Java Agents","totalFavourites":null,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"This interactive session transforms AI security education into an engaging courtroom style debate. We&#39;ll present five critical vulnerabilities affecting modern AI development tools, and after each case study, the audience becomes the jury—voting on who&#39;s responsible: the careless user, the negligent developer, or the inadequate service provider.<br><br>We&#39;ll dissect real CVEs including GitHub Camo Leak (CVE-2025-59145), Ollama RCE (CVE-2024-37032), AWS MCP Server Shell Injection (CVE-2025-5277), Anthropic MCP Inspector DNS Rebinding (CVE-2025-49596 ) and Microsoft Copilot&#39;s zero-click data exfiltration (CVE-2025-32711). Each case reveals technical root causes through collaborative analysis. The List of CVEs will be usually update based on the new related CVEs as well.<br><br>The conclusion challenges the &quot;blame game&quot; itself: these vulnerabilities expose fundamental architectural weaknesses in agentic AI systems where traditional security models fail. We will talk about <u style=\"background-color: rgb(255, 255, 255); color: rgb(103, 106, 108);\">Mental Model Gap</u> and how this phenomenon has been seen before in the technological leaps before. We&#39;ll establish that securing AI tools demands a shared responsibility framework developers must code defensively, providers must architect securely, and users must understand AI-specific risks.","fieldGroup":null,"fieldGroupValues":[],"id":7020,"keywords":[{"name":"shared responsibility"},{"name":"cve"},{"name":"vulnerabilities"},{"name":"ai security"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":null,"description":null,"dinerInvite":true,"duration":40,"freeTickets":1,"id":5151,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":null,"name":"Lunch Talk","pause":false,"scheduleInSmallRoom":false,"slug":"lunch-talk"},"speakers":[{"anonymizedBio":null,"bio":"Makan Sepehrifar is a software architect who is interested in how people think and behave in organizations. He sees software architecture as a craft and believes that every challenge has both a technical side and a social side, and both need attention at the same time. Coming from a strong developer background, he has led many teams across different domains and organizations, always working to connect technology with human needs and team dynamics.<br>He is passionate about the future of Developer Experience and how Generative AI and Agentic AI are reshaping the way developers work. Makan focuses on how these technologies can improve developer satisfaction and help teams become more adaptive and effective. He is a public speaker on Developer Experience practices and AI in this space, and he has been part of several Generative AI adoption teams in different companies, helping them use AI in a practical and effective way.","blueskyUsername":"makan1869.bsky.social","company":"Productboard","countryName":"Netherlands","firstName":"Makan","fullName":"Makan Sepehrifar","id":5847,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-68014c00-8dd0-4467-9ac6-f205258d440d.jpg","lastName":"Sepehrifar","linkedInUsername":"makan1869","mastodonUsername":"","twitterHandle":""}],"summary":"An interactive courtroom-style session on AI security, where audiences judge responsibility for five real CVEs in AI tools. It analyzes root causes, evolving vulnerabilities, and the “blame game,” arguing that securing agentic AI requires shared responsibility among developers, providers, and users.","timeSlots":[],"title":"Who to blame? The AI, The Programmer, or The Prompt?","totalFavourites":8,"track":{"id":1255,"name":"Security, Trust & Compliance","description":"Guardrails, prompt injection defence, model governance, and supply-chain security.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-surveillance-camera.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"So you got &quot;promoted&quot; to lead a team / project / whatever. What now? Do you have what it takes? It certainly seems that your hierarchy thinks so. But oftentimes things are not so black and white. Being a great plumber doesn&#39;t automatically make you a great leader of plumbers, so you need to adapt and adjust your ways of working by dropping old habits and picking up new ones. Then you start getting worried by the fact that you won&#39;t be able to have as much impact as before, since you&#39;re not coding as much as you used to in the past (and that&#39;s what you&#39;re good at, right?).<br><br>What if leadership can amplify your technical impact instead? In this talk, I’ll share how I evolved from individual contributor to a mix of Solution Architect, Tech Lead and classical Engineering Manager at CERN - keeping my hands in the code while scaling my influence through the team that I work with. I&#39;ll be sharing best practices and adjustment techniques for you to use when faced with the difficult transition process into technical leadership. And lastly, we&#39;ll be talking about how to stay relevant even if you&#39;re not spending countless hours honing your coding skills anymore.<br>","fieldGroup":null,"fieldGroupValues":[],"id":9025,"keywords":[{"name":"leadership"},{"name":"technical"},{"name":"influence"},{"name":"transition"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Dr. Cristian Schuszter holds a PhD in Systems Engineering with a focus on distributed fault-tolerant software architectures and machine-learning based failure prediction. In his day-to-day, he is somewhere between a Data and Full-stack Software Engineer, with a wide range of tech &amp; job exposure both in academia and industry.<br><br>For the past 8 years he&#39;s been working with various teams in CERN (the European Organization for Nuclear Research). Currently he&#39;s focusing on the architectural directions of the CERN business computing group, with an emphasis on enterprise Java systems and UI.<br>","blueskyUsername":"cschuszter.bsky.social","company":"CERN","countryName":"Switzerland","firstName":"Cristian","fullName":"Cristian Schuszter","id":8687,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-8a031ed5-f55f-4758-8655-819459e29ce6.jpg","lastName":"Schuszter","linkedInUsername":"cschuszter","mastodonUsername":"","twitterHandle":""}],"summary":"This talk explores the transition from individual contributor to technical leader, showing how leadership can amplify impact rather than reduce it. Drawing on experience at CERN, it shares practical techniques for adapting, staying relevant, and maintaining technical influence while leading teams.","timeSlots":[],"title":"The Quantum Tech Lead: Hands-On and Abstract at the Same Time","totalFavourites":7,"track":{"id":1253,"name":"People, Practices & Career","description":"Leading teams, engineering culture, and career resilience.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-deepfake-ai.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Project Leyden raises a hard question for Quarkus: can we benefit from faster JVM startup and warm-up without undoing the assumptions that make Quarkus fast today? After years of optimizations to reduce startup costs, profiling JVM Quarkus applications still points to familiar hotspots: class loading and reading from JAR files.<br><br>Quarkus has already pushed hard in these areas through build-time processing, custom packaging, and class loading strategies. Leyden promises a major shift for JVM applications, but combining it with Quarkus is not just about enabling a new feature. Some of Leyden’s current constraints interact directly with optimizations Quarkus relies on, forcing us to question where responsibilities should sit between the framework, the JVM, and the application packaging model.<br><br>This talk shares findings from experimenting with Project Leyden inside Quarkus, and you will learn what to watch for when fine-tuning startup and warm-up behavior, and how to reason about the trade-offs between Quarkus’ existing optimizations and Leyden’s emerging JVM-level capabilities. Expect concrete findings, performance observations, current limitations, experimental prototypes, and practical lessons for developers who want to prepare their Quarkus applications for the next generation of JVM startup optimization.","fieldGroup":null,"fieldGroupValues":[],"id":5510,"keywords":[{"name":"optimization"},{"name":"startup"},{"name":"quarkus"},{"name":"leyden"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Georgios works for IBM as a Senior Principal Software Engineer and is currently one of the most active contributors to Quarkus, where he works in all sorts of areas, including but not limited to LangChain4j, RESTEasy Reactive, Spring compatibility, Kubernetes support, testing, Kotlin, and more.<br><br>He is also an enthusiastic promoter of Quarkus who never misses a chance to spread the Quarkus love!","blueskyUsername":null,"company":"IBM","countryName":"Greece","firstName":"Georgios","fullName":"Georgios Andrianakis","id":3945,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-95904645-1695-4adf-b24c-41926050b4b4.jpg","lastName":"Andrianakis","linkedInUsername":"georgios-andrianakis","mastodonUsername":null,"twitterHandle":"geoand86"},{"anonymizedBio":null,"bio":"Ana is a Java Champion Alumni and Senior Developer Advocate for the Java Platform Group at Oracle, with an extensive background in Java and cloud development. More recently, her work has expanded to explore how machine learning and AI can be applied within the Java ecosystem, helping Java developers adopt emerging capabilities while continuing to benefit from the stability, tooling, and performance of the Java Platform. She actively supports the growth of technical communities through knowledge sharing and enjoys curating content for conferences as a program committee member. ","blueskyUsername":"ammbra1508.bsky.social","company":"Oracle","countryName":"Netherlands","firstName":"Ana-Maria","fullName":"Ana-Maria Mihalceanu","id":5830,"imageUrl":"https://lh3.googleusercontent.com/a-/AOh14Gj1OS6OpAzuwBKwoUuCi9gxvNPvdmVA7nbW8lg3mg=s96-c","lastName":"Mihalceanu","linkedInUsername":"","mastodonUsername":"https://mastodon.social/@ammbra1508","twitterHandle":"ammbra1508"}],"summary":"This talk shares hands-on Quarkus experiments with Project Leyden, exploring how Leyden’s JVM startup and warm-up improvements interact with Quarkus’ build-time optimizations. It highlights what works, current limitations, performance findings, broken assumptions, and design changes needed to combine both approaches effectively.","timeSlots":[],"title":"Quarkus Meets Leyden at the JVM Performance Edge","totalFavourites":2,"track":{"id":2754,"name":"Java Language & Platform","description":"Project Loom, Leyden, Valhalla, Panama, and the ever evolving JVM.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-coffee-mug.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"As AI-assisted coding evolves from simple autocomplete to autonomous agents, developers need new mental models and tools to maintain productivity and trust. In this session, we are going to revisit the major developments in agentic coding from over the past few months, from MCP to skills and beyond; discuss how to improve trust in your agents and take a tour of the new Google Antigravity ecosystem. Every technique discussed will be paired with a live demo using practical examples of day to day development so we can see the coding agent in action. Supporting materials for this session can be found at: <u style=\"color: rgb(0, 97, 89);\"><a href=\"https://github.com/danicat/state-of-agentic-coding\" rel=\"noopener noreferrer\" target=\"_blank\">https://github.com/danicat/state-of-agentic-coding</a></u><br>","fieldGroup":null,"fieldGroupValues":[],"id":25671,"keywords":[{"name":"ai-assisted"},{"name":"autonomous"},{"name":"softwareengineering"},{"name":"agents"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Daniela Petruzalek is an experienced IT professional with background in software engineering, pre-sales and developer relations, currently a Senior Developer Relations Engineer at Google. Her specialisation is data engineering and back end development and she is a former Google Developer Expert in Go and Google Cloud Platform. She&#39;s also a Google Cloud Certified Data Engineer, Oracle Certified Professional and TEDx speaker. In her spare time she contributes to open source, plays video games and pets random cats on the streets.","blueskyUsername":"danicat83.bsky.social","company":"Google Cloud","countryName":"United Kingdom","firstName":"Daniela","fullName":"Daniela Petruzalek","id":24186,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocJALSmaAeQ2KPyjkQq0mv6gykwBqgZXif1g3KZyFjCqQDqQZOpEUw=s96-c","lastName":"Petruzalek","linkedInUsername":"petruzalek","mastodonUsername":"","twitterHandle":"danicat83"}],"summary":"This session reviews recent advances in agentic coding, from MCP to skills, and explores ways to build trust in AI coding agents. It includes live demos of practical development workflows and an overview of the Google Antigravity ecosystem.","timeSlots":[],"title":"State of Agentic Coding","totalFavourites":null,"track":{"id":1701,"name":"Development Practices","description":"All about Getting Stuff Done right. Methodologies, better practices, etc.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-hearts-card.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"AI coding agents are rapidly becoming first-class citizens in enterprise software workflows. Teams are already delegating consequential decisions to autonomous agents: generating database migrations, refactoring service boundaries, modifying schemas, producing runbooks, and calling external tools. But as agent autonomy grows, a critical question emerges — who is responsible when something goes wrong?<br><br>This talk explores the discipline of Human-in-the-Loop (HITL) design, and how to build AI-assisted workflows that keep humans meaningfully in control without sacrificing the productivity gains that make agents worth adopting in the first place. It also examines the growing body of EU regulation that makes HITL not just a good engineering practice, but a legal requirement for certain classes of systems.<br><br>The session will demonstrate these concepts through a realistic microservices scenario — a Java enterprise platform with AI-assisted delivery — showing how the absence of human oversight leads to cascading failures, and how a well-designed HITL architecture, grounded in both engineering discipline and regulatory awareness, would have prevented them. Attendees will leave with a concrete framework for moving fast with AI agents without losing control of their systems or their compliance posture.","fieldGroup":null,"fieldGroupValues":[],"id":7017,"keywords":[{"name":"hitl"},{"name":"compliance"},{"name":"autonomy"},{"name":"microservices"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":30,"freeTickets":2,"id":957,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Tools-in-Action","pause":false,"scheduleInSmallRoom":false,"slug":"tia30"},"speakers":[{"anonymizedBio":null,"bio":"From programming microservices to leading engineering teams: this is how I&#39;ve spent my last 20 years in technology as a Java/Spring ecosystem specialist. My career has evolved from designing cloud-native architectures and migrating legacy systems to leading engineering teams focused on high-quality results and efficient processes.","blueskyUsername":null,"company":"IG","countryName":"Spain","firstName":"Juan","fullName":"Juan Antonio Breña 🇪🇸🇪🇺","id":5848,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-40c3fd7e-fe96-414c-b6c4-4b52f1bd300a.jpg","lastName":"Antonio Breña 🇪🇸🇪🇺","linkedInUsername":"juanantoniobrenamoral","mastodonUsername":null,"twitterHandle":"juanantoniobm"}],"summary":"The talk explains Human-in-the-Loop design for AI coding agents in enterprise workflows, covering approval gates, audit trails, compliance with the EU AI Act, and failure risks in microservices. It offers practical patterns for adding human checkpoints to CI/CD without sacrificing speed or control.","timeSlots":[],"title":"The Importance of HITL to Avoid Chaos and EU Regulations for AI","totalFavourites":18,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"Secure by Design does not fail only because developers lack security awareness. It often fails because teams prescribe the wrong intervention: training when the real blocker is time, tools, motivation, or trust. In this practitioner-focused talk, we introduce SECUR-E, the OWASP Security Culture Project v2.0 framework that uses COM-B to help developers and software teams diagnose what actually blocks secure development behavior.<br><br>Through a relatable story, practical examples, and six memorable developer patterns, Skeptic, Enthusiast, Compliant, Unaware, Resistant, and Embedded, the audience will learn why one-size-fits-all security programs miss, bore, or backfire. We will show how a lightweight self-assessment maps Capability, Opportunity, and Motivation into team insights, then translates those insights into better interventions: evidence for Skeptics, support for Enthusiasts, autonomy for Resistant profiles, foundational help for Unaware developers, and amplification for Embedded security-minded builders.<br><br>Key takeaways: stop asking “why don’t developers care?”; diagnose whether the blocker is skill, environment, or motivation; choose interventions that fit the pattern; protect psychological safety; and use SECUR-E as a practical playbook for building secure software teams without blame. Audience: software developers, tech leads, security champions, and engineering managers with beginner-to-intermediate knowledge.","fieldGroup":null,"fieldGroupValues":[],"id":12758,"keywords":[{"name":"security culture"},{"name":"com-b"},{"name":"psychological safety"},{"name":"secure development"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Enrique Larios Vargas is a Security and Learning Specialist with over 8 years of experience designing impactful learning and enablement programs across fintech, engineering, and security domains. With a background as a university lecturer in software engineering in Peru, the Netherlands, and Canada, he brings a unique blend of technical insight and behavioral science to his work. Enrique is the lead author of the research paper <em>“DASP: A Framework for Driving the Adoption of Software Security Practices”</em>, which explores how behavioral models like COM-B can drive secure development. He is passionate about helping developers move beyond compliance and build a meaningful, human-centered security culture.","blueskyUsername":"","company":"OWASP","countryName":"Netherlands","firstName":"Enrique","fullName":"Enrique Larios Vargas","id":12611,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-3a74a43d-dc7b-46a1-84da-7840cb0dff8f.jpg","lastName":"Larios Vargas","linkedInUsername":"enrique-larios-vargas","mastodonUsername":"","twitterHandle":""}],"summary":"SECUR-E, an OWASP framework using COM-B, helps teams diagnose why secure development fails—whether due to skills, environment, or motivation—not just awareness. It identifies six developer patterns and guides tailored interventions, improving secure software practices without blame.","timeSlots":[],"title":"Knocking on the Wrong Door: The Six Developers You’ll Meet in Security","totalFavourites":7,"track":{"id":1253,"name":"People, Practices & Career","description":"Leading teams, engineering culture, and career resilience.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-deepfake-ai.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"It arrives in a box, in pieces, and every part of it is open: hardware, firmware, simulator, SDK. An hour with a screwdriver and there is a robot on your kitchen table. What it does not arrive with is a mind.<br><br>So I bought one, and I wrote it a brain called AURA. No lab, no team, just a laptop and some evenings.<br><br>AURA knows the people in my house and treats each of them differently. What we told it stays separate from what it worked out on its own. Given a task, it opens VS Code, puts Claude Code to work on a real repository, and asks my permission before anything is committed.<br><br>It still gets things wrong. Nothing in the design promises otherwise; what it promises is that nothing sensitive happens without me saying yes.<br><br>The robot is not the point. The point is how little it now takes to build one, and that quietly changes who gets to build anything at all. I would rather show you that than argue it, so there will be demos, and no promises about all of them behaving.<br>","fieldGroup":null,"fieldGroupValues":[],"id":50102,"keywords":[{"name":"firmware"},{"name":"autonomy"},{"name":"privacy"},{"name":"robot"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#e89c1a","description":null,"dinerInvite":true,"duration":20,"freeTickets":2,"id":955,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Keynote","pause":false,"scheduleInSmallRoom":false,"slug":"key20"},"speakers":[{"anonymizedBio":null,"bio":"Jan Van Wassenhove is the Technical Director of the System Integrations Business Line for the BeLux region at Sopra Steria, where he drives technology solutions and services, supported by his team of architects. With a strong background in Java development, Jan has evolved into an experienced architect and project manager, with in-depth expertise in Agile methodologies.<br><br>Remarkably, he is also the initiator of “SCRUM”, a new programming language he conceived. This creation perfectly reflects his innovative mindset and constant drive to explore new technological territories — and proves, with a wink, that everyone really can become a SCRUM master… in code.<br><br>Throughout his career, he has contributed to numerous projects in both the public and private sectors, with a particular focus on banking and public administrations.","blueskyUsername":"","company":"Sopra Steria","countryName":"Belgium","firstName":"Jan","fullName":"Jan Van Wassenhove","id":7632,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-e7b52977-dc36-455d-a814-67a86c6644ab.jpg","lastName":"Van Wassenhove","linkedInUsername":"jan-van-wassenhove-9b49893","mastodonUsername":"","twitterHandle":""}],"summary":"A hobbyist built AURA, a personal “brain” for an open robot platform, using only a laptop. It recognizes household members, keeps learned and told information separate, and seeks permission before committing code. The project demonstrates how accessible robotics and AI now are.","timeSlots":[],"title":"From Brainless to Brilliant — Giving an Open-Source Robot a Mind of Its Own","totalFavourites":null,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"ADVANCED","description":"Java is full of subtleties, pitfalls, and rules we think we know until we have to predict what a piece of code will actually print.<br>In this interactive session, we will walk through a series of short Java snippets to analyze together.<br>The goal is to learn, revisit core concepts, challenge assumptions, and better understand how the Java language really behaves.","fieldGroup":null,"fieldGroupValues":[],"id":10043,"keywords":[{"name":"subtleties"},{"name":"java"},{"name":"pitfalls"},{"name":"snippets"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":60,"freeTickets":1,"id":954,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"BOF","pause":false,"scheduleInSmallRoom":true,"slug":"bof60"},"speakers":[{"anonymizedBio":null,"bio":"Passionate about software development since getting my first programmable calculator, I have built a solid experience as a tech lead and architect in designing embedded combat systems.<br>An advocate of clean code, &quot;developer joy&quot; and well-thought-out architectures, I enjoy working on design topics as well as front-end or back-end development.<br>I recently founded a &quot;JUG-like&quot; meetup in southern France called &quot;Toulon Dev&quot;","blueskyUsername":"cdetastes.bsky.social","company":"SCIAM","countryName":"France","firstName":"Clément","fullName":"Clément de Tastes","id":3653,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-0a33a77f-9982-4862-8714-ad3c32701c94.jpg","lastName":"de Tastes","linkedInUsername":"clement-de-tastes","mastodonUsername":"","twitterHandle":""}],"summary":"Interactive Java session exploring tricky language subtleties through short code snippets. Participants will predict outputs together, revisit core concepts, challenge assumptions, and deepen their understanding of how Java actually behaves in practice.","timeSlots":[],"title":"What Does it Print? The Java Quiz (Hard Edition 🤯)","totalFavourites":6,"track":{"id":2754,"name":"Java Language & Platform","description":"Project Loom, Leyden, Valhalla, Panama, and the ever evolving JVM.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-coffee-mug.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"Spring Boot 4.x and Java 25+ have arrived, making it an exciting time to be a Java developer! Join me, Josh Long (@starbuxman), as we dive into the future of Spring Boot with Java 25. We&#39;ll learn how to scale your applications and codebases effortlessly, explore the robust Spring Boot ecosystem featuring AI, modularity, seamless data access, security, and cutting-edge production optimizations like Project Loom&#39;s virtual threads, Project Leyden, GraalVM, and more. Let&#39;s explore the latest-and-greatest in Spring Boot to build faster, more scalable, more efficient, more modular, more secure, and more intelligent systems and services.<br><br>","fieldGroup":null,"fieldGroupValues":[],"id":19733,"keywords":[{"name":"graalvm"},{"name":"java"},{"name":"virtual threads"},{"name":"spring boot"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"<a href=\"http://twitter.com/starbuxman\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"color: var(--gray-400);\">Josh (@starbuxman)</a> has been the first Spring Developer Advocate since 2010. Josh is a Java Champion, author of 7 books (including <a href=\"http://reactivespring.io/\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"color: var(--gray-400);\">&quot;Reactive Spring&quot;</a>) and numerous best-selling video training (including <a href=\"https://www.safaribooksonline.com/library/view/building-microservices-with/9780134192468/\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"color: var(--gray-400);\">&quot;Building Microservices with Spring Boot Livelessons&quot;</a>with Spring Boot co-founder Phil Webb), and an open-source contributor (Spring Boot, Spring Integration, Axon, Spring Cloud, Activiti, Vaadin, etc), a Youtuber (<a href=\"https://youtube.com/@coffeesoftware\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"color: var(--gray-400);\">Coffee + Software with Josh Long</a> as well as <a href=\"http://bit.ly/spring-tips-playlist\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"color: var(--gray-400);\">my Spring Tips series </a>), and a podcaster (<a href=\"http://bootifulpodcast.fm/\" rel=\"noopener noreferrer\" target=\"_blank\" style=\"color: var(--gray-400);\">&quot;A Bootiful Podcast&quot;</a>).<br><br>","blueskyUsername":"starbuxman.bsky.social","company":"the Spring team","countryName":"United States of America","firstName":"Josh","fullName":"Josh Long","id":14654,"imageUrl":"https://lh3.googleusercontent.com/a-/AOh14GhTAlrBfIHBoWpP1mfcKm-kRON4bdBF_LccGehD=s96-c","lastName":"Long","linkedInUsername":"joshlong","mastodonUsername":"","twitterHandle":"starbuxman"}],"summary":"Explore Spring Boot 4.x with Java 25+, covering scalable, modular, secure, and intelligent applications. Learn about the Spring ecosystem, AI integration, seamless data access, and production optimizations including virtual threads, Project Leyden, GraalVM, and more for building faster, more efficient systems.","timeSlots":[],"title":"Bootiful Spring Boot 4","totalFavourites":26,"track":{"id":1252,"name":"Architecture & Modernization","description":"Designing for agentic workflows, event-driven systems, and legacy transformation.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-blockchain.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"Destructoring—the breakdown of an object into its constituent parts—is key to Java&#39;s ability to reliably maintain encapsulation and invariants. We resolve this apparent paradox in the presentation by looking at past and future language and platform features in the JDK.<br><br>Classic Java serialization breaks encapsulation: it directly accesses private fields, thereby bypassing constructors and the checks anchored there. The reason for this is that deconstruction and reconstruction have not been first-class citizens in the JDK until now.<br><br>This is precisely where current work within the JDK Project Amber comes in – under the working title “Derived Record/Class Creation.” This approach allows us to explicitly specify how objects are deconstructed and reconstructed. This will not only make serialization more secure and robust in the future, but we will also gain “withers” (targeted, immutable copies with individual modified components) for records and pattern matching, which will be extended beyond pure record patterns to normal classes.<br><br>Given these circumstances, it is worth taking a closer look: What is already there, what comes next – and what does this mean for our daily Java practice?","fieldGroup":null,"fieldGroupValues":[],"id":7012,"keywords":[{"name":"encapsulation"},{"name":"serialization"},{"name":"destructuring"},{"name":"records"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":null,"description":null,"dinerInvite":true,"duration":40,"freeTickets":1,"id":5151,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":null,"name":"Lunch Talk","pause":false,"scheduleInSmallRoom":false,"slug":"lunch-talk"},"speakers":[{"anonymizedBio":null,"bio":"Richard Gross is an IT archaeologist at MaibornWolff with more than ten years of modernization experience. His focus is on hexagonal architectures, hypermedia APIs, TestDSLs and the expressive and unambiguous modelling of the domain as code. He enjoys mastering TDD, BDD, DDD, decoupled design and even practices that don&#39;t include two D&#39;s. He also shaped the open source project CodeCharta, which lets even non-developers grasp the quality of their software.","blueskyUsername":"richargh.de","company":"MaibornWolff GmbH","countryName":"Germany","firstName":"Richard","fullName":"Richard Gross","id":5839,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-7f802c4e-9a8f-467c-99d9-7d96c94b9ebc.jpg","lastName":"Gross","linkedInUsername":"richargh","mastodonUsername":"https://mas.to/richargh","twitterHandle":""}],"summary":"Project Amber’s “Derived Record/Class Creation” aims to make object deconstruction and reconstruction first-class in Java, fixing serialization’s encapsulation issues. It enables safer, more robust serialization, plus withers and broader pattern matching support for records and normal classes.","timeSlots":[],"title":"Destructoring is the future of Javas Encapsulation","totalFavourites":13,"track":{"id":2754,"name":"Java Language & Platform","description":"Project Loom, Leyden, Valhalla, Panama, and the ever evolving JVM.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-coffee-mug.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"Has this ever happened to you: You just spent €50,000 on a humanoid <br>robot, but it&#39;s not very fun at parties, so you have to train it to <br>dance using reinforcement learning in a simulation environment on your <br>€100,000 GPU cluster? What do you mean &quot;NO&quot;?<br><br>In this talk, Thomas Endres and David Winderl will teach you how you can <br>train your humanoid robot to dance using Reinforcement Learning (RL) in <br>simulation environments. They&#39;re gonna kick things off with an <br>introduction into RL, covering the basics of policies and rewards. After <br>that, they’ll take their first steps in simulation environments with the <br>introduction of NVIDIA Isaac Sim and the Unitree RL Lab. Our speakers <br>will run through the steps of shaping a walking policy, one hilarious <br>fall at a time. Finally, they&#39;re going to shake things up with a dancing <br>policy: You will learn how you can retarget human motion from videos to <br>the Unitree G1 robot and train an imitation policy that can dance just <br>as poorly as you.<br><br>For the grande finale, our humanoid robot will close the session with a <br>dancing performance, not missing out on a single step.","fieldGroup":null,"fieldGroupValues":[],"id":50103,"keywords":[{"name":"imitation"},{"name":"simulation"},{"name":"humanoid"},{"name":"reinforcement"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"Thomas Endres is a Managing Partner for TNG Technology Consulting in Munich. Besides his normal work for the company and the management of the customers he is creating various prototypes, including real-time deepfakes, an AI for generating presentations or various robotics showcases. He works on applications in the field of AI, robotics, AR/VR and teleoperation. Furthermore, he is involved in Open Source projects.<br>Thomas studied computer science at TU Munich and is a passionate software developer. As an Intel Software Innovator and Black Belt, he presents new technologies such as AI, AR/VR, and robotics worldwide. For this, he has received awards including a JavaOne Rockstar Award and several Best Speaker Awards.","blueskyUsername":"","company":"TNG Technology Consulting GmbH","countryName":"Germany","firstName":"Thomas","fullName":"Thomas Endres","id":50052,"imageUrl":"https://lh3.googleusercontent.com/a/AATXAJxWxubT7g3QJfDNjLG2FdVGAtl_5CZk3Jf_ukgT=s96-c","lastName":"Endres","linkedInUsername":"thomasendres","mastodonUsername":"","twitterHandle":""}],"summary":"A humorous talk on training a humanoid robot to walk and dance using reinforcement learning in simulation. It introduces RL basics, NVIDIA Isaac Sim, Unitree RL Lab, motion retargeting from video, and imitation learning, ending with a live dancing performance by the robot.","timeSlots":[],"title":"Let's dance! – Teaching your robot some moves with reinforcement learning","totalFavourites":null,"track":{"id":2758,"name":"Mind the Geek","description":"Developer candy: stuff we want to know about but dont (generally) at work, Robotics, biological computing, cybernetics, AI, new toys, tomorrows world","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-robot-arm.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"The idea stems from https://xkcd.com/2347/ and Mark Rendle’s talk at Devoxx.be 2024.<br><br>Most people are unaware of the hassles we face (or inflict upon ourselves) regarding legacy systems, technical choices, or our own organizational structures.<br><br>The goal is to have a laugh about our points of contention (Lombok? Reactive? Date formats?), our nemeses (printers, CORS), language quirks—including the fact that you can run *Doom* inside the TypeScript type system—why no one truly understands C++, wacky HTTP status codes, centering `div`s (of course), the Y2K non-event versus the real Y2K38 problem, RGB vs. CMYK, April Fools&#39; RFCs, web page and file encoding issues, consistently botched Excel integrations, business-dictated file naming conventions, the headache of IEEE 754 rounding, the &quot;ultimate&quot; email validation regex, hidden (or missing) CPU instructions, the shift toward inclusivity since 2020 (dropping &quot;master/slave&quot; terminology...), SOA, the long-awaited WASM, corporate timesheets, and—last but not least—the crucial question: *how do you exit vi?*","fieldGroup":null,"fieldGroupValues":[],"id":10031,"keywords":[{"name":"programming"},{"name":"quirks"},{"name":"humor"},{"name":"legacy"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#FF0000","description":null,"dinerInvite":true,"duration":50,"freeTickets":2,"id":951,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Conference","pause":false,"scheduleInSmallRoom":false,"slug":"conf50"},"speakers":[{"anonymizedBio":null,"bio":"A backend Java cowboy and impossible algorithms adept, proficient in Kafka, K8s, and Mongo, I specialize in &quot;IT battlefield medicine&quot; and hotfixing systems in the most unlikely places. I’ve held various roles across IT consultancies, startups, and freelance gigs, and even taught at an engineering school. I’m a huge electronic music collector and have even run a music label.<br><br>Early in my career, I worked on government contracts—which is how I ended up programming a good chunk of the embedded software for automated speed cameras. After Covid, I handled orders and logistics for Cultura, followed by a nuclear-sector project at EDF. I’m now working into occult stuff for Betclic.<br><br>I appreciate people who write specs and those who aren&#39;t afraid to pop the hood. I love trolling the corporate &quot;NPCs.&quot; I coined the phrase &quot;coding like a bear&quot; to describe being &quot;in the zone,&quot; and I make a habit of swearing at my AI assistant in English.<br>","blueskyUsername":"fabmars.bsky.social","company":"Nonstatic","countryName":"France","firstName":"Fabien","fullName":"Fabien Marsaud","id":10164,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-d8cda6a6-3355-41db-9892-3d55de893bed.jpg","lastName":"Marsaud","linkedInUsername":"fabmars","mastodonUsername":null,"twitterHandle":null}],"summary":"A humorous talk about the absurdities of software engineering: legacy systems, language quirks, bad integrations, confusing standards, and endless debates like Lombok vs. reactive, CORS, date formats, and vi. It riffs on technical pain points, from Y2K38 and IEEE 754 to WASM, Excel, and bizarre HTTP codes.","timeSlots":[],"title":"The Dark Secrets of Computer Science","totalFavourites":15,"track":{"id":2758,"name":"Mind the Geek","description":"Developer candy: stuff we want to know about but dont (generally) at work, Robotics, biological computing, cybernetics, AI, new toys, tomorrows world","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-robot-arm.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"Java developers have long relied on JNI or manually maintained native bindings to access GPU libraries such as CUDA, cuBLAS, cuFFT, and cuDNN. While these approaches unlock GPU performance, they also introduce complexity, reduce portability, and make Java applications harder to maintain.<br>This Tools in Action session introduces TornadoVM&#39;s new <strong>Hybrid API</strong>, a new programming model that allows Java developers to seamlessly combine GPU kernels written in Java with direct calls to the NVIDIA software ecosystem. Instead of switching between Java and C++, developers can write high-level Java code while transparently invoking NVIDIA&#39;s highly optimized AI and HPC libraries from the same application.<br>Through live coding demonstrations, attendees will learn how to:<br><ul><li>Write GPU kernels directly in Java.</li><li>Access CUDA runtime APIs from Java.</li><li>Invoke cuBLAS and cuFFT without writing JNI code.</li><li>Combine custom GPU kernels with vendor-optimized libraries for maximum performance.</li><li>Incrementally accelerate existing Java applications without changing their preferred JDK.</li></ul>Whether you&#39;re building AI applications, scientific simulations, financial analytics, or data-processing pipelines, this session will demonstrate how modern Java can access GPU hardware and NVIDIA libraries without sacrificing developer productivity or leaving the JVM.","fieldGroup":null,"fieldGroupValues":[],"id":19732,"keywords":[{"name":"java"},{"name":"gpu"},{"name":"nvidia"},{"name":"jni"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":30,"freeTickets":2,"id":957,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Tools-in-Action","pause":false,"scheduleInSmallRoom":false,"slug":"tia30"},"speakers":[{"anonymizedBio":null,"bio":"Dr. Athanasios Stratikopoulos (male) is a Research Fellow at the University of Manchester with specialization on heterogeneous architectures and reconfigurable accelerators. He has authored more than 20 research articles in the field of hardware acceleration, system software and programming languages. Currently his work involves heterogeneous architectures ranging from low-power devices to high-end cloud deployments. He is one of the lead developers of TornadoVM and has been part of the team for the last eight years. In addition to his core contributions to the system&#39;s technical development, Dr. Stratikopoulos leads the project&#39;s communication and dissemination efforts, helping to articulate its goals and advancements to both academic and industrial audiences through talks, documentation, and outreach activities.","blueskyUsername":"stratika.bsky.social","company":"TornadoVM","countryName":"United Kingdom","firstName":"Thanos","fullName":"Thanos Stratikopoulos","id":7649,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-1eb3708e-af15-4778-a560-15ebbea2b133.jpg","lastName":"Stratikopoulos","linkedInUsername":"stratika","mastodonUsername":"","twitterHandle":"thanos_str"},{"anonymizedBio":null,"bio":"Michalis Papadimitriou is a Senior Software Engineer at Neo4j and a Research Fellow at the University of Manchester. His core expertise includes open-source software development, hardware abstractions for high-level programming languages, compiler optimizations for GPU computing, and enabling large language model (LLM) inference on GPUs for the Java Virtual Machine (JVM).<br>He is focused on advancing high-performance AI and graph computing systems, with particular interest in GPU acceleration for machine learning workloads on the JVM through the TornadoVM framework, and continues to actively maintain the open-source GPULlama3.java project.<br>Before joining Neo4j, Michalis was a Research Fellow at the University of Manchester, where he contributed to the TornadoVM project as a Staff Software Engineer. Prior to that, he worked across a range of software stacks at Huawei Technologies and contributed to the open-source machine learning compiler Apache TVM while at OctoAI (formerly OctoML), which was later acquired by NVIDIA.","blueskyUsername":"mikepapadim.bsky.social","company":"Neo4j","countryName":"United Kingdom","firstName":"Michalis","fullName":"Michalis Papadimitriou","id":19768,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-85f7f25f-5f2c-4526-bed6-489be66ed5e1.jpg","lastName":"Papadimitriou","linkedInUsername":"michalis-papadimitriou","mastodonUsername":"","twitterHandle":"mikepapadim"},{"anonymizedBio":null,"bio":"I&#39;m a Research Associate at the University of Manchester and lead developer of TornadoVM, an open-source framework that lets Java applications run on GPUs and other accelerators without leaving the JVM. My work sits at the intersection of managed runtimes and compilers - JIT-compiling Java bytecode into GPU code, and bringing modern hardware features like tensor cores, low-precision arithmetic and quantization into reach for Java developers.","blueskyUsername":"maryxek.bsky.social","company":"University of Manchester","countryName":"UK","firstName":"Mary","fullName":"Mary Xekalaki","id":49105,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-a82d2879-53f1-4330-b9cb-64cc383a1b02.jpg","lastName":"Xekalaki","linkedInUsername":"mary-xekalaki","mastodonUsername":"","twitterHandle":"MXekalaki"}],"summary":"TornadoVM’s Hybrid API lets Java developers combine GPU kernels written in Java with direct access to NVIDIA libraries like CUDA, cuBLAS, and cuFFT—without JNI. The session shows how to build high-performance AI/HPC apps in Java while preserving portability, productivity, and incremental acceleration within the JVM.","timeSlots":[],"title":"Tap into the NVIDIA Ecosystem from Java with TornadoVM's Hybrid API","totalFavourites":1,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"<br>The welcome opening keynote for Devoxx Belgium 2026 by the founder of Devoxx giving a general update on the conference.","fieldGroup":null,"fieldGroupValues":[],"id":31451,"keywords":[{"name":"belgium"},{"name":"conference"},{"name":"devoxx"},{"name":"keynote"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"#e89c1a","description":null,"dinerInvite":true,"duration":20,"freeTickets":2,"id":955,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Keynote","pause":false,"scheduleInSmallRoom":false,"slug":"key20"},"speakers":[{"anonymizedBio":null,"bio":"With three decades of experience in the Java ecosystem and as the founder of Devoxx, one of the world&#39;s most prestigious developer conferences, Stephan brings unparalleled expertise in developer tools and workflows. His AI journey began 7+ years ago with CNNs for basketball analysis, evolving into 5 years of intensive work with GPT models. As the creator of DevoxxGenie, he&#39;s been at the forefront of AI-assisted development, building real-world applications and helping thousands of developers level up their skills.","blueskyUsername":"","company":"Devoxx","countryName":"Belgium","firstName":"Stephan","fullName":"Stephan Janssen","id":30503,"imageUrl":"https://lh3.googleusercontent.com/a/ALm5wu39iQhWBfIgxSMBGJ-tLuCnWERa6Vp5RRnnq4exBw=s96-c","lastName":"Janssen","linkedInUsername":"","mastodonUsername":"","twitterHandle":""}],"summary":null,"timeSlots":[],"title":"Welcome to Devoxx","totalFavourites":13,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}},{"afterVideoURL":null,"audienceLevel":"INTERMEDIATE","description":"At some point, we’ve all had to (re)install our entire development environment after switching machines.<br>Whether by choice or simply during on-boarding at a new company, a new mission,...<br>We’ve also all spent far to many hours figuring out which tools to install just to submit a PR or MR to an open source project.<br><br>And in many other situations, we quickly find ourselves facing the nightmare of configuring tools and frameworks when all we really want to do is what we love: coding.<br>And let’s not even get started on version updates and inter-dependencies 😅...<br><br>Fortunately, there is a solution to all these problems: dev containers.<br><br>During this tools-in-action session, I invite you to explore them with me.<br>The only thing I allow myself to install on my machine: Docker!<br>Everything else will be handled through configuration so that tools, frameworks, version management, and dependencies become a non-event in your development workflow.<br><br>You’ll leave knowing how to use dev containers and how to build your entire development stack as code.<br>","fieldGroup":null,"fieldGroupValues":[],"id":5051,"keywords":[{"name":"dependencies"},{"name":"devcontainers"},{"name":"configuration"},{"name":"docker"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":"","description":null,"dinerInvite":true,"duration":30,"freeTickets":2,"id":957,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":1,"name":"Tools-in-Action","pause":false,"scheduleInSmallRoom":false,"slug":"tia30"},"speakers":[{"anonymizedBio":null,"bio":"During more than 20 years in the software development profession, I was able to confront myself with many different technologies. And it is this diversity that makes me continue to love our job so much.<br>For 5 years now, I have had the chance to evolve within OVHcloud as a developer advocate. This position allows me to discover new technologies or disciplines such as Artificial Intelligence or &quot;native cloud&quot; for example.<br>But my heart of old Java developer can not move too far from this technology which is the common thread of my many years as a developer. It is with humility that I share this experience but also the novelties of our ecosystem through my conferences and the TADx meetup co-created in Tours.","blueskyUsername":"wilda.bsky.social","company":"OVHcloud","countryName":"France","firstName":"Stéphane","fullName":"Stéphane Philippart","id":3925,"imageUrl":"https://devoxxian-image-thumbnails.s3-eu-west-1.amazonaws.com/profile-9d422934-263f-49b6-a07c-fbc56af630a9.jpg","lastName":"Philippart","linkedInUsername":"philippartstephane","mastodonUsername":null,"twitterHandle":"wildagsx"}],"summary":"Dev containers simplify development setup by codifying tools, frameworks, versions, and dependencies in configuration. With only Docker installed locally, developers can quickly recreate environments, avoid manual setup hassles, and manage updates consistently. This session shows how to use dev containers to build an entire development stack as code.","timeSlots":[],"title":"🧰 Dev Containers: the ultimate toolbox for developers?","totalFavourites":23,"track":{"id":2758,"name":"Mind the Geek","description":"Developer candy: stuff we want to know about but dont (generally) at work, Robotics, biological computing, cybernetics, AI, new toys, tomorrows world","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-robot-arm.png"}},{"afterVideoURL":null,"audienceLevel":"BEGINNER","description":"With Java, data can be loaded easily from different sources and displayed in a web UI with little effort. However, as soon as users need to search for specific records, applications often rely on complex filter forms. Modern LLMs offer an alternative: they can extract filter criteria from natural language and turn them into suitable database queries.<br><br>Using an example project built with Spring AI and Vaadin, we compare three possible approaches. With Function Calling, the model invokes tool functions in the application code and passes the required parameters. This is easy to understand, but in a simple implementation it quickly reaches its limits when handling complex requests involving negations, operators, or multiple values. Structured Output, on the other hand, directly creates a custom filter object and can represent more complex requests in a compact form. A hybrid approach combines both concepts by using a tool call whose parameters themselves contain a structured filter definition.<br><br>All approaches are tested with the same queries against local Ollama models. We compare which approach is more reliable, faster, and more cost-efficient, and examine where each of them reaches its limits.","fieldGroup":null,"fieldGroupValues":[],"id":50106,"keywords":[{"name":"java"},{"name":"llm"},{"name":"structuredoutput"},{"name":"filtering"}],"language":null,"podcastURL":null,"sessionType":{"countInQuota":true,"cssColor":null,"description":null,"dinerInvite":true,"duration":40,"freeTickets":1,"id":5151,"invitationOnly":false,"maxSpeakers":null,"minSpeakers":null,"name":"Lunch Talk","pause":false,"scheduleInSmallRoom":false,"slug":"lunch-talk"},"speakers":[{"anonymizedBio":null,"bio":"Sebastian has been a Java junkie for over two decades and fell in love with Vaadin during his university days. Since 2016, he has worked in various technical roles at Vaadin, helping customers build tailor-made web applications and leading workshops and training sessions. In 2024, he transitioned to looking after the community full-time, traveling from event to event as a speaker to share his knowledge and passion for Vaadin. When he’s not at a conference or experimenting with AI, he’s always up for a tech talk and a good cup of coffee.","blueskyUsername":"","company":"Vaadin","countryName":"Germany","firstName":"Sebastian","fullName":"Sebastian Kühnau","id":19764,"imageUrl":"https://lh3.googleusercontent.com/a/ACg8ocKJ7pHA4yXXBTPT1sa3oGVZ-ONpi-AtRLBtJIKuxKb5_sQOwm0=s96-c","lastName":"Kühnau","linkedInUsername":"sebastian-kuehnau","mastodonUsername":"","twitterHandle":""}],"summary":"The project compares three LLM approaches for natural-language database filtering in a Java Spring AI/Vaadin app: function calling, structured output, and a hybrid method. Tested with local Ollama models, it evaluates reliability, speed, cost, and limitations for handling complex filter requests.","timeSlots":[],"title":"From User Prompt to JPA Query: Comparing Tool Calling, Structured Output & Hybrid Approach","totalFavourites":null,"track":{"id":1251,"name":"Agentic Engineering & Tooling","description":"Multi-agent systems, tool-use, evals, and shipping AI beyond the demo.","imageURL":"https://s3.eu-west-1.amazonaws.com/devoxx.be/devoxxbe26-tracks/icon-skull-1.png"}}]