ALHASAN
FARAG

The Journey
Software Engineering Student
Pursuing my Software Engineering degree with strong academic foundations in Data Structures, Algorithms, OOP, Visual Programming, Computer Networks, and Architecture.
Self-Taught Programmer
Fell in love with programming through Sketchware, then expanded into mobile apps, web development, and UI design.
Microsoft Certified: Azure Fundamentals
Validated expertise in core cloud concepts, Azure security, compliance, architecture, and governance.

Cisco Certified: Network Defense
Validated expertise in network security monitoring, firewalls, access control, cloud security, cryptography, and security incident evaluation.

App Store & Google Play
I own the release end to end on both stores - from a signed archive to a listing that passes review and reaches users. The discipline is the same either way; the two platforms just disagree about the details.
Apple App Store
- Xcode archive, validate and upload through App Store Connect, with certificates, provisioning profiles, bundle identifiers and capabilities kept in order.
- TestFlight builds for internal and external testers, including Beta App Review before an external group goes live.
- App Review Guidelines in practice: App Privacy details, in-app account deletion, permission purpose strings, and export compliance on every build.
- Store presence per device class - screenshots at each required display size, localized metadata, keywords and promotional text.
- Phased release with version and build numbering, and rejections handled properly: read the resolution centre, fix the real cause, resubmit.
Google Play
- Signed AAB/APK release builds with Play App Signing and versioned release tracks.
- Store listing and ASO: title, descriptions, keywords, screenshots, feature graphic, and localized assets.
- Policy work in full: Data Safety form, privacy policy, permission declarations, target API level, and content rating.
- Internal, closed and open testing tracks, then staged production rollouts with release health watched.
- Post-launch operations: crash and ANR tracking, update releases, reviews, and developer account management.
Telegram Bots
I build Telegram bots as real services, not scripts: a webhook behind a secret token, state that survives a restart, and behaviour that holds up when a group starts hammering it.
- Webhook-first delivery with a secret token and verified updates, long polling kept for local development only.
- Conversation flows as state machines - each chat keeps its own step, so a half-finished order or form resumes instead of restarting.
- Inline keyboards and callback queries, command menus, and deep links that carry a payload straight into the right flow.
- Rate limits treated as a design constraint: queued sends, backoff on 429 and retry_after, and message edits instead of spam.
- Media, documents and invoices handled through the Bot API, with group and channel permissions set deliberately.
- Arabic and English in one bot, and deployment on a container with the token in the environment, never in the code.
Extensive experience leveraging AI tools, prompt engineering, and intelligent assistants (Claude, ChatGPT, etc.) to accelerate development and solve complex engineering problems.
Cross-Platform Environments
Windows is where I go deep; macOS and Linux I work in comfortably. Mobile development makes that spread necessary rather than optional - an iOS archive needs macOS and Xcode, while the Android and web toolchain runs on any of the three.
- Windows in depth: boot failures, drivers, imaging and reinstalls, and performance problems traced to a cause rather than guessed at.
- Enough command of macOS and Linux to build, sign and release from whichever system the target platform requires.
- Virtual machines, WSL and dual boot for isolated environments: a clean install to test against, a Linux userland beside Windows, disks and partitions handled properly.
- A broken toolchain is my problem to solve: SDKs, environment variables, PATH and platform-specific build errors.
Solid hands-on experience with version control (GitHub), CI/CD & workflow automation (GitHub Actions, n8n), containerization (Docker), and API testing (Postman).
How I Work
Ship the whole loop
A feature isn't finished at the happy path. It's finished when the failure, the empty state and the retry are handled too.
The server decides
Money, state and permissions live behind the API. Clients render; they don't get to be trusted.
Arabic is not a translation layer
RTL, numerals and typography are decided at the start of a design, never patched in at the end.
GasGo - Gas Delivery Platform
A complete home gas delivery platform built in 2026 together with a friend: a customer app, a driver app, and a two-tier admin dashboard for both the platform owner and every licensed delivery agency.
- Customer app: browse cylinder types, pick an address, track delivery live, and pay cash or by card.
- Driver app: live delivery requests, real-time tracking, and cash-on-delivery collection.
- Platform admin dashboard: manages agencies, drivers, cities, revenue, and subscriptions.
- Agency dashboard: gives each licensed franchise its own view of orders, drivers, and wallet.
The problem
Ordering home gas means calling and then waiting blind - no confirmed price, no ETA, no idea where the driver is. On the business side every licensed agency runs its own drivers, orders and cash with no shared system behind it.
The approach
One product across three surfaces: a customer app, a driver app, and role-based dashboards for the platform owner and for each licensed agency - all on a single API, so one order moves through one lifecycle that every role sees from its own view.
The build
NestJS and Prisma over PostgreSQL, with socket.io pushing order status and driver location live. Both apps are Flutter, Arabic-first RTL, with OpenStreetMap for address pinning and tracking. The order lifecycle (pending, assigned, loading, on the way, delivered) and the revenue split are enforced server-side, not in the client.
Status
Deployed on Railway as one production stack - PostGIS-enabled PostgreSQL, Redis and the API - with the apps building against that live environment.
Stack














Block Siege
A strategic block-defense mobile game published on Google Play. Players build, defend, and siege block-based towers with a tactile visual style and arcade pacing.
- Live on Google Play with real player sessions.
- Tower-defense mechanics with siege combat.
- Polished dark fantasy UI and icon identity.








Unimove
A ride app for private university students in Jordan, letting students request on-campus shuttle rides and letting fleet leaders dynamically assign buses to loading zones in real time.
- Secure sign-in restricted to university Microsoft accounts (Entra ID).
- On-demand ride requests with live transit status tracking.
- Fleet leader dashboard for dynamic bus assignment across campus loading zones.


Cloud Toys
An online toy store serving customers in Jordan, built with a clean storefront experience for browsing products and placing orders.





Alhasan Code - Learn Programming Platform
An interactive web platform for learning programming, empowering aspiring developers to master coding skills with practical lessons and structured paths.
- Interactive programming tutorials and structured developer roadmaps.
- Clean responsive web UI designed for self-paced learning.
- Live platform deployed on Netlify.

QR Code Generator
A QR code generator app I built in 2022 with Sketchware, after coming back from a break from programming for school - my second project, and the first sign the passion hadn't faded.
- Generates QR codes for links, WhatsApp, phone numbers, text, YouTube, Facebook, and more.
- Saves generated codes as images directly to the device.
- Supports Arabic and English.




Arabic Grammar Rules
An educational Arabic grammar app I built in 2020 with Sketchware - my very first programming project, and the spark that started my whole journey into software.
- Full Arabic grammar curriculum organized into clear lessons.
- Built entirely in Sketchware before I knew how to write real code.




Have a project
in mind?
Open for internships, freelance, and collaboration.