JRush Episode 4: Q&A Session

Transcript:

Q&A Session Introduction

I would prefer to call this a panel discussion rather than a simple Q&A session. We likely have a number of questions from our audience, which I would like to voice to our speakers now. Additionally, I have a "secret" question for every speaker at this panel, which, of course, is about Java.


Question for Dmitry: ARM Servers Availability

Dmitry, you mentioned that ARM servers are available in the cloud at AWS. Do we know of any other cloud providers or manufacturers offering ARM servers where they can be accessed or purchased?

  • Dmitry: Yes, I mentioned that at the end of the talk. You can rent servers built on Hunter Ultra in Oracle Cloud or Azure, or you can buy physical servers from multiple vendors based on Ultra. Graviton servers, however, are available only on AWS EC2. There are other providers as well, such as Alibaba Cloud.
  • Host: Interesting! I found that instances on ARM servers like AWS Gravitons are really cheaper than Intel ones, so it’s definitely worth checking.

Question for Mary: Streaming Technologies

Mary, we know of several different streaming technologies like Apache Spark, Apache Flink, and Apache Pulsar. Could you briefly explain the differences between them?

  • Mary: Sure! Apache Pulsar is more of an event-streaming broker, ideal for message ingestion. Apache Spark is more suited for batch processing of streaming data, often used in machine learning and AI applications. Apache Flink allows both ingestion and event-streaming processing, making it great for complex SQL-based data operations. Together, they form a strong combination, leveraging their individual strengths.
  • Host: That’s great. Can this technology help with fraud detection?
  • Mary: Yes, definitely. For instance, Apache Pulsar can monitor data in real time to detect unusual activities in financial systems, helping prevent fraud. Event streaming software can be highly effective for such purposes.


Technical Question: Garbage Collection in Pulsar

There’s a concern about garbage collection causing "stop-the-world" events in Pulsar. How does it handle this issue?

  • Mary: That’s a great question. Currently, I don’t have the exact answer but can look it up. However, Pulsar’s federated architecture, which uses multiple nodes, minimizes the likelihood of stop-the-world pauses affecting the entire system.

Question for Dr Mo: Kubernetes in Production

Dr Mo, could you share your experience using Kubernetes or OpenShift in production?

  • Dr Mo: Sure. At Discover, we use OpenShift, which builds on Kubernetes with added features for developers and operation engineers. OpenShift simplifies deployment, scalability, and management through an intuitive console and CI/CD integration.
  • Host: Is transferring solutions across cloud providers easy with OpenShift?
  • Dr Mo: Yes, with tools like Red Hat’s Advanced Cluster Management, you can manage applications across clouds easily. It’s more seamless with OpenShift compared to vanilla Kubernetes, though complex applications might require additional work.

Final Question: Java’s Longevity

Java recently celebrated its 28th anniversary. What do you think makes Java so popular after all these years?

  • Mary: The vibrant community and robust technology keep Java alive. The Java Community Process (JCP) and the absence of major internal disputes make it unique. Java’s reliability in production also speaks volumes.
  • Dr Mo: Java simplifies development by abstracting complexities like memory management. Its active development, backward compatibility, and community support make it indispensable in industries like finance.
  • Dmitry: Java’s strict backward compatibility and a strong ecosystem have fostered trust and continuous development over decades.

Summary

At the end of JRush Episode 4 “Modern Java development for Banking and FinTech”, we had a very fruitful discussion with our speakers, Dr Mo Haghighi, Mary Grygleski, and Dmitry Chuyko, who answered the questions from the audience, such as Where can we get access to Arm servers? Can Apache Pulsar be used for fraud detection in banking? How to use Kubernetes in production? And more!

About Dmitry

Dmitry Chuyko is a Senior Performance Architect at BellSoft, an OpenJDK committer, and a public speaker. Prior to joining BellSoft, Dmitry worked on the Hotspot JVM at Oracle, and before that he had many years of programming experience in Java. He is currently focused on optimizing HotSpot for x86 and ARM, previously being involved in rolling out JEP 386, which enables the creation of the smallest JDK containers.

Social Media

Videos
card image
Dec 12, 2025
Will AI Replace Developers? A Vibe Coding Reality Check 2025

Can AI replace software engineers? ChatGPT, Copilot, and LLM-powered vibe coding tools promise to automate development—but after testing them against 17 years of production experience, the answer is more nuanced than the hype suggests. Full project generation produces over-engineered code that's hard to refactor. AI assistants excel at boilerplate but fail at business logic. MCP servers solve hallucination problems but create context overload. Meanwhile, DevOps automation actually works. This breakdown separates AI capabilities from marketing promises—essential for teams integrating LLMs and copilots without compromising code quality or architectural decisions.

Videos
card image
Dec 12, 2025
JRush | Container Essentials: Fast Builds, Secure Images, Zero Vulnerabilities

Web-conference for Java developers focused on hands-on strategies for building high-performance containers, eliminating CVEs, and detecting security issues before production.

Further watching

Videos
card image
Dec 30, 2025
Java in 2025: LTS Release, AI on JVM, Framework Modernization

Java in 2025 isn't about headline features, it's about how production systems changed under the hood. While release notes focus on individual JEPs, the real story is how the platform, frameworks, and tooling evolved to improve stability, performance, and long-term maintainability. In this video, we look at Java from a production perspective. What does Java 25 LTS mean for teams planning to upgrade? How are memory efficiency, startup time, and observability getting better? Why do changes like Scoped Values and AOT optimizations matter beyond benchmarks? We also cover the broader ecosystem: Spring Boot 4 and Framework 7, AI on the JVM with Spring AI and LangChain4j, Kotlin's growing role in backend systems, and tooling updates that make upgrades easier. Finally, we touch on container hardening and why runtime and supply-chain decisions matter just as much as language features.

Videos
card image
Dec 24, 2025
I Solved Advent of Code 2025 in Kotlin: Here's How It Went

Every year, Advent of Code spawns thousands of solutions — but few engineers step back to see the bigger picture. This is a complete walkthrough of all 12 days from 2025, focused on engineering patterns rather than puzzle statements. We cover scalable techniques: interval math without brute force, dynamic programming, graph algorithms (JGraphT), geometry with Java AWT Polygon, and optimization problems that need constraint solvers like ojAlgo. You'll see how Java and Kotlin handle real constraints, how visualizations validate assumptions, and when to reach for libraries instead of writing everything from scratch. If you love puzzles, programming—or both—and maybe want to learn how to solve them on the JVM, this is for you.

Videos
card image
Dec 18, 2025
Java 26 Preview: New JEPs and What They Mean for You

Java 26 is the next feature release that brings features for enhanced performance, security, and developer experience. This video discusses the upcoming JDK 26 release, highlighting ten JEPs including JEP 500. JEP 500 focuses on preparing developers for future restrictions on mutating final fields in Java, emphasizing their role in maintaining immutable state. This is crucial for robust programming and understanding the nuances of mutable vs immutable data, especially concerning an immutable class in java. We also touch upon the broader implications for functional programming in Java.