About
Mohammad Jashem
I build mobile apps that have to survive real hardware — low-end Android on Mali and PowerVR GPUs, dropping packets on flaky networks, the kind of devices most engineers never test on. Based in Dhaka, Bangladesh. Seven years shipping production apps in Flutter, React Native, and Expo — and the release pipelines that keep them alive for years.
How I got here
I started building mobile apps in Dhaka in 2019 — full-stack, end to end, no one to hand the hard parts to. The devices my apps run on aren't the ones in conference demos. They're low-end Android handsets, running out of storage mid-video, on networks that drop half the packets. That hardware is my teacher. It punished every shortcut I took until I stopped taking them.
Seven years in, I've shipped apps to Google Play, the App Store, and Amazon Appstore; kept one of them alive for the entire journey, from Flutter 1.x through the latest stable; and migrated another when the platform itself turned hostile. Somewhere along the way I stopped writing every line myself — I run an AI-assisted loop now, and it lets me take on migrations and long-running maintenance that would stall a single engineer working alone.
The typing is delegated. The engineering judgment isn't.
How I think
- Architecture before code I map the system first — state-management boundaries, platform contracts, the failure modes that will actually bite. I patch around a problem twice; the third time, I treat it as structural and redesign. The code that follows is boring because the decisions were already made.
- The AI types, I judge I decompose the system into tasks small enough to be unambiguous, write context-rich prompts that load the architecture, and have the AI generate against them. Then I review every diff against the architecture and the failure modes I already know. When something breaks, I drive the debugging — I know which GPU or which API is lying.
- Releases ship themselves Once a merge passes review, it flows through the pipeline to Play, App Store, and Amazon without a human babysitting the build. Releases stop being an event and become a side effect of good merges.
What I've learned
Kahf Kids — know when to stop patching. The core video flow kept ANR-ing on Mali and PowerVR GPUs, a platform-view problem I patched twice. The third time I called it structural and migrated the app from Flutter to React Native / Expo in three months, parental-control boundary intact. The lesson stuck: a recurring bug isn't a bug, it's an architecture telling you it's wrong. Read the case study →
NCC App — architecture ages well if you maintain it. Seven-plus years on one Flutter codebase, 1.x through the latest stable, 70+ feature modules on Clean Architecture, across three stores. Zero major incidents, no missed release cadence. The lesson: longevity isn't luck, it's a maintenance calendar — one minor bump a sprint, one major migration a quarter at most. Read the case study →
Where I've worked
- 01
Kahf Yazılım A.Ş. — Software Engineer
April 2025–present · Türkiye. AI-native mobile architecture; led the Kahf Kids Flutter → React Native / Expo migration.
- 02
Axilweb — Senior Software Engineer (part-time)
August 2020–present. Delivered and maintained multiple production apps; built the mobile CI/CD infrastructure that ships to three stores.
- 03
Audacity IT Solutions Ltd. — Senior Software Engineer
September 2021–February 2025. Flutter architecture — Bloc/Riverpod, Clean Architecture, modular project structures, and R&D on the hard problems.
- 04
GPS Bangla — Full Stack App Developer
February 2019–May 2020. Mobile and backend from requirements, end to end, without supervision. Where the story started.
The lab I run
I don't just write the apps — I operate the infrastructure that builds, reviews, and ships them. That's why the CI/CD and migration work holds up end to end. A few things I've built and run myself:
- Self-hosted CI/CDDrone CI on a Proxmox cluster, building and deploying through a Cloudflare tunnel with no exposed ports. How it's wired →
- Zero-trust homelabCloudflare Tunnel and Traefik fronting self-hosted services behind a single tunnel — no inbound ports on the router. The setup →
- Cloud dev workspacesCoder on Docker, per-workspace subdomains so every project gets an ephemeral, reproducible environment. The deployment →
- AI code review in the loopEvery merge reviewed against the architecture before it ships — review time drops from days to near-instant without losing rigor. How it works →
What I won't compromise on
I'm Muslim, and I only take on ethical work — I don't engage in haram projects. I stand for justice and human rights, including Palestine. Beyond that, I hold my work to a high technical bar: real architecture, real tests, real releases. If a project can't meet that bar, I'll say so before we start rather than ship something I have to defend later.
Let's build something that lasts.
If you have a mobile app that needs to ship — and stay shippable for years — tell me about it. Or email me directly at [email protected].
Start a conversation