About Us:
NCRi is a digitally powered, human delivered Global Customer Experience Management organization with multiple locations in Canada and abroad. We provide a wide range of business solutions to help businesses thrive. We are sought-after solutions partner for flawless AR, Omni Channel CX, Digital Transformation, and Smart Software solutions.
Our mission is to deliver elevated customer experiences to our clients, leveraging deep operational knowledge and process expertise, a strong and versatile technology stack, and a diverse geographic footprint. We focus on engaging early with our clients and leverage a consultative approach to deeply understand our clients’ brands, and design customized solutions to complex customer challenges.
Mobile Engineer (Flutter / Native)
Location: Hybrid (Karachi,Pakistan)
Type: Full-time
Reports to: Software Architect / Tech Lead
Works with: Product, Full-Stack, QA/SDET, fractional DevOps
We’re looking for a Mobile Engineer (Flutter / Native) to own end-to-end delivery of high-quality mobile apps. You’ll turn product requirements into smooth UIs, robust state management, reliable offline behavior, and production-ready releases on Google Play and App Store. You care about performance, reliability, accessibility, security, and observability as much as shipping features.
Core Responsibilities (include, but not limited too)
-
Feature delivery: Build user flows/components in Flutter/Dart (preferred). Create/maintain native modules (Android/iOS) when device capabilities need it.
-
State management & architecture: Choose and implement pragmatic patterns (Bloc, Riverpod, Provider, Redux) with clean architecture (layers, DI, SOLID, testable boundaries).
-
Networking & APIs: Integrate REST/GraphQL/gRPC/WebSockets; handle retries, timeouts, exponential backoff, pagination, idempotency, and error contracts; respect API versioning.
-
Offline-first: Local storage (Hive/Drift/SQLite/Room/CoreData), background sync, conflict resolution, cache invalidation, and graceful connectivity handling.
-
UI/UX quality: Pixel-perfect from Figma; support dark mode, dynamic type, RTL/localization, a11y (screen readers, touch targets, contrast), and proper empty/error states.
-
Performance: Maintain 60fps; profile jank/memory/CPU; lazy lists, image caching, deferred loading; reduce APK/IPA size (tree-shaking, R8, etc.).
-
Notifications & deep links: Push (Firebase/APNS), channels/topics; universal/app links and navigation/back-stack hygiene.
-
Security & privacy: Secure storage (Keychain/Keystore), basic root/jailbreak awareness, cert pinning where applicable, sensitive logging redaction, and permission flows.
-
Analytics & crash reporting: Instrument events/funnels (Firebase/Segment/Amplitude), Crashlytics/Sentry, and add observability hooks (logs/metrics/traces).
-
Testing: Unit, widget/golden, and integration tests; mockable services; flaky-test governance; smoke tests in CI (Codemagic/GitHub Actions/Bitrise/Azure DevOps).
-
Release engineering: Automate build/signing with Fastlane or native tooling; manage store assets, release notes, staged rollouts, feature flags, and rollback plans.
-
Collaboration & docs: Break down stories, estimate, write READMEs/runbooks, participate in PRs, demo features; partner with QA on acceptance criteria.
Requirements
-
3-6+ years building and shipping mobile apps; 2+ years with Flutter/Dart and at least one production app on Play/App Store.
-
Strong command of state management (Bloc/Riverpod/Provider/Redux) and navigation patterns.
-
Experience consuming REST/GraphQL APIs; handling auth flows (OAuth2/OIDC), errors, retries, pagination.
-
Offline-first experience: local storage, background sync, conflict resolution.
-
Proficient in testing (unit, widget/golden, integration) and mobile CI (Codemagic/Fastlane/GitHub Actions/Bitrise).
-
Performance profiling and optimization (rendering, memory, startup, bundle size).
-
Security hygiene (secure storage, permissions, basic device integrity, safe logging).
-
Analytics/crash reporting (Firebase/Crashlytics/Sentry/Amplitude/Segment) and feature flags/remote config.
-
Familiar with store submission processes, signing, provisioning profiles, and staged rollout practices.
-
Git, PR reviews, and clear communication/documentation skills.
Bonus (nice-to-have): Native Kotlin/Swift; platform channels; camera/media pipelines; maps/geofencing; IAP/subscriptions; certificate pinning; A/B testing; integrating LLM/AI features on-device or via APIs
Additional Information
-
NCRi welcomes and encourages applications from people with disabilities. Accommodations are available on request for candidates taking part in all aspects of the selection process.
-
Please note that any offer of employment will be conditional upon the completion of background and reference checks, including a criminal record check and/or credit check (where applicable).
-
We appreciate all applications; however, only those shortlisted will be contacted by our Talent Acquisition Team.