<?xml version="1.0" encoding="UTF-8"?>
<!-- This sitemap was dynamically generated on April 3, 2026 at 23:18 by All in One SEO v4.9.5.1 - the original SEO plugin for WordPress. -->

<?xml-stylesheet type="text/xsl" href="https://okyrylchuk.dev/default-sitemap.xsl"?>

<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>Oleg Kyrylchuk</title>
		<link><![CDATA[https://okyrylchuk.dev]]></link>
		<description><![CDATA[Oleg Kyrylchuk]]></description>
		<lastBuildDate><![CDATA[Tue, 05 Nov 2024 21:04:17 +0000]]></lastBuildDate>
		<docs>https://validator.w3.org/feed/docs/rss2.html</docs>
		<atom:link href="https://okyrylchuk.dev/sitemap.rss" rel="self" type="application/rss+xml" />
		<ttl><![CDATA[60]]></ttl>

		<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/when-to-use-frozen-collections-in-dotnet/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/when-to-use-frozen-collections-in-dotnet/]]></link>
			<title>When to Use Frozen Collections in .NET</title>
			<pubDate><![CDATA[Tue, 05 Nov 2024 21:04:17 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/]]></link>
			<title>Home</title>
			<pubDate><![CDATA[Mon, 26 Aug 2024 18:58:56 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/sponsorship/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/sponsorship/]]></link>
			<title>Sponsorship</title>
			<pubDate><![CDATA[Sun, 26 Oct 2025 10:44:10 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/records-in-csharp/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/records-in-csharp/]]></link>
			<title>Records in C#</title>
			<pubDate><![CDATA[Sun, 13 Apr 2025 15:26:02 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/getting-started-with-health-checks-in-asp-net-core/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/getting-started-with-health-checks-in-asp-net-core/]]></link>
			<title>Getting started with Health Checks in ASP.NET Core</title>
			<pubDate><![CDATA[Mon, 10 Feb 2025 22:01:21 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/efficient-bulk-updates-in-entity-framework/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/efficient-bulk-updates-in-entity-framework/]]></link>
			<title>Efficient Bulk Updates in Entity Framework</title>
			<pubDate><![CDATA[Fri, 18 Apr 2025 17:42:56 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/how-to-use-httpclient-properly-in-dotnet/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/how-to-use-httpclient-properly-in-dotnet/]]></link>
			<title>How to Use HttpClient Properly in .NET</title>
			<pubDate><![CDATA[Tue, 25 Mar 2025 21:23:40 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/boost-your-dotnet-development-with-refit/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/boost-your-dotnet-development-with-refit/]]></link>
			<title>Boost Your .NET Development with Refit</title>
			<pubDate><![CDATA[Tue, 25 Mar 2025 21:13:47 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/unlocking-the-delegates-potential-in-csharp/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/unlocking-the-delegates-potential-in-csharp/]]></link>
			<title>Unlocking the Delegate&#8217;s Potential in C#</title>
			<pubDate><![CDATA[Tue, 18 Feb 2025 22:04:40 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/getting-started-with-azure-service-bus-emulator/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/getting-started-with-azure-service-bus-emulator/]]></link>
			<title>Getting Started with Azure Service Bus Emulator</title>
			<pubDate><![CDATA[Tue, 01 Apr 2025 20:57:18 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/understanding-struct-vs-ref-struct-in-csharp/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/understanding-struct-vs-ref-struct-in-csharp/]]></link>
			<title>Understanding struct vs ref struct in C#</title>
			<pubDate><![CDATA[Thu, 13 Mar 2025 19:33:49 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/efficient-synchronization-in-csharp-with-semaphoreslim/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/efficient-synchronization-in-csharp-with-semaphoreslim/]]></link>
			<title>Efficient Synchronization in C# with SemaphoreSlim</title>
			<pubDate><![CDATA[Thu, 13 Mar 2025 19:33:38 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/guid-version7-in-dotnet-9/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/guid-version7-in-dotnet-9/]]></link>
			<title>Guid Version 7 in .NET 9</title>
			<pubDate><![CDATA[Thu, 13 Mar 2025 19:33:23 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/single-vs-split-query-in-entity-framework/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/single-vs-split-query-in-entity-framework/]]></link>
			<title>Single vs. Split Query in Entity Framework</title>
			<pubDate><![CDATA[Mon, 24 Feb 2025 21:40:58 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/the-builder-pattern-in-csharp-create-objects-step-by-step/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/the-builder-pattern-in-csharp-create-objects-step-by-step/]]></link>
			<title>The Builder Pattern in C#: Create Objects Step by Step</title>
			<pubDate><![CDATA[Fri, 21 Feb 2025 15:50:00 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/how-to-avoid-common-ef-core-performance-pitfalls/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/how-to-avoid-common-ef-core-performance-pitfalls/]]></link>
			<title>How to Avoid Common EF Core Performance Pitfalls</title>
			<pubDate><![CDATA[Fri, 18 Apr 2025 17:38:13 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/logging-and-diagnostics-in-entity-framework/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/logging-and-diagnostics-in-entity-framework/]]></link>
			<title>Logging and Diagnostics in Entity Framework</title>
			<pubDate><![CDATA[Fri, 18 Apr 2025 16:53:54 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/how-to-handle-options-in-asp-net-core-better/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/how-to-handle-options-in-asp-net-core-better/]]></link>
			<title>How to Handle Options in ASP.NET Core Better</title>
			<pubDate><![CDATA[Thu, 13 Feb 2025 21:00:57 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/how-to-become-a-microsoft-mvp-my-path-and-tips-for-you/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/how-to-become-a-microsoft-mvp-my-path-and-tips-for-you/]]></link>
			<title>How to Become a Microsoft MVP: My Path and Tips for You</title>
			<pubDate><![CDATA[Fri, 28 Feb 2025 16:19:27 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/performant-compile-time-logging-in-dotnet/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/performant-compile-time-logging-in-dotnet/]]></link>
			<title>Performant Compile-Time Logging in .NET</title>
			<pubDate><![CDATA[Sat, 15 Feb 2025 11:40:51 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/how-to-use-backgroundservice-in-dotnet-for-long-running-tasks/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/how-to-use-backgroundservice-in-dotnet-for-long-running-tasks/]]></link>
			<title>How to Use BackgroundService in .NET for Long-Running Tasks</title>
			<pubDate><![CDATA[Fri, 14 Feb 2025 16:40:26 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/how-to-release-unmanaged-resources-asynchronously-in-dotnet/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/how-to-release-unmanaged-resources-asynchronously-in-dotnet/]]></link>
			<title>How to Release Unmanaged Resources Asynchronously in .NET</title>
			<pubDate><![CDATA[Fri, 14 Feb 2025 16:34:04 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/service-lifetimes-in-dotnet/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/service-lifetimes-in-dotnet/]]></link>
			<title>Service Lifetimes in .NET</title>
			<pubDate><![CDATA[Thu, 13 Feb 2025 20:43:44 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/whats-new-in-asp-net-core-9/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/whats-new-in-asp-net-core-9/]]></link>
			<title>What&#8217;s New in ASP.NET Core 9</title>
			<pubDate><![CDATA[Thu, 13 Feb 2025 19:48:43 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/easy-api-testing-in-vs-code-visual-studio-and-rider/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/easy-api-testing-in-vs-code-visual-studio-and-rider/]]></link>
			<title>Easy API Testing in VS Code, Visual Studio, and Rider</title>
			<pubDate><![CDATA[Fri, 31 Jan 2025 19:27:44 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/manage-api-versioning-like-a-pro-in-asp-net-core/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/manage-api-versioning-like-a-pro-in-asp-net-core/]]></link>
			<title>Manage API Versioning Like A Pro in ASP.NET Core</title>
			<pubDate><![CDATA[Fri, 11 Apr 2025 16:04:23 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/pattern-matching-in-csharp/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/pattern-matching-in-csharp/]]></link>
			<title>Pattern Matching in C#</title>
			<pubDate><![CDATA[Wed, 22 Jan 2025 07:26:55 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/mastering-cancellation-in-csharp-with-cancellationtoken/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/mastering-cancellation-in-csharp-with-cancellationtoken/]]></link>
			<title>Mastering Cancellation in C# with CancellationToken</title>
			<pubDate><![CDATA[Sun, 12 Jan 2025 16:15:07 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/mastering-async-and-await-in-csharp-best-practices/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/mastering-async-and-await-in-csharp-best-practices/]]></link>
			<title>Mastering Async and Await in C#: Best Practices</title>
			<pubDate><![CDATA[Mon, 06 Jan 2025 18:15:30 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/new-apis-in-dotnet-9-you-should-know-about/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/new-apis-in-dotnet-9-you-should-know-about/]]></link>
			<title>New APIs in .NET 9 You Should Know About</title>
			<pubDate><![CDATA[Fri, 29 Nov 2024 17:09:59 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/decorator-pattern-add-behavior-without-breaking-code/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/decorator-pattern-add-behavior-without-breaking-code/]]></link>
			<title>Decorator Pattern: Add Behavior Without Breaking Code</title>
			<pubDate><![CDATA[Fri, 24 Jan 2025 15:50:00 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/seamless-feature-rollouts-in-asp-net-core-using-feature-management/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/seamless-feature-rollouts-in-asp-net-core-using-feature-management/]]></link>
			<title>Seamless Feature Rollouts in ASP.NET Core Using Feature Management</title>
			<pubDate><![CDATA[Fri, 17 Jan 2025 16:45:15 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/efficient-object-mapping-with-mapperly-in-dotnet/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/efficient-object-mapping-with-mapperly-in-dotnet/]]></link>
			<title>Efficient Object Mapping with Mapperly in .NET</title>
			<pubDate><![CDATA[Fri, 13 Dec 2024 16:54:48 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/high-performance-file-access-in-dotnet-with-randomaccess/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/high-performance-file-access-in-dotnet-with-randomaccess/]]></link>
			<title>High-Performance File Access in .NET with RandomAccess</title>
			<pubDate><![CDATA[Fri, 13 Dec 2024 15:26:10 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/stop-unnecessary-allocations-with-static-lambda-in-csharp/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/stop-unnecessary-allocations-with-static-lambda-in-csharp/]]></link>
			<title>Stop Unnecessary Allocations with Static Lambda in C#</title>
			<pubDate><![CDATA[Fri, 04 Apr 2025 17:24:54 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/better-controlling-time-in-dotnet/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/better-controlling-time-in-dotnet/]]></link>
			<title>Better Controlling Time with TimeProvider in .NET</title>
			<pubDate><![CDATA[Tue, 26 Nov 2024 20:33:11 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/]]></link>
			<title>Newsletter</title>
			<pubDate><![CDATA[Tue, 26 Nov 2024 20:31:34 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/intro-to-serialization-with-source-generation-in-system-text-json/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/intro-to-serialization-with-source-generation-in-system-text-json/]]></link>
			<title>Intro to Serialization with Source Generation in System.Text.Json</title>
			<pubDate><![CDATA[Fri, 07 Mar 2025 18:41:43 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/how-to-standardize-code-formatting-in-dotnet-with-editorconfig/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/how-to-standardize-code-formatting-in-dotnet-with-editorconfig/]]></link>
			<title>How to Standardize Code Formatting in .NET with .editorconfig</title>
			<pubDate><![CDATA[Fri, 07 Feb 2025 19:37:51 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/the-power-of-searchvalues-in-dotnet/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/the-power-of-searchvalues-in-dotnet/]]></link>
			<title>The Power of SearchValues in .NET</title>
			<pubDate><![CDATA[Tue, 12 Nov 2024 21:25:05 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/understanding-the-circuit-breaker-pattern/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/understanding-the-circuit-breaker-pattern/]]></link>
			<title>Understanding the Circuit Breaker Pattern</title>
			<pubDate><![CDATA[Tue, 12 Nov 2024 21:24:28 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/understanding-the-retry-pattern/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/understanding-the-retry-pattern/]]></link>
			<title>Understanding the Retry Pattern</title>
			<pubDate><![CDATA[Tue, 12 Nov 2024 21:23:43 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/new-place-to-manage-packages-in-dotnet/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/new-place-to-manage-packages-in-dotnet/]]></link>
			<title>A New Place To Manage Packages in .NET</title>
			<pubDate><![CDATA[Thu, 07 Nov 2024 21:38:48 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/understanding-ienumerable-and-iqueryable-in-csharp/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/understanding-ienumerable-and-iqueryable-in-csharp/]]></link>
			<title>Understanding IEnumerable and IQueryable in C#</title>
			<pubDate><![CDATA[Mon, 11 Nov 2024 19:59:53 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/whats-new-in-system-text-json-in-dotnet-9/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/whats-new-in-system-text-json-in-dotnet-9/]]></link>
			<title>What&#8217;s new in System.Text.Json in .NET 9</title>
			<pubDate><![CDATA[Mon, 11 Nov 2024 19:39:17 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/understanding-valuetask-in-csharp/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/understanding-valuetask-in-csharp/]]></link>
			<title>Understanding ValueTask in C#</title>
			<pubDate><![CDATA[Fri, 22 Nov 2024 21:02:41 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/handling-exceptions-in-asp-net-core-8/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/handling-exceptions-in-asp-net-core-8/]]></link>
			<title>Handling Exceptions with IExceptionHandler in ASP.NET Core 8</title>
			<pubDate><![CDATA[Fri, 15 Nov 2024 16:34:18 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/how-to-investigate-performance-counters-in-dotnet/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/how-to-investigate-performance-counters-in-dotnet/]]></link>
			<title>How to Investigate Performance Counters in .NET</title>
			<pubDate><![CDATA[Fri, 08 Nov 2024 19:24:18 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/three-methods-to-create-middleware-in-asp-net-core/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/three-methods-to-create-middleware-in-asp-net-core/]]></link>
			<title>3 Methods to Create Middleware in ASP.NET Core</title>
			<pubDate><![CDATA[Fri, 08 Nov 2024 19:22:20 +0000]]></pubDate>
		</item>
					<item>
			<guid><![CDATA[https://okyrylchuk.dev/blog/whats-new-in-csharp-12/]]></guid>
			<link><![CDATA[https://okyrylchuk.dev/blog/whats-new-in-csharp-12/]]></link>
			<title>What&#8217;s new in C# 12</title>
			<pubDate><![CDATA[Fri, 07 Feb 2025 19:23:41 +0000]]></pubDate>
		</item>
				</channel>
</rss>
