about / Ownership

I build what makes the product possible.

The stack changes. The responsibility doesn't.

01 / Product

Shape the problem.

Before frameworks and architecture: users, workflows, constraints, priorities and what the product actually has to make true.

02 / Domain

Name the system.

Clear language, boundaries and data ownership make software easier to change because the code starts reflecting the problem instead of accidental implementation details.

03 / Architecture

Protect the important boundaries.

Use the smallest architecture that keeps security, maintainability and future change explicit. Avoid enterprise theatre and premature distribution.

04 / Interfaces

Make the system touchable.

Web and mobile are product surfaces with their own state, accessibility, localization and performance responsibilities.

05 / Delivery

Make it real.

Docker, CI/CD, configuration, observability and production operations complete the product. Software that cannot be safely shipped is not finished.

Engineering range

Proof, not badges.

The technologies are useful because of the responsibilities they let me own across the products above.

Backend

.NET / APIs

  • C# / ASP.NET Core
  • .NET 8 / 10
  • DDD / CQRS
  • Authorization / tenancy
Web

Next.js

  • React / TypeScript
  • SSR / RSC
  • Structured content
  • RTL / localization
Mobile

Flutter

  • BLoC / Cubit
  • Firebase
  • Offline
  • Adaptive UI
Platform

Architecture

  • Modular systems
  • Multi-tenancy
  • Developer tooling
  • Multi-database
Delivery

DevOps

  • Docker
  • CI / CD
  • Cloudflare
  • Deployment
Data

Storage

  • PostgreSQL
  • SQL Server
  • Oracle
  • Firestore
Background

Built through the work.

2023—Present
Cairo / Egypt

Freelance Software Developer

Software product and engineering work across .NET, Next.js, Flutter, SaaS systems, packages and end-to-end delivery.

2018—2023
Cairo University

B.Sc. Computer Engineering

Faculty of Engineering, Cairo University.

Languages

Arabic / English

Arabic native, English fluent.