Hey, I’m mar.
I’m a product engineer. I build interfaces that are delightful to use, on systems that hold up in production.
Based in Cairo, Egypt (UTC+2/+3), working remotely, on hours that overlap a full European day and most of a US East Coast morning. Open to relocating for the right role, which would need visa sponsorship.
Experience
Loom CairoV-Lab ’25Founding engineer. A search engine for local fashion aggregating 300+ Egyptian brand sites. 40,000+ users, 70+ brand partnerships.
Work
Client work
Code
Stack
01Languages
02Frontend
03Backend & Database
04Infrastructure
05Tooling & quality
06Workflow & AI
07Design
Resources
The case that interface quality is a stack of decisions small enough that most people never notice one was made.
Taught me the question is never “does this look good” but “does this feel right”, and that the honest answer is usually no.
Naming the thing precisely, and tying every choice to its purpose. It is the writing standard for this site, down to the commit messages.
The permission slip for the unglamorous manual work at the start of anything, and the reason I stopped automating a problem I did not have yet.
Still the most rigorous writing on interface behaviour anywhere, and most of it is platform-independent once you stop reading it as iOS documentation.
The event loop, Web APIs and the task queues drawn frame by frame. The first time the runtime stopped being a place where my code mysteriously happened.
Two hours every six weeks watching real people use the thing, for everyone on the team. The closest thing to a silver bullet I have read about, and the cheapest.
The clearest statement of where the leverage actually is with agents: not the phrasing of the prompt, but what the model can see when it starts.
A reference I still open mid-build. Ease-out for entrances, and a curve you can point at instead of a vibe you can’t.
Large-scale usability research on checkout and commerce flows, which meant I could stop guessing at the parts of a storefront everybody guesses at.
Data-ink: every mark on the screen should be carrying information. The same argument as removing every border, arrived at forty years earlier.
Two things I had used interchangeably for years, drawn side by side until the difference was obvious and permanent.
Long, unedited builds where the interesting part is the decision that gets reversed twenty minutes in.
Elsewhere
Colophon
This site
and what it is made of