Mohamed Halawa

Hi! I’m Mohamed

Backend engineer. Distributed systems & FinTech.

Get In Touch

Distributed systems. FinTech. Production patterns. The reasoning behind the decisions.

Traces

How to Get Roam-Style Bullet Navigation in Obsidian

How to replicate the click-to-zoom outliner interaction from Roam, RemNote, and Logseq in Obsidian, with two plugins and a CSS snippet for styled bullets.

Hot Path: How to Identify and Optimize It in .NET

A hot path is code that runs on every request — small inefficiencies there compound into P99 spikes users actually feel. How to find hot paths with profilers and fix them in .NET.

P50, P95, P99, and the Average: What Latency Numbers Actually Tell You

Average response time hides the worst user experiences. P99 can run 100× slower than P50 on the same dataset. What P50, P95, and P99 mean, why they matter, and how to read them together.

SOLID Principles Series

Code that looked fine — until it wasn't. That's where each principle begins.

Grokking Algorithms Book

Notes and visual takeaways from Grokking Algorithms, 2nd edition, by Aditya Y Bhargava. Covers search, sort, graphs, trees, dynamic programming, and more.

Async/Await in C# Series

From state machines and continuations to exception handling and design patterns - eight concise parts covering everything you need to write async C# with confidence.