Paper.id is a Bank Indonesia–licensed payment service provider. We run two production Flutter apps — the main Paper.id app and our wallet app — used by Indonesian businesses to invoice, pay and get paid. When our app is wrong, someone's money is wrong.
What You'll Do
- Build and ship features across both apps, from design handoff through release, crash triage and the fix
- Own your features in production — Crashlytics, Performance and Analytics are yours to watch and act on
- Make payment flows survive real Indonesian mobile networks: retries, idempotency, and correct state when the response never arrives
- Extend our shared design system and reusable components rather than forking widgets per screen
- Work directly with Product, UI/UX and backend engineers on what gets built and how
What We're Looking For
Must have
- 3+ years building and shipping production mobile apps, with Flutter in production
- Strong Dart and BLoC. We run flutter_bloc with bloc_concurrency and get_it — Riverpod or Provider experience is fine if you'll go deep on BLoC
- You've shipped to both App Store and Play Store: release cycles, store review, staged rollouts, and supporting the app versions already on people's phones
- REST integration and a real grasp of retries, timeouts and idempotency on unreliable connections
- Automated tests as part of the work — widget and bloc-level, not manual QA only
- Ownership. You take a feature to done, chase down the crash that's yours, and raise the problem you found rather than routing around it
Nice to have
- Familiarity beyond mobile — our Go services or the Angular web app. Enough to trace an issue across the API boundary and read the code on the other side rather than handing it off
- Payments or fintech — QRIS, virtual accounts, e-wallets, disbursement
- Enough native Android/iOS to debug platform channels, push (APNS/FCM) and permissions
- Design system or shared package work
- Mobile CI/CD and release automation
- Feature flagging / remote config
Our stack
Flutter (Dart 3.8)
- Firebase — Crashlytics, Analytics, Performance, Remote Config, FCM
- shared internal design system package
Around you: Go services over REST
- Angular 19 + NgRx on web
- MySQL, ArangoDB, Redis
- GCP, Kubernetes
How We Work
Small squads with genuine autonomy and genuine accountability. Docs and code review are in English.