Welcome to my YouTube channel! My name is Mohamad Dbouk, and I'm a software engineer with a passion for cloud technologies, Azure, C#, .Net, and DevOps. With over ten years of experience in the industry, I'm excited to share my knowledge and experiences with you.

On this channel, I'll be sharing tips and tricks on how to build solutions, grow your skills, and navigate the world of software engineering. Whether you're a beginner or an experienced developer, I'm here to help you level up your skills and achieve your goals.

Join me as I share my thoughts and experiences, and let's learn and grow together in this exciting field. Don't forget to subscribe and hit the notification bell to stay up to date with my latest videos. Thanks for tuning in!


Mohamad Dbouk

In case you missed it… Learn how to run AI locally in .NET with Ollama + Docker + .NET, all free, all offline, no api keys.

You can check out the blog here: mdbouk.com/run-local-ai-models-in-.net-like-a-boss… or watch the youtube video here: https://www.youtube.com/watch?v=e5g8B...

5 months ago | [YT] | 2

Mohamad Dbouk

Great job creating a long-running process! BUT…

You now face a serious challenge: how to cancel running jobs. This is crucial when dealing with incorrect or abandoned jobs.

No worries—I’ve got the solution for you! 🎯

With Redis Pub/Sub and CancellationTokenSource, you can implement a robust cancellation process for your background jobs.

Here’s what you’ll learn in my latest video:
1️⃣ How to use Redis Pub/Sub to register a cancellation event
2️⃣ How to leverage a ConcurrentDictionary for thread-safe storage
3️⃣ How to integrate CancellationTokenSource and CancellationToken into your existing jobs

Watch the video now

1 year ago | [YT] | 2

Mohamad Dbouk

It’s time to build a long-running job process in .NET!

In my latest video, I’ll show you how to create a long-running operation from scratch and refactor a CSV import endpoint to use background jobs. This approach makes your app faster, more efficient, and more resilient.

Here’s what you’ll learn:
1️⃣ Setting up long-running jobs from scratch
2️⃣ Refactoring CSV imports to free up resources
3️⃣ Improving performance with background operations
4️⃣ Check job status (running, completed, failed, etc.)

Watch it now and let me know what you think!

---------------------------
📨 Black Friday sale: Free cookies* for the first 100 email subscribers! mdbouk.com/


* virtual cookies

1 year ago | [YT] | 0

Mohamad Dbouk

Finally, a Feature We Actually Need!

Caching in .NET has always been a challenge. You have IMemoryCache for speed and IDistributedCache for scalability, but combining the two? That’s been a headache—until now!

With .NET 9, we get HybridCache, a powerful new API that bridges the gap, delivering the best of both worlds.

Watch the video here 👇

1 year ago | [YT] | 2

Mohamad Dbouk

I’ve been doing some .NET multitenant videos in the last couple of months. What other aspects of multitenant architecture are you interested in for future videos? Let me know in the comments below

https://youtu.be/4rlF2Gn7Hkg

https://youtu.be/b4fbBr7jdgw

https://youtu.be/gHfSB0LFs4U

1 year ago | [YT] | 1

Mohamad Dbouk

Do you ever miss the days when programming was all about solving complex problems, rather than following the latest trends?

Recently, I had a challenging task that required data manipulation across different objects. It took me back to the early days of my programming journey, reminding me of the pure joy of problem-solving and creativity.

In a world filled with new tools and trends, it’s easy to lose sight of the basics. These moments remind us of the importance of good problem-solving skills.

Have you had similar experiences lately? Share your stories in the comments. I’d love to hear about your challenges and successes!

(Sorry dark mode guys for the white image background 😅)

1 year ago | [YT] | 3

Mohamad Dbouk

Hey everyone,

It’s been a while since my last video, and that’s because I’ve been working on something exciting!

I’ve just launched my first course on Coursera: “Advanced .NET with TPL & PLINQ: Conducting Performance Boost.”

If you’re into .NET and interested in parallel programming and multithreading techniques, this might interest you

Check it out here: www.coursera.org/projects/advanced-net-with-tpl-an…

And as always, happy coding

1 year ago | [YT] | 4

Mohamad Dbouk

Hey! I just had an incredible interview with Nick Cosentino, a principal software engineering manager at Microsoft, and I think you’ll love it!

We talked about how I went from coding as a kid to becoming a software engineer. I share important tips for starting a tech career and show my latest project: a video game built with Blazor!

Curious? Watch the full interview here 👇

And as always, Happy Coding
Mohamad

1 year ago | [YT] | 2

Mohamad Dbouk

Do you struggle with syncing your local .NET application settings with the cloud environment?

Do you want a quick and simple solution to get all the environment variables from Azure App Service into your local .NET user secrets?

I’ve got you covered.

azure-sync is a shell script tool that allows you to retrieve all environment variables, including Azure KeyVault secrets, from a specified Azure App Service and add them to your local .NET secrets.

I’ve written a detailed blog post explaining how to use azure-sync and the benefits it offers. I believe this tool will be a valuable addition to your development toolkit.

Check it out here: mdbouk.com/azure-sync-sync-your-azure-app-settings…

You are also welcome to check the source code here: github.com/mhdbouk/azure-sync

Happy Coding!

1 year ago | [YT] | 3

Mohamad Dbouk

So you’ve built a multi-tenant application,

but now you have a problem

How do you manage tenant-specific app settings?

How do you register a new tenant without a complex solution?

And how to manage multiple tenant databases within a single application?

In this video, I’ll show you how to solve these challenges using Azure App Configuration Store.

Watch the video here 👇

Happy Coding!

1 year ago | [YT] | 1