Skip to content
View hossam1244's full-sized avatar

Block or report hossam1244

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
hossam1244/README.md

👋 Hi, I'm Hossam Rakha

Senior Software Engineer with 8 years shipping production software:

  • 📱 15+ mobile apps to Google Play & the App Store — Flutter (8 production client apps), native Android (Kotlin/Jetpack), native iOS (Swift/SwiftUI), React Native
  • 🛠️ Django/DRF backends — fintech, marketplace, insurance, telecom and SaaS.
  • 📦 9 OSS libraries distilled from that work, across Dart, Python and Kotlin — token refresh, idempotency, offline queues, error envelopes, the transactional outbox

I've spent years on both sides of the API contract — so the backends I build are the kind I always wanted as a client developer: clean contracts, honest errors, and performance that holds up on real devices and real networks.

🚀 Featured work

NovaBank — a full-stack banking platform (portfolio system: one backend, three clients, one contract):

Repo Stack Highlights
novabank-api Django · DRF · Celery · Channels Idempotent payments on a double-entry ledger, RBAC, audit trail, WebSocket updates · 89 tests / 90% cov
novabank-flutter Flutter · Bloc Biometrics, secure storage, synchronized JWT refresh, offline-tolerant cache
novabank-android Kotlin · Compose · Hilt Lock-guarded refresh interceptor, Room cache, MVVM + Clean Architecture
novabank-ios Swift · SwiftUI + UIKit async/await client, Keychain, Face ID, xcodegen-managed project

More products: marketpulse-api — marketplace backend with a 500k-product catalog, cursor pagination, cache-aside and stock-reserving checkout (measured: 1 vs 49 queries) · crewops-rn — offline-first React Native field app with a persisted mutation queue.

📦 Libraries (9)

Dart / Flutter — sync_refresh: one refresh for concurrent 401s (single-flight, replay-once) · mutation_queue: offline-first persisted FIFO writes with retries and dead-lettering · idempotency: client-side idempotency keys that survive retries and restarts · poll_until: async polling with backoff, deadline and cancellation

Python / Django — django-idem: Stripe-style request idempotency for DRF · drf-envelope: uniform {error: {code, message, details}} envelopes with stable codes · django-event-outbox: transactional outbox with locked relay, retries and lease expiry · drf-request-id: request-ID middleware with ContextVar propagation and logging filter

Kotlin / JVM — auth-refresh: lock-guarded OkHttp token refresh with single replay and session teardown

Pairs worth noticing: idempotency (client) + django-idem (server) close the double-submit hole end to end; sync_refresh, auth-refresh, and the refresh logic inside the banking clients are the same contract in three languages.

💻 Tech Stack

Backend — Python · Django · DRF · GraphQL · Celery · Redis · Channels · PostgreSQL · Docker · GitHub Actions · Nginx/Gunicorn · AWS

Mobile — Flutter/Dart · Kotlin/Jetpack · Swift/SwiftUI/UIKit · React Native · Firebase · Room · Core Data

Practices — Clean Architecture · MVVM · TDD · SOLID · REST & GraphQL API design · CI/CD · code review

🌐 Find me

LinkedIn Dev.to Twitter

Pinned Loading

  1. auth-refresh auth-refresh Public

    Synchronized token refresh for OkHttp — one lock-guarded refresh on concurrent 401s, replay-once, session teardown

    Kotlin

  2. django-idem django-idem Public

    Stripe-style request idempotency for Django REST Framework — replay stored responses, reject key reuse, resolve races

    Python

  3. marketpulse-api marketpulse-api Public

    Local-commerce marketplace API — Django · DRF · 500k-product catalog · cursor pagination · cache-aside · stock-reserving checkout

    Python

  4. novabank-flutter novabank-flutter Public

    Business e-banking mobile client — Flutter · Bloc · biometrics · JWT refresh · WebSocket payment updates

    Dart

  5. novabank-ios novabank-ios Public

    Business e-banking iOS client — Swift · SwiftUI + UIKit · async/await · Keychain · Face ID

    Swift

  6. sync_refresh sync_refresh Public

    Synchronized JWT token refresh for Dio — one refresh for concurrent 401s, replay-once, session teardown

    Dart