User Image


Senior Software Design Engineer Development Simply Put


.NET Software Engineer and Technical Blogger with experience acquired through academic studies, 13+ years of hands-on practical experience and self-learning. Accomplished huge achievements with corporates like ASML, ITWorx, United Technologies Corporation (UTC), Carrier, Otis, Sikorsky Aircraft Corporation, Hamilton Sundstrand, Pratt & Whitney, UTC Fire & Security, UTC Power Corporation and Reliance, and others. Acquired experience working through the software development life cycle (SDLC) starting from its early stages until delivering fully-fledged software solutions.

MEMBER SINCE 12/28/2023

Flagged Enumerations: How To Represent Features Combinations Into One Field

Represent features like [Read, Write, Modify, …] and their combinations into a single field.

👍Chain of Responsibility Design Pattern In .NET C# 👀

➡ It allows passing a request or an object through a chain of handlers. ➡ Once a handler receives a request, it decides whether it can process the req...


👍Design Best Practices In .NET C# 👀

➡ In this article we are going to explore some Design Best Practices that are practically proved to be efficient. ➡ Practices like "Unified Retur...

🤔 When Implementations Affect Abstractions ⁉️

➡ If I ask you: Could your knowledge of the available implementations affect your abstractions design? ➡ Most probably you would say: No, if this happ...


Strategy Design Pattern In .NET C#

➡ One of the behavioral design patterns. ➡ Its main goal is to decouple the behavior of an object from its state by modeling the behavior into an abst...

Mediator Design Pattern In .NET C#

Read this article to learn about the Mediator Design Pattern in .NET C# with code samples.


SOLID: Liskov Substitution Principle Explained In .NET C#

Read this article to understand the Liskov Substitution Principle of the SO(L)ID principles in .NET C#


📑 Cover IO Based Apps With Unit Tests in .NET C# 🧪

Read this article to learn how to split your IO app into smaller modules which you can cover by 100%

Better Enhanced Repository Pattern Implementation in .NET C#

Learn how to implement a better enhanced Repository Pattern following Best Practices to satisfy extended requirements like throttling.

When Not To Use DI, IoC, and IoC Containers in .NET C#

Know when DIs aren’t the right solution, and the better design to use instead in .NET C#


⏰ Best Practice for Using Timers in .NET C# ⏳

When using System.Timers.Timer in your .NET C# application, you might face problems with abstracting it and being able to cover your modules with Unit...

csharp timing

How to Fully Cover .NET C# Console Application With Unit Tests

How could I test a Console application when the input is passed by key strokes and the output is presented on a screen?!! Know the What? and How? to f...

testing unit-tests

Web Scraping in .NET C#

A guide on how to do Web Scraping in .NET C#, with code samples.


Step by step guide to develop a Fluent API from scratch in .NET C# using the Builder Design Pattern

This is not the first time for you to hear about the Builder Design Pattern. However, I promise you that you would find something different in this ar...

A Best Practice for Designing Interfaces in .NET C#

Is it enough to define IMyInterface? do I need IMyInterface as well?


Invariance, Covariance, and Contravariance in .NET C#

Have hard time understanding it? Let me simplify it for you.


This member hasn't published any posts yet.