Speaker

Pasha Finkelshteyn

Pasha Finkelshteyn

Developer Advocate

Berlin, Germany

Actions

Years of experience in software engineering and the team'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.

Area of Expertise

  • Information & Communications Technology

Topics

  • Kotlin
  • data engineering
  • java
  • Spring
  • Apache Spark
  • Backend
  • bellsoft
  • Cloud Native Java
  • Alpaquita
  • Docker
  • Git
  • Linux
  • Databases
  • Big Data
  • GitHub
  • Data Warehousing
  • All things data

From ChatGPT User to RAG Implementer: A Developer's Journey

For ages, I was just another ChatGPT user—searching, brainstorming, you know the drill. But then Spring AI dropped, and a light bulb went off: What if I indexed all our documentation and blog posts to build a bot that could actually answer users' questions about our products? Turns out, there's a name for this magic trick—Retrieval-Augmented Generation (RAG).

Come along for a wild ride as we break the RAG concept down bit by bit. We'll demystify embeddings, figure out how to generate and store them, and learn how to stash all that juicy info in a database for quick access. And of course, the grand finale: creating a bot that knows our docs inside and out. Join me and let’s turn Spring AI into your next powerhouse for knowledge base!

The Epic Battle of Kotlin and C#

It is hard to find an enterprise language as modern and powerful as Kotlin. It is hard to find an innovative enterprise language such as C#. In this epic battle, you, the attendee, will help us to understand which language we should pick for a new project (yes, we believe you will be impartial). And we will try to provide you with facts and points for your judgment. As unbiased as we can.

Platform, language features, ecosystems — we have them all covered! Come to our session, and you will become our judge. You will be presented with a series of topics with solutions in both languages, and you will vote for a winner in each category. Perhaps you can make a choice for your own future?

Himalayan Peaks of Testing Data Pipelines

Everybody knows how to test backend applications: usually, it's just unit tests and API calls. Things are a bit more complex when interfaces are involved. But here is the question: how to test data pipelines? There is so much data, and the pipelines are so slow!

Let's discuss!

Breaking Boundaries with Advanced Kotlin Testing Techniques

In this session, you'll learn the ins and outs of testing in Kotlin. I'll start with the basics, covering the current widespread problems of tests. But don't worry; I won't bore you with endless slides full of code snippets. Instead, it will mostly be a live coding session with real-life examples.
I'll also explore advanced testing techniques, such as property testing and organizing your tests into a hierarchical structure, and show you how to put them into practice. We will use Kotest, MockK, Atrium and more! Whether you're a seasoned tester, developer, or newcomer to the testing field, you'll come away from this talk with a better understanding of testing with Kotlin and, hopefully, a smile.

Advanced Kotlin Techniques for Spring Developers

As a seasoned developer, you're likely already familiar with Spring. But Kotlin can take your developer experience with Spring to the next level!
Join this session and learn how to:
- Add new functionality to existing classes with Kotlin extension functions.
- Use Kotlin bean definition DSL.
- How ot use varags to improve on 3rd party libraries
- How to use coroutines with Spring idiomatically
By the end of this talk, you'll have a deeper understanding of the advanced Kotlin techniques that are available to you as a Spring developer and be able to use them effectively in your projects.

Crafting the Ultimate Docker Image for Spring Applications

Docker is the cornerstone of today's development! Let's overview quickly how we use it in JVM development, and then transition to practical examples. We will start with a simple Docker image containing a popular "one fat JAR" and look into its downsides (deployment speed, traffic volume). To address them, we will discuss the strategy of splitting the JAR into multiple layers and using multistage Dockerfiles, gradually improving our image. Join me to learn how to build the ultimate Docker image for Spring applications.

CRaCing Java Snapshots

Imagine your Java application starting up in just 5 milliseconds. Sounds incredible, right? Almost too good to be true? And no, this isn’t about native images. There's an innovative solution called Coordinated Restore at Checkpoint (CRaC).

Initially, this concept emerged from the Linux CRIU project: Checkpoint/Restore In Userspace. However, CRIU doesn't always deliver reliable results. That’s where CRaC comes in, offering a JVM-specific implementation.

In this talk, we’ll look into the complexities of CRIU and after that, we will turn to CRaC. We will discuss how CRaC operates within the Java ecosystem, its integration with Spring, and how you can use it in your own applications for near-instant startup times.

From this talk you will learn what is possible to CRaC and what is not, what are the benefits and limitations, and what is the cost of CRaC-ing.

JavaCro'24 Sessionize Event Upcoming

October 2024 Rovinj, Croatia

Java Forum Nord 2024 Sessionize Event Upcoming

September 2024 Hannover, Germany

Spring I/O 2024 Sessionize Event

May 2024 Barcelona, Spain

Pasha Finkelshteyn

Developer Advocate

Berlin, Germany

Actions

Please note that Sessionize is not responsible for the accuracy or validity of the data provided by speakers. If you suspect this profile to be fake or spam, please let us know.

Jump to top