Skip to content
View sujit70777's full-sized avatar
🏠
Working from home
🏠
Working from home

Block or report sujit70777

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. 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
sujit70777/README.md

Ehsanur Rahman — Senior Flutter Engineer. Native iOS, Android and macOS.

Senior Flutter Engineer

Email LinkedIn Case studies


👋 What I fix

I'm a Senior Mobile & Full-Stack AI Engineer — 7 years of Flutter inside 11 years of mobile — with native iOS, Android and macOS (Swift, SwiftUI, Kotlin). When a package can't do the job, I write the plugin or platform channel myself. I build with AI coding agents and own the architecture and code review. I fix apps that break offline, lose data on sync, fail on real-world edge cases, mishandle payments and subscriptions — and now, AI features that have to respect privacy. I own the work from architecture to App Store and Google Play release, and I've shipped two products of my own solo: Hourwise on the Mac App Store and Repha on Google Play.


🧩 Problems I've solved

The problem What I did Result
Prayer times were wrong at high latitudes. Users in far-northern cities saw times that didn't match their local schedule; earlier fixes had failed. Traced it to the sunrise/sunset calculation; built a new offline prayer-time engine Correct times where they were wrong before, online or offline
A receipt scanner too slow for a FinTech reimbursement flow. Users also waited on a spinner during verification. Native scanner (Swift/Java) behind Flutter; live WebSocket verification progress; offline claims with sync; instant payout ~0.5 s per code; reimbursement ~5–10 s after the scan
Stripe and Apple payments that disagreed in a subscription app. Apple tracks purchases per Apple ID, the app per account. As team lead, redesigned one account-level entitlement model for both payment systems, with duplicate-purchase detection After ~2 years in development, approved and live within ~1 month
Learning apps that broke without internet. Led 6 developers; device as the source of truth with a Firebase/SQLite sync layer Two apps passed 100,000 downloads each
Lawyers losing billable hours. Built Hourwise solo: passive capture, on-device learning from corrections, LEDES exports Live on the Mac App Store; work history never leaves the Mac
Pharmacies ordering stock by phone and paper. A pharmacy in Bangladesh buys from dozens of companies, each through its own medical rep. Built Repha solo: one list split by company and sent to each rep; 73,000+ medicines searchable offline; photo-to-order OCR; Laravel backend and admin Live on Google Play; pilot in Rajshahi; runs at zero hosting cost
Releases took an hour and waited on one laptop. Fastlane + GitHub Actions pipeline ~10–20 minutes per release

Full case studies →


🚀 My products

Repha — pharmacies and medicine reps, in one app

B2B ordering network for pharmacies and pharma companies' medical representatives in Bangladesh · founder and sole engineer · closed source · Google Play · ehsanur.com/repha

Status Problem it solves Stack
Live Orders lost in paper lists and phone calls to dozens of reps; one list is split by company, routed to the right rep and tracked to delivery Flutter · SQLite FTS5 · ML Kit OCR · Laravel · MySQL · FCM
Now Rajshahi pilot: QR onboarding by reps, one-tap repeat orders, supply requests to connected reps Flutter · Laravel · Filament
Next Busy shop owners typing long lists — Bangla voice ordering, built only if pilot pharmacies ask for it On-device speech · Flutter

Hourwise — private timekeeping and billing for lawyers

Private, AI-assisted timekeeping and billing for solo lawyers and small firms · founder and sole engineer · closed source · Mac App Store

Status Problem it solves Stack
Live Billable time lost to forgotten timers; on-device learning assigns work to client matters SwiftUI · AppKit · SQLite/GRDB · StoreKit 2
Now Lawyers still write billing narratives by hand Apple Foundation Models (on-device)
Next Meetings never become time entries ScreenCaptureKit · SpeechAnalyzer · on-device models
Next Firms need seats and sync across Mac, iPhone, Android Python · FastAPI · PostgreSQL · CRDT sync · Flutter

📦 Open source

Package The problem it removes
flutter_crdt_sync_kit Two devices edit the same data offline and one change silently overwrites the other. CRDT merge, Supabase/REST adapters.
local_voice Voice commands that need the cloud, an API key and a connection.
flutter_a11y_lens Accessibility bugs found late by users or auditors — flags WCAG issues live.

My packages on pub.dev →


🛠️ Tools I use to solve them

Flutter, Dart, Swift, Kotlin, Android, Apple, Python, FastAPI, Laravel, PostgreSQL, MySQL, SQLite, Firebase, Supabase, GitHub Actions


🤝 Working with me

  • Remote from Bangladesh (UTC+6). Full-time or contract; no relocation or visa sponsorship required; works with any time zone with a flexible core overlap.
  • Your hours: three years working an overseas team's hours.
  • Async by default: a written update every day — shipped, blocked, needed.
  • Ownership: architecture → code → tests → CI/CD → store approval → maintenance.

Email

Pinned Loading

  1. flutter_a11y_lens flutter_a11y_lens Public

    Live accessibility auditing for Flutter: inspects the running widget tree and flags WCAG violations in real time, with an on-screen debug overlay.

    Dart

  2. flutter_crdt_sync_kit flutter_crdt_sync_kit Public

    Offline-first, CRDT-based local data layer for Flutter — conflict-free merge with pluggable Supabase/REST adapters

    Dart

  3. Jatri---Bangladesh-Transit-App Jatri---Bangladesh-Transit-App Public

    Transit journey planner and ticketing app built on real MRT Line 6 and BRTA route data

    Dart

  4. local_voice local_voice Public

    Privacy-first, on-device voice command recognition for Flutter — no cloud, works offline

    Dart

  5. omr_scanner_flutter omr_scanner_flutter Public

    Cross-platform AR measurement plugin for Flutter wrapping ARKit and ARCore

    Dart