<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>ByteCrafted</title>
    <link>https://bytecrafted.dev/</link>
    <description>Recent content on ByteCrafted</description>
    <image>
      <title>ByteCrafted</title>
      <url>https://bytecrafted.dev/favicons/android-chrome-512x512.png</url>
      <link>https://bytecrafted.dev/favicons/android-chrome-512x512.png</link>
    </image>
    <generator>Hugo -- 0.155.2</generator>
    <language>en</language>
    <lastBuildDate>Tue, 20 Jan 2026 00:00:00 +0530</lastBuildDate>
    <atom:link href="https://bytecrafted.dev/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Stop Running `dotnet ef database update` in Production</title>
      <link>https://bytecrafted.dev/ef-core-migrations-cicd-production/</link>
      <pubDate>Tue, 20 Jan 2026 00:00:00 +0530</pubDate>
      <guid>https://bytecrafted.dev/ef-core-migrations-cicd-production/</guid>
      <description>Learn how to deploy EF Core migrations safely in CI/CD pipelines using idempotent scripts, migration bundles, and zero-downtime strategies. Avoid race conditions, security risks, and deployment failures.</description>
    </item>
    <item>
      <title>Designing Idempotent APIs in ASP.NET Core</title>
      <link>https://bytecrafted.dev/designing-idempotent-apis-aspnet-core/</link>
      <pubDate>Fri, 16 Jan 2026 00:00:00 +0530</pubDate>
      <guid>https://bytecrafted.dev/designing-idempotent-apis-aspnet-core/</guid>
      <description>A practical guide to implementing idempotency in ASP.NET Core APIs. Learn how to prevent duplicate charges, handle race conditions, and build resilient distributed systems using idempotency keys and Redis.</description>
    </item>
    <item>
      <title>Delete-Driven Design: How to Write Code You Can Remove</title>
      <link>https://bytecrafted.dev/delete-driven-design-how-to-write-code-you-can-remove/</link>
      <pubDate>Mon, 12 Jan 2026 00:00:00 +0530</pubDate>
      <guid>https://bytecrafted.dev/delete-driven-design-how-to-write-code-you-can-remove/</guid>
      <description>A senior-engineer perspective on designing software for safe deletion. Why delete-ability exposes bad boundaries, premature abstractions, brittle tests, and what to optimize for instead.</description>
    </item>
    <item>
      <title>Why Most Service Layers Make Code Worse</title>
      <link>https://bytecrafted.dev/why-most-service-layers-make-code-worse/</link>
      <pubDate>Mon, 05 Jan 2026 00:00:00 +0530</pubDate>
      <guid>https://bytecrafted.dev/why-most-service-layers-make-code-worse/</guid>
      <description>Why service layers often turn into transaction scripts, create anemic domain models, and make testing harder. A senior-engineer perspective on orchestration vs business logic.</description>
    </item>
    <item>
      <title>What Senior Developers Should Care About in 2026</title>
      <link>https://bytecrafted.dev/what-senior-developers-should-care-about-2026/</link>
      <pubDate>Wed, 31 Dec 2025 00:00:00 +0530</pubDate>
      <guid>https://bytecrafted.dev/what-senior-developers-should-care-about-2026/</guid>
      <description>A senior-engineer perspective on what truly compounds in software development - judgment, boundaries, domain modeling, performance, testing, and communication - beyond framework hype in 2026.</description>
    </item>
    <item>
      <title>The Engineering Trade-offs I Got Wrong</title>
      <link>https://bytecrafted.dev/engineering-trade-offs-i-got-wrong/</link>
      <pubDate>Thu, 25 Dec 2025 00:00:00 +0530</pubDate>
      <guid>https://bytecrafted.dev/engineering-trade-offs-i-got-wrong/</guid>
      <description>Real-world lessons from engineering trade-offs that looked right on paper but failed in practice. Abstractions, service layers, Clean Architecture, testing, and what experience taught me instead.</description>
    </item>
    <item>
      <title>C# 14 Extension Members: Cleaner Code</title>
      <link>https://bytecrafted.dev/csharp-14-extension-members-cleaner-code/</link>
      <pubDate>Sun, 07 Dec 2025 00:00:00 +0530</pubDate>
      <guid>https://bytecrafted.dev/csharp-14-extension-members-cleaner-code/</guid>
      <description>C# 14 changes everything with explicit extension members. Stop writing messy static helper classes and start using properties, operators, and static extensions on types you don&amp;#39;t own.</description>
    </item>
    <item>
      <title>Avoid Anemic Domain Models</title>
      <link>https://bytecrafted.dev/clean-code-csharp-beyond-solid/avoid-anemic-domain-models/</link>
      <pubDate>Wed, 03 Dec 2025 00:28:50 +0530</pubDate>
      <guid>https://bytecrafted.dev/clean-code-csharp-beyond-solid/avoid-anemic-domain-models/</guid>
      <description>Learn why anemic domain models are a dangerous anti-pattern in C# and .NET. See how to build rich, encapsulated domain models with EF Core that are robust and maintainable.</description>
    </item>
    <item>
      <title>The Real Difference Between Domain and Application Layer in Clean Architecture</title>
      <link>https://bytecrafted.dev/domain-vs-application-layer-clean-architecture/</link>
      <pubDate>Sat, 22 Nov 2025 00:00:00 +0000</pubDate>
      <guid>https://bytecrafted.dev/domain-vs-application-layer-clean-architecture/</guid>
      <description>Understand the practical difference between Domain and Application layers in Clean Architecture with real ASP.NET Core examples. Learn where business logic belongs.</description>
    </item>
    <item>
      <title>Stop Asking Your Objects Questions. Just Tell Them What to Do</title>
      <link>https://bytecrafted.dev/clean-code-csharp-beyond-solid/tell-dont-ask-principle/</link>
      <pubDate>Tue, 18 Nov 2025 00:00:00 +0000</pubDate>
      <guid>https://bytecrafted.dev/clean-code-csharp-beyond-solid/tell-dont-ask-principle/</guid>
      <description>Learn how the &amp;#39;Tell, Don&amp;#39;t Ask&amp;#39; principle eliminates behavioral dependencies in C# applications. Discover practical examples, common pitfalls, and refactoring techniques for cleaner code.</description>
    </item>
    <item>
      <title>Integration Testing ASP.NET Core APIs The Right Way with WebApplicationFactory</title>
      <link>https://bytecrafted.dev/integration-testing-aspnet-core-webapplicationfactory/</link>
      <pubDate>Sun, 16 Nov 2025 00:00:00 +0000</pubDate>
      <guid>https://bytecrafted.dev/integration-testing-aspnet-core-webapplicationfactory/</guid>
      <description>Learn how to write fast, reliable integration tests for ASP.NET Core APIs using WebApplicationFactory. Complete guide with practical examples for testing endpoints, mocking dependencies, and handling authentication.</description>
    </item>
    <item>
      <title>Building Maintainable EF Core Repositories Without Generic Hell</title>
      <link>https://bytecrafted.dev/building-maintainable-ef-core-repositories-without-generic-hell/</link>
      <pubDate>Thu, 13 Nov 2025 00:00:00 +0000</pubDate>
      <guid>https://bytecrafted.dev/building-maintainable-ef-core-repositories-without-generic-hell/</guid>
      <description>Avoid generic repository anti-patterns in EF Core. Learn how to build maintainable, domain-specific repositories with clear boundaries, better testability, and no over-engineering.</description>
    </item>
    <item>
      <title>Implement CQRS in ASP.NET Core Without MediatR</title>
      <link>https://bytecrafted.dev/cqrs-without-mediatr-aspnet-core/</link>
      <pubDate>Mon, 10 Nov 2025 00:00:00 +0000</pubDate>
      <guid>https://bytecrafted.dev/cqrs-without-mediatr-aspnet-core/</guid>
      <description>Master CQRS in ASP.NET Core without MediatR. Step-by-step guide to building a simple, dependency-free dispatcher with real-world examples.</description>
    </item>
    <item>
      <title>How to Structure Your ASP.NET Core API for Clean Testing</title>
      <link>https://bytecrafted.dev/how-to-structure-aspnet-core-api-clean-testing/</link>
      <pubDate>Fri, 07 Nov 2025 00:00:00 +0530</pubDate>
      <guid>https://bytecrafted.dev/how-to-structure-aspnet-core-api-clean-testing/</guid>
      <description>Learn how to structure your ASP.NET Core API for clean, testable code. Discover the right folder layout, dependency direction, and WebApplicationFactory setup with practical C# examples.</description>
    </item>
    <item>
      <title>Optimistic vs. Pessimistic Concurrency in EF Core: A Conceptual Deep Dive</title>
      <link>https://bytecrafted.dev/ef-core-optimistic-vs-pessimistic-concurrency-hidden-costs/</link>
      <pubDate>Tue, 04 Nov 2025 00:00:00 +0530</pubDate>
      <guid>https://bytecrafted.dev/ef-core-optimistic-vs-pessimistic-concurrency-hidden-costs/</guid>
      <description>A deep dive into EF Core concurrency strategies. Understand when optimistic concurrency can fail, when pessimistic locking is worth the overhead, and the conceptual costs of each approach.</description>
    </item>
    <item>
      <title>The Clean Code Rules I Wish I Knew Sooner (Beyond SOLID)</title>
      <link>https://bytecrafted.dev/clean-code-csharp-beyond-solid/</link>
      <pubDate>Tue, 28 Oct 2025 00:00:00 +0000</pubDate>
      <guid>https://bytecrafted.dev/clean-code-csharp-beyond-solid/</guid>
      <description>Go beyond SOLID with a senior dev&amp;#39;s guide to clean C#. This post covers 22 principles like &amp;#34;Tell, Don&amp;#39;t Ask&amp;#34; and &amp;#34;Fail Fast&amp;#34; to help you write better C# code.</description>
    </item>
    <item>
      <title>ASP.NET Core Response Compression with Brotli & Gzip</title>
      <link>https://bytecrafted.dev/aspnet-core-response-compression-brotli-gzip/</link>
      <pubDate>Thu, 23 Oct 2025 00:00:00 +0530</pubDate>
      <guid>https://bytecrafted.dev/aspnet-core-response-compression-brotli-gzip/</guid>
      <description>Learn how to enable Brotli and Gzip response compression in ASP.NET Core in minutes. Includes production best practices, security tips, and real-world performance data.</description>
    </item>
    <item>
      <title>Hybrid Caching Strategies Beyond MemoryCache in ASP.NET Core</title>
      <link>https://bytecrafted.dev/hybrid-caching-strategies-aspnet-core/</link>
      <pubDate>Mon, 20 Oct 2025 00:00:00 +0530</pubDate>
      <guid>https://bytecrafted.dev/hybrid-caching-strategies-aspnet-core/</guid>
      <description>Learn how to design hybrid caching strategies in ASP.NET Core that go beyond MemoryCache. Explore layered caching, Redis integration, distributed caching patterns, and performance tuning for SaaS applications.</description>
    </item>
    <item>
      <title>IAsyncEnumerable vs Task.WhenAll: Choosing Between Speed and User Experience in C#</title>
      <link>https://bytecrafted.dev/posts/c-sharp/iasyncenumerable-vs-task-whenall/</link>
      <pubDate>Thu, 16 Oct 2025 00:00:00 +0530</pubDate>
      <guid>https://bytecrafted.dev/posts/c-sharp/iasyncenumerable-vs-task-whenall/</guid>
      <description>Benchmarked comparison of IAsyncEnumerable vs Task.WhenAll in C#. Task.WhenAll is 10-40x faster, but IAsyncEnumerable provides better user experience, memory efficiency, and error resilience for streaming scenarios.</description>
    </item>
    <item>
      <title>SQL Indexing Strategies Every Developer Should Know</title>
      <link>https://bytecrafted.dev/sql-indexing-strategies/</link>
      <pubDate>Sat, 11 Oct 2025 00:00:00 +0530</pubDate>
      <guid>https://bytecrafted.dev/sql-indexing-strategies/</guid>
      <description>Learn practical SQL indexing strategies that improve query performance. Covers clustered vs non-clustered indexes, composite keys, and production-ready tips for real-world databases.</description>
    </item>
    <item>
      <title>Why Copy-Paste Coding Is Worse Than You Think</title>
      <link>https://bytecrafted.dev/copy-paste-coding-worse-than-you-think/</link>
      <pubDate>Tue, 07 Oct 2025 00:00:00 +0530</pubDate>
      <guid>https://bytecrafted.dev/copy-paste-coding-worse-than-you-think/</guid>
      <description>Learn why copy-paste coding creates subtle bugs and technical debt. Explore safer alternatives like generics, helpers, and proper inheritance in C#.</description>
    </item>
    <item>
      <title>EF Core Interceptors for Secure, Per-Tenant Audit Logging</title>
      <link>https://bytecrafted.dev/ef-core-saas-audit-logging-savechanges-interceptors/</link>
      <pubDate>Fri, 03 Oct 2025 00:00:00 +0000</pubDate>
      <guid>https://bytecrafted.dev/ef-core-saas-audit-logging-savechanges-interceptors/</guid>
      <description>Use EF Core Interceptors to automatically create isolated, per-tenant audit logs. A practical, production-ready guide for securing .NET SaaS applications.</description>
    </item>
    <item>
      <title>Why I Avoid Static Helpers in Modern C# Projects</title>
      <link>https://bytecrafted.dev/avoid-static-helpers-csharp/</link>
      <pubDate>Tue, 30 Sep 2025 09:00:00 +0530</pubDate>
      <guid>https://bytecrafted.dev/avoid-static-helpers-csharp/</guid>
      <description>Static helper classes in C# look convenient, but they cause tight coupling, testing headaches, and global state issues. Here’s why I avoid them in modern .NET projects and what I do instead.</description>
    </item>
    <item>
      <title>5 ASP.NET Core DI Scope Mistakes Developers Must Avoid</title>
      <link>https://bytecrafted.dev/aspnet-core-di-scope-mistakes/</link>
      <pubDate>Fri, 26 Sep 2025 00:00:00 +0530</pubDate>
      <guid>https://bytecrafted.dev/aspnet-core-di-scope-mistakes/</guid>
      <description>Avoid common ASP.NET Core DI scope mistakes like DbContext misuse, singleton leaks, and middleware bugs with practical production fixes.</description>
    </item>
    <item>
      <title>Should You Use `UseRouting()` or `MapGet()` First?</title>
      <link>https://bytecrafted.dev/aspnetcore-userouting-vs-mapget-order/</link>
      <pubDate>Tue, 23 Sep 2025 00:00:00 +0000</pubDate>
      <guid>https://bytecrafted.dev/aspnetcore-userouting-vs-mapget-order/</guid>
      <description>A practical guide to understanding why UseRouting() must run before MapGet() in ASP.NET Core. Avoid common 404 errors and learn the correct middleware order for predictable behavior.</description>
    </item>
    <item>
      <title>SaaS Middleware Anti-Patterns: What *Not* to Do in ASP.NET Core</title>
      <link>https://bytecrafted.dev/aspnet-core-saas-middleware-anti-patterns/</link>
      <pubDate>Fri, 19 Sep 2025 00:00:00 +0530</pubDate>
      <guid>https://bytecrafted.dev/aspnet-core-saas-middleware-anti-patterns/</guid>
      <description>Avoid the most dangerous middleware mistakes in your ASP.NET Core SaaS apps. Learn what *not* to do with singleton lifetimes, database calls, tenant logic, and more.</description>
    </item>
    <item>
      <title>Code Reviews That Grow Developers</title>
      <link>https://bytecrafted.dev/code-reviews-grow-developers/</link>
      <pubDate>Tue, 16 Sep 2025 00:00:00 +0530</pubDate>
      <guid>https://bytecrafted.dev/code-reviews-grow-developers/</guid>
      <description>&lt;section class=&#34;tl-dr&#34; aria-labelledby=&#34;tldr-heading&#34;&gt;
  &lt;h3 id=&#34;tldr-heading&#34;&gt;TL;DR&lt;/h3&gt;
  &lt;div&gt;
    &lt;p&gt;Code reviews should teach, not just catch bugs. Stop nitpicking syntax and start building autonomous developers. Focus on architectural patterns, ask guiding questions instead of giving orders, and eliminate multi-team approval bottlenecks that delay delivery.&lt;/p&gt;
&lt;p&gt;Good reviews create learning opportunities that scale your team&amp;rsquo;s expertise.&lt;/p&gt;

  &lt;/div&gt;
&lt;/section&gt;


&lt;p&gt;Code reviews shouldn&amp;rsquo;t be about catching syntax errors or enforcing personal preferences. They&amp;rsquo;re your best tool for spreading architectural knowledge and building stronger development teams. But most teams get this wrong, creating bureaucratic bottlenecks instead of learning opportunities.&lt;/p&gt;</description>
    </item>
    <item>
      <title>ASP.NET Core: Auth with Middleware or Filters?</title>
      <link>https://bytecrafted.dev/aspnetcore-auth-middleware-vs-filters/</link>
      <pubDate>Fri, 12 Sep 2025 00:00:00 +0530</pubDate>
      <guid>https://bytecrafted.dev/aspnetcore-auth-middleware-vs-filters/</guid>
      <description>ASP.NET Core authentication explained: choose between middleware or filters for optimal security, maintainability, and performance.</description>
    </item>
    <item>
      <title>12 SOLID Interview Questions for Experienced Developers</title>
      <link>https://bytecrafted.dev/solid-principles-interview-questions/</link>
      <pubDate>Mon, 08 Sep 2025 00:00:00 +0000</pubDate>
      <guid>https://bytecrafted.dev/solid-principles-interview-questions/</guid>
      <description>Boost your interview readiness with 12 essential SOLID principle questions for experienced developers focused on architecture and maintainable code.
</description>
    </item>
    <item>
      <title>JS Closures: Real Production Use Cases Beyond Interviews</title>
      <link>https://bytecrafted.dev/javascript-closures-production-use-cases-frontend/</link>
      <pubDate>Fri, 05 Sep 2025 00:00:00 +0530</pubDate>
      <guid>https://bytecrafted.dev/javascript-closures-production-use-cases-frontend/</guid>
      <description>Learn practical JavaScript closure patterns for Angular &amp;amp; React apps. Real examples: ID generators, event handling, API clients, memoization, and debugging tips from 11&#43; years of production experience.</description>
    </item>
    <item>
      <title>From Code Contributor to System Thinker: The Senior Developer&#39;s Shift</title>
      <link>https://bytecrafted.dev/code-contributor-to-system-thinker/</link>
      <pubDate>Sat, 30 Aug 2025 00:00:00 +0530</pubDate>
      <guid>https://bytecrafted.dev/code-contributor-to-system-thinker/</guid>
      <description>A senior developer&amp;#39;s perspective on writing less code, focusing on architecture, mentorship, and team productivity.</description>
    </item>
    <item>
      <title>Why Middleware Beats DI for SaaS Extension Points</title>
      <link>https://bytecrafted.dev/middleware-vs-di-saas/</link>
      <pubDate>Sun, 24 Aug 2025 00:00:00 +0000</pubDate>
      <guid>https://bytecrafted.dev/middleware-vs-di-saas/</guid>
      <description>Dependency Injection is powerful, but for multi-tenant SaaS applications, custom middleware gives you earlier control, better visibility, and early request context access.</description>
    </item>
    <item>
      <title>3 Signs Your Code Needs Middleware</title>
      <link>https://bytecrafted.dev/3-signs-your-code-needs-middleware-aspnet-core/</link>
      <pubDate>Thu, 21 Aug 2025 00:00:00 +0000</pubDate>
      <guid>https://bytecrafted.dev/3-signs-your-code-needs-middleware-aspnet-core/</guid>
      <description>Learn when to use ASP.NET Core middleware instead of filters or services. Spot code duplication, request handling issues, and tight coupling early.</description>
    </item>
    <item>
      <title>Why Constructor Injection Matters in Clean Architecture</title>
      <link>https://bytecrafted.dev/aspnet-core-constructor-injection-clean-architecture/</link>
      <pubDate>Mon, 18 Aug 2025 00:00:00 +0000</pubDate>
      <guid>https://bytecrafted.dev/aspnet-core-constructor-injection-clean-architecture/</guid>
      <description>Learn why constructor injection is the first step in implementing clean architecture, enabling maintainable, testable, and decoupled C# code.</description>
    </item>
    <item>
      <title>SOLID Principles Cheatsheet</title>
      <link>https://bytecrafted.dev/solid-principles-cheatsheet/</link>
      <pubDate>Tue, 12 Aug 2025 00:00:00 +0000</pubDate>
      <guid>https://bytecrafted.dev/solid-principles-cheatsheet/</guid>
      <description>A real-world SOLID principles cheatsheet for C# developers.</description>
    </item>
    <item>
      <title>Applying OOP in ASP.NET Core</title>
      <link>https://bytecrafted.dev/oop-pillars-aspnet-core/</link>
      <pubDate>Sun, 10 Aug 2025 00:00:00 +0530</pubDate>
      <guid>https://bytecrafted.dev/oop-pillars-aspnet-core/</guid>
      <description>Learn how to apply the four pillars of object-oriented programming, encapsulation, inheritance, abstraction, and polymorphism, in real-world ASP.NET Core applications with practical code examples.</description>
    </item>
    <item>
      <title>Refactoring Code for Better Coupling and Cohesion
</title>
      <link>https://bytecrafted.dev/refactoring-coupling-cohesion/</link>
      <pubDate>Mon, 04 Aug 2025 00:00:00 +0530</pubDate>
      <guid>https://bytecrafted.dev/refactoring-coupling-cohesion/</guid>
      <description>My approach to refactoring messy code emphasizes coupling and cohesion to create cleaner, more maintainable, and scalable software.</description>
    </item>
    <item>
      <title>Why Async Can Be Slower in Real Projects?</title>
      <link>https://bytecrafted.dev/csharp-async-await-scalability-vs-speed/</link>
      <pubDate>Fri, 01 Aug 2025 00:00:00 +0000</pubDate>
      <guid>https://bytecrafted.dev/csharp-async-await-scalability-vs-speed/</guid>
      <description>Think async is always better? In real C# projects, it can slow APIs, exhaust threads, and hurt scalability. Learn when to avoid it.</description>
    </item>
    <item>
      <title>Dependency Inversion: Boost C# Code Quality</title>
      <link>https://bytecrafted.dev/series/solid/dependency-inversion-csharp-testable-maintainable-code/</link>
      <pubDate>Fri, 25 Jul 2025 00:00:00 +0000</pubDate>
      <guid>https://bytecrafted.dev/series/solid/dependency-inversion-csharp-testable-maintainable-code/</guid>
      <description>Master Dependency Inversion in C# to improve code quality, reduce coupling, and build flexible, maintainable, and scalable applications</description>
    </item>
    <item>
      <title>About Me</title>
      <link>https://bytecrafted.dev/about/</link>
      <pubDate>Tue, 22 Jul 2025 00:00:00 +0000</pubDate>
      <guid>https://bytecrafted.dev/about/</guid>
      <description>_Software Developer | Tech Blogger | Pragmatic Engineer_</description>
    </item>
    <item>
      <title>Privacy Policy</title>
      <link>https://bytecrafted.dev/privacy-policy/</link>
      <pubDate>Tue, 22 Jul 2025 00:00:00 +0000</pubDate>
      <guid>https://bytecrafted.dev/privacy-policy/</guid>
      <description>&lt;p&gt;I respect your privacy.&lt;/p&gt;
&lt;p&gt;When you subscribe to this blog, I only collect your email address. It’s used solely for sending you bi-weekly updates, new posts, or coding tips.&lt;/p&gt;
&lt;p&gt;I do not sell or share your information with anyone.&lt;/p&gt;
&lt;p&gt;You can unsubscribe at any time by clicking the link in any of my emails.&lt;/p&gt;
&lt;p&gt;If you have questions, contact me at [abhinaw[at]devcrafted[dot]com].&lt;/p&gt;</description>
    </item>
    <item>
      <title>Subscribe to my blog</title>
      <link>https://bytecrafted.dev/subscribe/</link>
      <pubDate>Tue, 22 Jul 2025 00:00:00 +0000</pubDate>
      <guid>https://bytecrafted.dev/subscribe/</guid>
      <description>&lt;p&gt;I appreciate your interest in subscribing!&lt;/p&gt;
&lt;p&gt;By joining my mailing list, you&amp;rsquo;ll get bi-weekly updates, new posts, and exclusive coding tips, directly to your inbox.&lt;/p&gt;
&lt;p&gt;Just enter your email below and I&amp;rsquo;ll handle the rest.&lt;/p&gt;
&lt;p&gt;You can unsubscribe anytime by clicking the link in any of my emails.&lt;/p&gt;
&lt;p&gt;Rest assured, &lt;a href=&#34;https://bytecrafted.dev/privacy-policy&#34;&gt;your privacy is important to me&lt;/a&gt;. I will never share your information.&lt;/p&gt;





&lt;div x-data=&#34;subscribeForm()&#34; 

x-init=&#34;init(true)&#34;

&gt;
  &lt;div class=&#34;inline-subscribe&#34; 


  x-transition&gt;
    &lt;h2 id=&#34;subscribe&#34;&gt;Subscribe for Updates&lt;/h2&gt;

    &lt;template x-if=&#34;!success&#34;&gt;
      &lt;form @submit.prevent=&#34;submit()&#34;&gt;
        &lt;input type=&#34;email&#34; x-model=&#34;email&#34; placeholder=&#34;Your email&#34; required /&gt;
        &lt;p class=&#34;description&#34;&gt;Get bi-weekly dev tips. No spam, ever.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Unit & Integration Testing for ASP.NET Middleware</title>
      <link>https://bytecrafted.dev/posts/aspnet-core/middleware-testing/</link>
      <pubDate>Sun, 20 Jul 2025 00:00:00 +0530</pubDate>
      <guid>https://bytecrafted.dev/posts/aspnet-core/middleware-testing/</guid>
      <description>Learn how to test ASP.NET Core middleware with unit tests, integration tests, and mocks to ensure reliable and maintainable web applications.</description>
    </item>
    <item>
      <title>Interface Segregation Principle: No Unused Methods</title>
      <link>https://bytecrafted.dev/series/solid/interface-segregation-principle-unused-methods/</link>
      <pubDate>Fri, 18 Jul 2025 00:00:00 +0000</pubDate>
      <guid>https://bytecrafted.dev/series/solid/interface-segregation-principle-unused-methods/</guid>
      <description>ISP explained: Avoid unused methods in C# interfaces to create cleaner, more modular, and maintainable applications that follow solid design principles.
</description>
    </item>
    <item>
      <title>Top 11 EF Core Mistakes That Kill Performance</title>
      <link>https://bytecrafted.dev/posts/ef-core/performance-mistakes/</link>
      <pubDate>Thu, 17 Jul 2025 00:00:00 +0000</pubDate>
      <guid>https://bytecrafted.dev/posts/ef-core/performance-mistakes/</guid>
      <description>Avoid common EF Core mistakes that hurt performance. Learn 11 practical fixes to optimize queries, reduce load, and improve .NET app efficiency.</description>
    </item>
    <item>
      <title>Prefer Interfaces Over Abstract Classes in C#</title>
      <link>https://bytecrafted.dev/posts/c-sharp/prefer-interfaces-over-abstract-classes/</link>
      <pubDate>Wed, 16 Jul 2025 00:00:00 +0000</pubDate>
      <guid>https://bytecrafted.dev/posts/c-sharp/prefer-interfaces-over-abstract-classes/</guid>
      <description>Learn why preferring interfaces over abstract classes in C# improves code flexibility, testability, and maintainability for robust .NET applications.</description>
    </item>
    <item>
      <title>C# IEquatable: Custom Equality for .NET Devs</title>
      <link>https://bytecrafted.dev/posts/c-sharp/iequatable-guide/</link>
      <pubDate>Wed, 16 Jul 2025 00:00:00 +0530</pubDate>
      <guid>https://bytecrafted.dev/posts/c-sharp/iequatable-guide/</guid>
      <description>IEquatable in C#: Learn custom equality implementation to enhance .NET code quality, maintainability, and correctness in real-world projects.</description>
    </item>
    <item>
      <title>C# Polymorphism with Template, Strategy, Visitor</title>
      <link>https://bytecrafted.dev/posts/software-design/polymorphism-template-strategy-visitor/</link>
      <pubDate>Wed, 16 Jul 2025 00:00:00 +0530</pubDate>
      <guid>https://bytecrafted.dev/posts/software-design/polymorphism-template-strategy-visitor/</guid>
      <description>Learn how polymorphism in C# powers real-world patterns like Template Method, Strategy, and Visitor to write cleaner, extensible, and testable code.</description>
    </item>
    <item>
      <title>C# Interfaces: Default Methods for Compatibility</title>
      <link>https://bytecrafted.dev/posts/c-sharp/default-interface-methods/</link>
      <pubDate>Tue, 15 Jul 2025 00:00:00 +0000</pubDate>
      <guid>https://bytecrafted.dev/posts/c-sharp/default-interface-methods/</guid>
      <description>Learn C# default interface methods to build future-proof, backward-compatible APIs that are maintainable, flexible, and ready for modern applications.</description>
    </item>
    <item>
      <title>Square-Rectangle Problem: Lessons on Liskov Substitution</title>
      <link>https://bytecrafted.dev/series/solid/rectangle-square-problem-liskov-substitution-principle/</link>
      <pubDate>Mon, 14 Jul 2025 00:00:00 +0000</pubDate>
      <guid>https://bytecrafted.dev/series/solid/rectangle-square-problem-liskov-substitution-principle/</guid>
      <description>Understand the Rectangle-Square problem in C# and how it reveals common violations of the Liskov Substitution Principle (LSP) in object-oriented design.</description>
    </item>
    <item>
      <title>Dependency Inversion in C#: Flexible Code with ASP.NET Core</title>
      <link>https://bytecrafted.dev/posts/aspnet-core/dependency-inversion-principle-aspnet-core-di/</link>
      <pubDate>Sun, 13 Jul 2025 00:00:00 +0530</pubDate>
      <guid>https://bytecrafted.dev/posts/aspnet-core/dependency-inversion-principle-aspnet-core-di/</guid>
      <description>Learn the Dependency Inversion Principle in C# with ASP.NET Core DI to write flexible, maintainable, and testable code for real-world applications.</description>
    </item>
    <item>
      <title>Encapsulation Best Practices in C#: Controlled Setters vs Backing Fields</title>
      <link>https://bytecrafted.dev/posts/c-sharp/encapsulation-best-practices/</link>
      <pubDate>Sat, 12 Jul 2025 00:00:00 +0530</pubDate>
      <guid>https://bytecrafted.dev/posts/c-sharp/encapsulation-best-practices/</guid>
      <description>Learn when to use auto-properties vs backing fields in C#. See best practices for encapsulation, validation, and business logic in property setters, with real-world code examples and a quick comparison table.</description>
    </item>
    <item>
      <title>Open-Closed Principle: Smart Use, No Overkill
</title>
      <link>https://bytecrafted.dev/series/solid/open-closed-principle-without-overengineering/</link>
      <pubDate>Fri, 11 Jul 2025 00:00:00 +0000</pubDate>
      <guid>https://bytecrafted.dev/series/solid/open-closed-principle-without-overengineering/</guid>
      <description>OCP guide: Use the Open-Closed Principle smartly in C# to create flexible, maintainable code without overcomplicating with plugins.
</description>
    </item>
    <item>
      <title>Violating SOLID for Performance: When It&#39;s Okay and How to Isolate It</title>
      <link>https://bytecrafted.dev/posts/system-design/violating-solid-for-performance/</link>
      <pubDate>Thu, 10 Jul 2025 00:00:00 +0530</pubDate>
      <guid>https://bytecrafted.dev/posts/system-design/violating-solid-for-performance/</guid>
      <description>Learn when and how to break SOLID principles in C# for performance-critical code. See real-world examples, trade-off tables, and practical guidelines for measuring, isolating, and documenting exceptions while keeping your codebase maintainable.</description>
    </item>
    <item>
      <title>Avoiding N&#43;1 Queries in EF Core: Include() vs SplitQuery()</title>
      <link>https://bytecrafted.dev/posts/ef-core/n-plus-one-include-vs-splitquery/</link>
      <pubDate>Tue, 08 Jul 2025 00:00:00 +0000</pubDate>
      <guid>https://bytecrafted.dev/posts/ef-core/n-plus-one-include-vs-splitquery/</guid>
      <description>Learn how to avoid the N&#43;1 query problem in Entity Framework Core using Include() and AsSplitQuery(). Improve your application&amp;#39;s performance with practical examples and tips.</description>
    </item>
    <item>
      <title>Single Responsibility Principle: One Reason to Change
</title>
      <link>https://bytecrafted.dev/series/solid/single-responsibility-principle-single-reason-to-change/</link>
      <pubDate>Mon, 07 Jul 2025 00:00:00 +0000</pubDate>
      <guid>https://bytecrafted.dev/series/solid/single-responsibility-principle-single-reason-to-change/</guid>
      <description>Discover the true meaning of “One Reason to Change” in SRP to write cleaner, more maintainable, and flexible C# applications.</description>
    </item>
    <item>
      <title>Avoiding Boxing with Struct Dictionary Keys in C#: Performance and Best Practices</title>
      <link>https://bytecrafted.dev/posts/c-sharp/avoiding-boxing-struct-dictionary-keys/</link>
      <pubDate>Sun, 06 Jul 2025 00:00:00 +0000</pubDate>
      <guid>https://bytecrafted.dev/posts/c-sharp/avoiding-boxing-struct-dictionary-keys/</guid>
      <description>Learn how to avoid hidden heap allocations when using structs as dictionary keys in C#. See why boxing happens, how to implement IEquatable&amp;lt;T&amp;gt;, and the benefits of readonly and record structs for high-performance code.</description>
    </item>
    <item>
      <title>Guard Clauses in C#: Cleaner Validation and Fail-Fast Code</title>
      <link>https://bytecrafted.dev/posts/c-sharp/guard-clauses-csharp-clean-validation/</link>
      <pubDate>Sun, 06 Jul 2025 00:00:00 +0000</pubDate>
      <guid>https://bytecrafted.dev/posts/c-sharp/guard-clauses-csharp-clean-validation/</guid>
      <description>Learn how to use guard clauses in C# for cleaner validation and error handling. See practical examples, reusable helpers, and best practices for writing fail-fast, maintainable code.</description>
    </item>
    <item>
      <title>Add &amp; Modify HTTP Headers in ASP.NET Core Middleware</title>
      <link>https://bytecrafted.dev/posts/aspnet-core/add-modify-http-headers-aspnet-core-middleware/</link>
      <pubDate>Sat, 05 Jul 2025 00:00:00 +0000</pubDate>
      <guid>https://bytecrafted.dev/posts/aspnet-core/add-modify-http-headers-aspnet-core-middleware/</guid>
      <description>Add, modify, and secure HTTP headers in ASP.NET Core middleware. Covers dynamic CORS, security headers, and correct middleware ordering.</description>
    </item>
    <item>
      <title>Debug ASP.NET Core Middleware Execution Flow</title>
      <link>https://bytecrafted.dev/posts/aspnet-core/middleware-order-debug-pipeline-flow/</link>
      <pubDate>Fri, 04 Jul 2025 00:00:00 +0000</pubDate>
      <guid>https://bytecrafted.dev/posts/aspnet-core/middleware-order-debug-pipeline-flow/</guid>
      <description>Learn how to fix ASP.NET Core middleware order issues and debug execution flow to ensure your pipeline runs correctly and efficiently.</description>
    </item>
    <item>
      <title>Efficient High-Volume File Processing in C#</title>
      <link>https://bytecrafted.dev/posts/c-sharp/efficient-parallel-file-processing-csharp/</link>
      <pubDate>Fri, 04 Jul 2025 00:00:00 +0030</pubDate>
      <guid>https://bytecrafted.dev/posts/c-sharp/efficient-parallel-file-processing-csharp/</guid>
      <description>Discover efficient C# patterns for processing large numbers of files, ensuring performance, reliability, and scalability in high-volume workloads.</description>
    </item>
    <item>
      <title>Correct Middleware Order in ASP.NET Core Apps</title>
      <link>https://bytecrafted.dev/posts/aspnet-core/middleware-order-best-practices/</link>
      <pubDate>Thu, 03 Jul 2025 00:00:00 +0000</pubDate>
      <guid>https://bytecrafted.dev/posts/aspnet-core/middleware-order-best-practices/</guid>
      <description>Learn the recommended middleware order in ASP.NET Core to build secure, fast, and reliable request pipelines for modern production apps.</description>
    </item>
    <item>
      <title>13 Practical Tips for ASP.NET Core HTTP Logging</title>
      <link>https://bytecrafted.dev/posts/aspnet-core/http-logging-middleware-tips/</link>
      <pubDate>Wed, 02 Jul 2025 00:00:00 +0000</pubDate>
      <guid>https://bytecrafted.dev/posts/aspnet-core/http-logging-middleware-tips/</guid>
      <description>Discover 13 micro tips to implement effective HTTP logging in ASP.NET Core middleware for cleaner, maintainable, and observable applications.</description>
    </item>
    <item>
      <title>ASP.NET Core Request Limits with IP and MemoryCache
</title>
      <link>https://bytecrafted.dev/posts/aspnet-core/request-throttling-middleware-memorycache-ip-limits/</link>
      <pubDate>Wed, 02 Jul 2025 00:00:00 +0000</pubDate>
      <guid>https://bytecrafted.dev/posts/aspnet-core/request-throttling-middleware-memorycache-ip-limits/</guid>
      <description>Learn how to implement IP-based request throttling in ASP.NET Core using MemoryCache to protect APIs and improve application reliability.</description>
    </item>
    <item>
      <title>C#: Abstract Class or Interface? 10 Questions to Ask</title>
      <link>https://bytecrafted.dev/posts/c-sharp/interfaces-vs-abstract-questions/</link>
      <pubDate>Tue, 01 Jul 2025 10:10:00 +0530</pubDate>
      <guid>https://bytecrafted.dev/posts/c-sharp/interfaces-vs-abstract-questions/</guid>
      <description>10 real-world questions comparing abstract classes and interfaces in C#. Perfect for designing APIs, architectures, and preparing for interviews.</description>
    </item>
    <item>
      <title>Understanding dotnet dev-certs https: Local HTTPS for .NET Development</title>
      <link>https://bytecrafted.dev/posts/aspnet-core/dotnet-dev-certs-https-local-development/</link>
      <pubDate>Tue, 01 Jul 2025 00:00:00 +0530</pubDate>
      <guid>https://bytecrafted.dev/posts/aspnet-core/dotnet-dev-certs-https-local-development/</guid>
      <description>Learn how to use dotnet dev-certs https to manage local HTTPS certificates for .NET development. See essential commands, troubleshooting tips, and best practices for secure, frictionless local development.</description>
    </item>
    <item>
      <title>How Does Composition Support the SOLID Principles? (C# Examples &amp; Best Practices)</title>
      <link>https://bytecrafted.dev/posts/software-design/composition-supports-solid-principles/</link>
      <pubDate>Mon, 30 Jun 2025 00:00:00 +0530</pubDate>
      <guid>https://bytecrafted.dev/posts/software-design/composition-supports-solid-principles/</guid>
      <description>Learn how composition naturally enforces the SOLID principles in C#. This guide explains each SOLID principle with real-world code examples, showing why composition leads to cleaner, more maintainable, and testable code than inheritance.</description>
    </item>
    <item>
      <title>Composition Over Inheritance in C#</title>
      <link>https://bytecrafted.dev/posts/software-design/composition-over-inheritance/</link>
      <pubDate>Sun, 29 Jun 2025 00:00:00 +0530</pubDate>
      <guid>https://bytecrafted.dev/posts/software-design/composition-over-inheritance/</guid>
      <description>Learn why composition is preferred over inheritance in C# to write flexible, maintainable, and scalable code that follows clean design principles.</description>
    </item>
    <item>
      <title>DRY API Responses in ASP.NET Core</title>
      <link>https://bytecrafted.dev/posts/aspnet-core/clean-aspnet-core-api-response-patterns/</link>
      <pubDate>Thu, 26 Jun 2025 00:00:00 +0000</pubDate>
      <guid>https://bytecrafted.dev/posts/aspnet-core/clean-aspnet-core-api-response-patterns/</guid>
      <description>Create cleaner, DRY API responses in ASP.NET Core to enhance code maintainability, readability, and overall application quality.</description>
    </item>
    <item>
      <title>Request & Response Body Logging in ASP.NET Core</title>
      <link>https://bytecrafted.dev/posts/aspnet-core/logging-request-response-bodies-aspnet-core-middleware/</link>
      <pubDate>Wed, 25 Jun 2025 00:00:00 +0000</pubDate>
      <guid>https://bytecrafted.dev/posts/aspnet-core/logging-request-response-bodies-aspnet-core-middleware/</guid>
      <description>Discover techniques for request and response body logging in ASP.NET Core middleware to enhance debugging, monitoring, and code reliability.</description>
    </item>
    <item>
      <title>Angular @defer: Cut Initial Load Time by 97% [Real Benchmarks &amp; Code]</title>
      <link>https://bytecrafted.dev/posts/angular/angular-defer-performance-optimization-benchmarks/</link>
      <pubDate>Mon, 23 Jun 2025 00:00:00 +0000</pubDate>
      <guid>https://bytecrafted.dev/posts/angular/angular-defer-performance-optimization-benchmarks/</guid>
      <description>Cut Angular app load time by 97% using @defer. Covers usage patterns, loading triggers, placeholders, and real benchmarks to improve Core Web Vitals.</description>
    </item>
    <item>
      <title>Handle Request Cancellation in ASP.NET Core</title>
      <link>https://bytecrafted.dev/posts/aspnet-core/handling-request-cancellation/</link>
      <pubDate>Sun, 22 Jun 2025 02:30:00 +0530</pubDate>
      <guid>https://bytecrafted.dev/posts/aspnet-core/handling-request-cancellation/</guid>
      <description>Learn how to handle request cancellation in ASP.NET Core, from browser to database, ensuring responsive, reliable, and efficient applications.</description>
    </item>
    <item>
      <title>C# 14&#39;s params for Collections: Say Goodbye to Arrays!</title>
      <link>https://bytecrafted.dev/posts/c-sharp/csharp-14-params-collections-performance-benefits/</link>
      <pubDate>Sat, 21 Jun 2025 02:30:20 +0530</pubDate>
      <guid>https://bytecrafted.dev/posts/c-sharp/csharp-14-params-collections-performance-benefits/</guid>
      <description>Discover how C# 14 extends the params keyword beyond arrays to support `IEnumerable&amp;lt;T&amp;gt;`, `Span&amp;lt;T&amp;gt;`, and other collections, bringing better performance, reduced memory allocations, and more flexible API design.</description>
    </item>
    <item>
      <title>5 Essential Benefits of Immutability in C# Programming</title>
      <link>https://bytecrafted.dev/posts/c-sharp/benefits-of-immutability-csharp/</link>
      <pubDate>Fri, 20 Jun 2025 02:30:20 +0530</pubDate>
      <guid>https://bytecrafted.dev/posts/c-sharp/benefits-of-immutability-csharp/</guid>
      <description>Discover why immutable objects are a powerful tool in C# development. Learn how immutability delivers thread safety, predictable behavior, better performance, and simplified debugging with practical code examples.</description>
    </item>
    <item>
      <title>C# Constructor Chaining - Why It Matters for Clean Code</title>
      <link>https://bytecrafted.dev/csharp-constructor-chaining-clean-code/</link>
      <pubDate>Fri, 20 Jun 2025 02:30:20 +0530</pubDate>
      <guid>https://bytecrafted.dev/csharp-constructor-chaining-clean-code/</guid>
      <description>Constructor chaining C# prevents code duplication. Learn when to use C# constructor overloading vs optional parameters with practical examples.</description>
    </item>
    <item>
      <title>C# Deadlock: 5 Proven Ways to Prevent and Debug Them</title>
      <link>https://bytecrafted.dev/csharp-deadlock-causes-prevention/</link>
      <pubDate>Fri, 20 Jun 2025 02:30:20 +0530</pubDate>
      <guid>https://bytecrafted.dev/csharp-deadlock-causes-prevention/</guid>
      <description>Struggling with a frozen C# application? A deadlock might be the cause. Learn 5 proven patterns to prevent, find, and fix deadlocks in your code today.</description>
    </item>
    <item>
      <title>Enhance ASP.NET Core Routes with Custom Constraints</title>
      <link>https://bytecrafted.dev/aspnet-core-route-constraints-beyond-regex/</link>
      <pubDate>Fri, 20 Jun 2025 02:30:20 +0530</pubDate>
      <guid>https://bytecrafted.dev/aspnet-core-route-constraints-beyond-regex/</guid>
      <description>Learn how to implement custom route constraints in ASP.NET Core to handle complex URL patterns when regex alone isn’t enough.</description>
    </item>
    <item>
      <title>The Difference Between DIP, DI, and IoC</title>
      <link>https://bytecrafted.dev/posts/software-design/dependency-inversion-principle-vs-dependency-injection-vs-ioc/</link>
      <pubDate>Fri, 20 Jun 2025 02:30:20 +0530</pubDate>
      <guid>https://bytecrafted.dev/posts/software-design/dependency-inversion-principle-vs-dependency-injection-vs-ioc/</guid>
      <description>Confused by DIP, DI, and IoC? This guide breaks down the key differences with a simple analogy and C# examples so you can ace your next technical interview.</description>
    </item>
    <item>
      <title>410 Gone</title>
      <link>https://bytecrafted.dev/410.html</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://bytecrafted.dev/410.html</guid>
      <description>This page has been removed.</description>
    </item>
  </channel>
</rss>
