All projects

JayWalk

2025 — Present · Lead Flutter Engineer (Tech For Palestine)

JayWalk connects activists and organizations to create, discover, and join assemblies through an interactive map — rated 4.8★ on Google Play. I joined when the app had been effectively dead for over a year, and brought it back to life.

JayWalk screenshot 1
JayWalk screenshot 2
JayWalk screenshot 3
JayWalk screenshot 4

The Challenge

The codebase had been unmaintained for more than a year: broken flows, an aging Provider/ChangeNotifier state layer scattered across 19+ ViewModels, sluggish network calls, layouts breaking on small screens, and a backlog of unresolved crashes. Users were leaving.

Results

  • Over 70% measured performance improvement across critical screens.
  • App revived on both stores — 4.8★ rating and growing installs.
  • Zero-crash releases since the rebuild; development is active and ongoing.

The Approach

  1. 01Migrated the entire state layer from Provider/ChangeNotifier to BLoC on Clean Architecture (Bloc → UseCase → Repository → data source), removing 65+ scattered notifyListeners() calls.
  2. 02Rebuilt the networking layer with response caching and request de-duplication, dramatically cutting redundant calls.
  3. 03Repaired Firebase Cloud Messaging end to end — background handlers, iOS permission recovery, and reliable delivery.
  4. 04Fixed responsive breakpoints for small and mid-range devices (down to compact Android screens).
  5. 05Shipped a stream of new features: notifications, duplicate-assembly flows, map recentering, proximity sorting, filters, and an onboarding overhaul.

Built With

  • Flutter
  • Dart
  • BLoC
  • Clean Architecture
  • GetIt
  • Firebase Cloud Messaging
  • Google Maps
  • CI/CD