Browse Articles

ASP.NET Core & C# Development

6 articles

ASP.NET Core, Web APIs, Entity Framework, Dependency Injection, authentication and production-ready .NET development.

Architecture & Engineering

10 articles

Practical software architecture, Clean Architecture, modular monoliths, and building maintainable systems that scale.

Design Patterns

7 articles

Classic GoF patterns explained with modern C# examples.

Testing

3 articles

Unit testing, integration testing, test-driven development (TDD), mocking, and strategies for building reliable software.

AI Engineering

2 articles

AI-assisted software development, LLMs, developer productivity, coding assistants, and the evolving role of artificial intelligence in software engineering.

Career & Self-Development

4 articles

Communication, teamwork, leadership, productivity, body language, developer mindset, and professional growth in software engineering.

  • Why Soft Skills and Body Language Matter for Software Developers

    When we think of software developers, we often imagine them focused only on the (messy) code. But in an usual collaborative work environment, technical skills alone are not enough. Body language does significantly influence how you are perceived, how you connect with your team, and how effectively you convey your ideas.We will try here in a few points to summarize why body language is important for developers and what we should pay attention to:

  • The Adapter Pattern in C#: Bridging Incompatible Interfaces

    The Adapter Pattern is a structural design pattern that allows objects with incompatible interfaces to work together. Rather than modifying existing code to fit a new system, the Adapter Pattern lets us wrap it with a new interface, acting as a bridge between mismatched parts of your application.

  • API Versioning and Integration Testing in ASP.NET Core

    In the previous post, we have paid attention on our project structure and organizing the code in multiple layers to achieve better readability and easier maintenance in the future. Now we can focus on long-term sustainability through versioning and testing.

  • Setting up production-ready ASP.NET Core Web APIs with FluentMigrator

    Welcome to the first post in the “.NET Core Web API – Step-by-Step Best Practices” series. In this series, we’ll walk through building a modern, clean, and maintainable Web API using .NET 9. Each post will focus on a specific aspect, from project setup and architecture to migrations, logging, testing, and versioning.

  • Understanding the Prototype Pattern and Deep Cloning in C#

    In software development, there are scenarios where creating multiple objects with similar attributes and configurations is necessary. Instead of constructing each object from scratch, a more efficient approach is to duplicate an existing instance. This is precisely what the Prototype Design Pattern facilitates.

  • How to Use Mocking Effectively in C# TDD Pipelines

    In the last post we have discussed core principles of unit testing and TDD. In this post, we’ll walk through a simple example of how to use Moq as mocking framework and Dependency Injection with NUnit in the context of Test-Driven Development (TDD) in C#. This combination allows clean and maintainable tests by mocking dependencies and focusing on the behavior of the system under test.

  • Dependency Injection with the Strategy Pattern in ASP.NET Core

    In the previous post, we gave an introduction and explained the basic concept of the Strategy Pattern. Now, we want to go a bit further and demonstrate how it works in practice alongside a dependency injection in .NET Core. Instead of manually instantiating strategies, we let the ASP.NET Core DI container inject the correct implementation at runtime.

  • How To Pay Programmers Less

    Before we kick off, just a quick mention that the intention of this post is pure fun, so please don’t take it too seriously! :) ….