Full-stack software engineer

From curiosity to projects, contests, and communities.

A full-stack engineer, open source contributor, and three-time ACPC finalist who also happens to be a chess enthusiast and football player. This is a curated look at the work, the contests, and the communities that shaped that journey.

My story, chapter by chapter

Each entry connects a decision to an outcome: a project, a role, a contest, or a mentoring moment that shaped how I think and build.

Mentor and Instructor

ICPC Community at Zagazig University · Mar 2022 – Aug 2024

This chapter was about turning experience into leverage for other people. In the ICPC Community at Zagazig University, the work was not just explaining algorithms. It was helping teams build contest instincts, writing problems, and making weekly practice feel like a repeatable system.

ACPC Finalist

ACPC Competition

Qualifying for the ACPC finals three times made competitive programming more than a side activity. It became long-form training in reading under pressure, choosing the right algorithm, and explaining an idea to a team quickly and clearly.

Software Engineer · SciCave

Cairo, Egypt

At SciCave, I worked on real web applications where a screen working locally was only the beginning. The role connected React, Next.js, Laravel, Cypress, Docker, and AWS with requirements work, UI decisions, testing, and deployment.

TypeScriptReact.jsNext.jsLaravelPHPCypressDockerAWS

NASA Space Apps - 3rd Place & Global Nominee

NASA Space Apps in Ismailia

With team Pyroguardians, the challenge was turning a fast idea into something presentable and credible. Third place and a global nomination were not just results. They were proof that the team could narrow the idea and build under real time pressure.

IEEEXtreme 17.0 - Top 15 in Egypt

IEEE

IEEEXtreme was a different kind of test: long hours, many problems, and constant decisions between speed and accuracy. Reaching the top 15 in Egypt out of 198 teams made the experience a clear marker of technical discipline.

IT Committee Head

ZagEng Team

At ZagEng, automation became a way to remove repeated work, not just a technical experiment. I led the IT committee in building 13+ Telegram bots and a Django dashboard, then connected them with Make.com flows to serve students faster.

Arabi.js

Arabi.js started as a question about language, tooling, and who gets to feel at home while programming. I used Babel's parser ecosystem to translate Arabic keywords and identifiers into valid JavaScript, turning a language experiment into a working developer tool.

Future note: The project is quiet publicly for now, but there are pending development plans. Expect stronger language support and a more polished writing experience when the next update lands.

JavaScriptPEG.jsBabel
Open project
Arabi.js

Rasm

Rasm was my early attempt to make mathematical ideas visible and programmable. It combines function plotting, geometric drawing, animation, and a custom expression language, which made it a serious exercise in parsing, rendering, and interface design.

Future note: There are still pending development plans for Rasm. The next chapter is meant to make the expression system and visual output feel much more capable.

JavaScriptHTMLSassPEG.jsWebpack
Open project
Rasm

Recent writing

Only the two newest posts live here, so the homepage stays a story rather than an archive.