<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Stories by Egor Voronianskii on Medium]]></title>
        <description><![CDATA[Stories by Egor Voronianskii on Medium]]></description>
        <link>https://medium.com/@vrnsky?source=rss-9b9a31b28e0d------2</link>
        <image>
            <url>https://cdn-images-1.medium.com/fit/c/150/150/1*pbcOJZVjRVv8AOlUILVcFw.jpeg</url>
            <title>Stories by Egor Voronianskii on Medium</title>
            <link>https://medium.com/@vrnsky?source=rss-9b9a31b28e0d------2</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Sun, 19 Jul 2026 16:26:43 GMT</lastBuildDate>
        <atom:link href="https://medium.com/@vrnsky/feed" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com" rel="hub"/>
        <item>
            <title><![CDATA[Getting started with Kestra — Modern engine for business automation]]></title>
            <description><![CDATA[<div class="medium-feed-item"><p class="medium-feed-image"><a href="https://vrnsky.medium.com/getting-started-with-kestra-modern-engine-for-business-automation-ba4afda790ec?source=rss-9b9a31b28e0d------2"><img src="https://cdn-images-1.medium.com/max/1635/1*_HvkjeAKJdYb0CIHmxdZaQ.png" width="1635"></a></p><p class="medium-feed-snippet">In this article, I&#x2019;ll share my experience with Kestra. It&#x2019;s a modern workflow orchestration platform that&#x2019;s become popular among&#x2026;</p><p class="medium-feed-link"><a href="https://vrnsky.medium.com/getting-started-with-kestra-modern-engine-for-business-automation-ba4afda790ec?source=rss-9b9a31b28e0d------2">Continue reading on Medium »</a></p></div>]]></description>
            <link>https://vrnsky.medium.com/getting-started-with-kestra-modern-engine-for-business-automation-ba4afda790ec?source=rss-9b9a31b28e0d------2</link>
            <guid isPermaLink="false">https://medium.com/p/ba4afda790ec</guid>
            <category><![CDATA[bpmn]]></category>
            <category><![CDATA[python]]></category>
            <category><![CDATA[automation]]></category>
            <category><![CDATA[kestra]]></category>
            <dc:creator><![CDATA[Egor Voronianskii]]></dc:creator>
            <pubDate>Thu, 26 Jun 2025 16:34:45 GMT</pubDate>
            <atom:updated>2025-06-26T16:34:45.991Z</atom:updated>
        </item>
        <item>
            <title><![CDATA[Event sourcing with Spring Boot, Kafka and jOOQ]]></title>
            <description><![CDATA[<div class="medium-feed-item"><p class="medium-feed-image"><a href="https://vrnsky.medium.com/event-sourcing-with-spring-boot-kafka-and-jooq-5901455c3f32?source=rss-9b9a31b28e0d------2"><img src="https://cdn-images-1.medium.com/max/1456/1*qU-h28p_spH8F2v0Bpu4EA.png" width="1456"></a></p><p class="medium-feed-snippet">Event-Driven Architecture in Practice: Implementing event sourcing with Spring Boot and Kafka</p><p class="medium-feed-link"><a href="https://vrnsky.medium.com/event-sourcing-with-spring-boot-kafka-and-jooq-5901455c3f32?source=rss-9b9a31b28e0d------2">Continue reading on Medium »</a></p></div>]]></description>
            <link>https://vrnsky.medium.com/event-sourcing-with-spring-boot-kafka-and-jooq-5901455c3f32?source=rss-9b9a31b28e0d------2</link>
            <guid isPermaLink="false">https://medium.com/p/5901455c3f32</guid>
            <category><![CDATA[spring-boot]]></category>
            <category><![CDATA[java]]></category>
            <category><![CDATA[event-sourcing]]></category>
            <category><![CDATA[kafka]]></category>
            <dc:creator><![CDATA[Egor Voronianskii]]></dc:creator>
            <pubDate>Sat, 05 Apr 2025 09:17:42 GMT</pubDate>
            <atom:updated>2025-04-05T09:17:42.916Z</atom:updated>
        </item>
        <item>
            <title><![CDATA[Spring Boot’s Banner: Beyond ASCII art]]></title>
            <description><![CDATA[<div class="medium-feed-item"><p class="medium-feed-image"><a href="https://vrnsky.medium.com/spring-boots-banner-beyond-ascii-art-3c6027dd30f5?source=rss-9b9a31b28e0d------2"><img src="https://cdn-images-1.medium.com/max/651/1*KZByMqd6k_QByrbrQmCO1w.png" width="651"></a></p><p class="medium-feed-snippet">If you&#x2019;re working with Spring Boot you may see banner once your app is starting. The banner is not only decoration, but can serve as&#x2026;</p><p class="medium-feed-link"><a href="https://vrnsky.medium.com/spring-boots-banner-beyond-ascii-art-3c6027dd30f5?source=rss-9b9a31b28e0d------2">Continue reading on Medium »</a></p></div>]]></description>
            <link>https://vrnsky.medium.com/spring-boots-banner-beyond-ascii-art-3c6027dd30f5?source=rss-9b9a31b28e0d------2</link>
            <guid isPermaLink="false">https://medium.com/p/3c6027dd30f5</guid>
            <category><![CDATA[spring-boot]]></category>
            <category><![CDATA[ascii]]></category>
            <category><![CDATA[java]]></category>
            <dc:creator><![CDATA[Egor Voronianskii]]></dc:creator>
            <pubDate>Tue, 01 Apr 2025 15:21:38 GMT</pubDate>
            <atom:updated>2025-04-01T15:21:38.952Z</atom:updated>
        </item>
        <item>
            <title><![CDATA[Maven plugin development — from basic to advanced]]></title>
            <description><![CDATA[<div class="medium-feed-item"><p class="medium-feed-image"><a href="https://vrnsky.medium.com/maven-plugin-development-from-basic-to-advanced-9b666dc55211?source=rss-9b9a31b28e0d------2"><img src="https://cdn-images-1.medium.com/max/1024/1*dcMgEB_VUAzKAgnwPGv1cQ.png" width="1024"></a></p><p class="medium-feed-snippet">Introduction</p><p class="medium-feed-link"><a href="https://vrnsky.medium.com/maven-plugin-development-from-basic-to-advanced-9b666dc55211?source=rss-9b9a31b28e0d------2">Continue reading on Medium »</a></p></div>]]></description>
            <link>https://vrnsky.medium.com/maven-plugin-development-from-basic-to-advanced-9b666dc55211?source=rss-9b9a31b28e0d------2</link>
            <guid isPermaLink="false">https://medium.com/p/9b666dc55211</guid>
            <category><![CDATA[maven-plugin]]></category>
            <category><![CDATA[maven]]></category>
            <category><![CDATA[software-development]]></category>
            <category><![CDATA[java]]></category>
            <dc:creator><![CDATA[Egor Voronianskii]]></dc:creator>
            <pubDate>Thu, 27 Mar 2025 11:50:20 GMT</pubDate>
            <atom:updated>2025-03-27T11:50:20.095Z</atom:updated>
        </item>
        <item>
            <title><![CDATA[Structured Logging in Spring Boot 3.4: A Quick implementation guide]]></title>
            <description><![CDATA[<div class="medium-feed-item"><p class="medium-feed-snippet">Spring Boot 3.4 adds native support for structured logging. This makes it easier to create machine&#x200A;&#x2014;&#x200A;readable logs that work well with log&#x2026;</p><p class="medium-feed-link"><a href="https://vrnsky.medium.com/structured-logging-in-spring-boot-3-4-a-quick-implementation-guide-fb81aaac1060?source=rss-9b9a31b28e0d------2">Continue reading on Medium »</a></p></div>]]></description>
            <link>https://vrnsky.medium.com/structured-logging-in-spring-boot-3-4-a-quick-implementation-guide-fb81aaac1060?source=rss-9b9a31b28e0d------2</link>
            <guid isPermaLink="false">https://medium.com/p/fb81aaac1060</guid>
            <category><![CDATA[spring-boot-3]]></category>
            <category><![CDATA[logging]]></category>
            <category><![CDATA[monitoring]]></category>
            <dc:creator><![CDATA[Egor Voronianskii]]></dc:creator>
            <pubDate>Sun, 23 Mar 2025 13:23:28 GMT</pubDate>
            <atom:updated>2025-03-23T13:23:28.241Z</atom:updated>
        </item>
        <item>
            <title><![CDATA[Understanding Java Memory Model and Thread Safety]]></title>
            <description><![CDATA[<div class="medium-feed-item"><p class="medium-feed-image"><a href="https://vrnsky.medium.com/understanding-java-memory-model-and-thread-safety-f7eed4c08509?source=rss-9b9a31b28e0d------2"><img src="https://cdn-images-1.medium.com/max/1024/1*qH7QGOYmcHuzcSlJ8FSkvg.png" width="1024"></a></p><p class="medium-feed-snippet">A practical exploration of memory visibility, atomicity, and concurrency in multi-threaded Java applications.</p><p class="medium-feed-link"><a href="https://vrnsky.medium.com/understanding-java-memory-model-and-thread-safety-f7eed4c08509?source=rss-9b9a31b28e0d------2">Continue reading on Medium »</a></p></div>]]></description>
            <link>https://vrnsky.medium.com/understanding-java-memory-model-and-thread-safety-f7eed4c08509?source=rss-9b9a31b28e0d------2</link>
            <guid isPermaLink="false">https://medium.com/p/f7eed4c08509</guid>
            <category><![CDATA[threading-in-java]]></category>
            <category><![CDATA[java-memory-model]]></category>
            <category><![CDATA[java]]></category>
            <category><![CDATA[jvm]]></category>
            <dc:creator><![CDATA[Egor Voronianskii]]></dc:creator>
            <pubDate>Thu, 20 Mar 2025 15:14:43 GMT</pubDate>
            <atom:updated>2025-03-20T15:14:43.403Z</atom:updated>
        </item>
        <item>
            <title><![CDATA[Demysifying Java ClassLoaders: A Deep dive into the JVM’s loading mechanism]]></title>
            <description><![CDATA[<div class="medium-feed-item"><p class="medium-feed-image"><a href="https://vrnsky.medium.com/demysifying-java-classloaders-a-deep-dive-into-the-jvms-loading-mechanism-94883de8819d?source=rss-9b9a31b28e0d------2"><img src="https://cdn-images-1.medium.com/max/1024/1*dfDnbiOZLeeGs8AZOJca6g.png" width="1024"></a></p><p class="medium-feed-snippet">From basic concepts to advanced techniques for Java Developers</p><p class="medium-feed-link"><a href="https://vrnsky.medium.com/demysifying-java-classloaders-a-deep-dive-into-the-jvms-loading-mechanism-94883de8819d?source=rss-9b9a31b28e0d------2">Continue reading on Medium »</a></p></div>]]></description>
            <link>https://vrnsky.medium.com/demysifying-java-classloaders-a-deep-dive-into-the-jvms-loading-mechanism-94883de8819d?source=rss-9b9a31b28e0d------2</link>
            <guid isPermaLink="false">https://medium.com/p/94883de8819d</guid>
            <category><![CDATA[development]]></category>
            <category><![CDATA[maven]]></category>
            <category><![CDATA[java]]></category>
            <category><![CDATA[class-loader]]></category>
            <dc:creator><![CDATA[Egor Voronianskii]]></dc:creator>
            <pubDate>Thu, 13 Mar 2025 15:08:10 GMT</pubDate>
            <atom:updated>2025-03-13T15:08:10.784Z</atom:updated>
        </item>
        <item>
            <title><![CDATA[Spring AOP Under the Hood: How proxies work]]></title>
            <description><![CDATA[<div class="medium-feed-item"><p class="medium-feed-image"><a href="https://vrnsky.medium.com/spring-aop-under-the-hood-how-proxies-work-9499fec7f0a2?source=rss-9b9a31b28e0d------2"><img src="https://cdn-images-1.medium.com/max/1024/1*bqtmv3Gymr1EVKU2Eq1fDA.png" width="1024"></a></p><p class="medium-feed-snippet">Unlocking the magic behind Spring&#x2019;s cross-cutting concerns&#x200A;&#x2014;&#x200A;how proxy patterns seamlessly weave behavior into your Java applications.</p><p class="medium-feed-link"><a href="https://vrnsky.medium.com/spring-aop-under-the-hood-how-proxies-work-9499fec7f0a2?source=rss-9b9a31b28e0d------2">Continue reading on Medium »</a></p></div>]]></description>
            <link>https://vrnsky.medium.com/spring-aop-under-the-hood-how-proxies-work-9499fec7f0a2?source=rss-9b9a31b28e0d------2</link>
            <guid isPermaLink="false">https://medium.com/p/9499fec7f0a2</guid>
            <category><![CDATA[spring-boot]]></category>
            <category><![CDATA[aop]]></category>
            <category><![CDATA[maven]]></category>
            <category><![CDATA[java]]></category>
            <category><![CDATA[aspect]]></category>
            <dc:creator><![CDATA[Egor Voronianskii]]></dc:creator>
            <pubDate>Thu, 06 Mar 2025 15:18:30 GMT</pubDate>
            <atom:updated>2025-03-06T15:18:30.051Z</atom:updated>
        </item>
        <item>
            <title><![CDATA[Understanding Spring Bean Lifecycle]]></title>
            <description><![CDATA[<div class="medium-feed-item"><p class="medium-feed-image"><a href="https://vrnsky.medium.com/understanding-spring-bean-lifecycle-ee0781ab7368?source=rss-9b9a31b28e0d------2"><img src="https://cdn-images-1.medium.com/max/1024/1*b8za-uDA0944F3naiGA1vA.png" width="1024"></a></p><p class="medium-feed-snippet">Master the Creation, Initialization, and Destruction Phases in Spring to Build Robust Java Applications</p><p class="medium-feed-link"><a href="https://vrnsky.medium.com/understanding-spring-bean-lifecycle-ee0781ab7368?source=rss-9b9a31b28e0d------2">Continue reading on Medium »</a></p></div>]]></description>
            <link>https://vrnsky.medium.com/understanding-spring-bean-lifecycle-ee0781ab7368?source=rss-9b9a31b28e0d------2</link>
            <guid isPermaLink="false">https://medium.com/p/ee0781ab7368</guid>
            <category><![CDATA[spring-boot]]></category>
            <category><![CDATA[spring]]></category>
            <category><![CDATA[java]]></category>
            <category><![CDATA[maven]]></category>
            <dc:creator><![CDATA[Egor Voronianskii]]></dc:creator>
            <pubDate>Fri, 28 Feb 2025 14:56:43 GMT</pubDate>
            <atom:updated>2025-02-28T14:57:00.847Z</atom:updated>
        </item>
        <item>
            <title><![CDATA[Building a custom Spring Boot Starter: From theory to practice]]></title>
            <description><![CDATA[<div class="medium-feed-item"><p class="medium-feed-image"><a href="https://vrnsky.medium.com/building-a-custom-spring-boot-starter-from-theory-to-practice-f8639d893ac3?source=rss-9b9a31b28e0d------2"><img src="https://cdn-images-1.medium.com/max/1024/1*1DKRwkcyitN5JjH2Ryi4Iw.png" width="1024"></a></p><p class="medium-feed-snippet">A Comprehensive guide to creating reusable functionality in Spring Boot 3 applications</p><p class="medium-feed-link"><a href="https://vrnsky.medium.com/building-a-custom-spring-boot-starter-from-theory-to-practice-f8639d893ac3?source=rss-9b9a31b28e0d------2">Continue reading on Medium »</a></p></div>]]></description>
            <link>https://vrnsky.medium.com/building-a-custom-spring-boot-starter-from-theory-to-practice-f8639d893ac3?source=rss-9b9a31b28e0d------2</link>
            <guid isPermaLink="false">https://medium.com/p/f8639d893ac3</guid>
            <category><![CDATA[maven]]></category>
            <category><![CDATA[spring-boot]]></category>
            <category><![CDATA[spring-boot-starter]]></category>
            <category><![CDATA[java]]></category>
            <dc:creator><![CDATA[Egor Voronianskii]]></dc:creator>
            <pubDate>Wed, 26 Feb 2025 11:43:11 GMT</pubDate>
            <atom:updated>2025-02-26T11:43:11.167Z</atom:updated>
        </item>
    </channel>
</rss>