Hoppa till huvudinnehÄll
JobCannon
Alla kompetenser

Mobile Development (iOS / Android / React Native)

Build mobile apps, publish to app stores, optimize UX

⬱ NIVÅ 2Tekniskt
+$30k-
LönepÄverkan
10 mÄnader
Tid att lÀra sig
SvÄr
SvÄrighetsgrad
4
KarriÀrer
I korthet

Mobile development = building iOS/Android apps for users worldwide. Three paths: native (Swift/Kotlin, best performance, $120-200k), React Native/Flutter (cross-platform, 60-70% code reuse, $100-170k), or hybrid (web wrapper, cheapest but limited). Career: Junior (basic list views, $80-110k) → Mid (offline-first, push notifications, API integration, $120-160k) → Senior (architecture, performance optimization, 60FPS animations, $160-210k) over 8-12 months. App lifecycle: design UI, integrate APIs, implement monetization (IAP/subscriptions), handle app store submissions, monitor crashes with Sentry, track user behavior with AppsFlyer.

Vad Àr Mobile Development (iOS / Android / React Native)

Mobile development = building iOS/Android apps. High demand, adds $30k-$55k. Boost: +$30k-$55k

🔧 VERKTYG & EKOSYSTEM
React NativeFlutterSwiftSwiftUIKotlinJetpack ComposeXcodeAndroid StudioFirebaseRevenueCatSentryAppsFlyerCrashlytics

💰 Lön per region

OmrÄdeNybörjareMidErfaren
USA$95k$145k$200k
UKÂŁ55kÂŁ85kÂŁ130k
EU€60k€95k€145k
CANADAC$105kC$155kC$205k

🎯 KarriĂ€rer som anvĂ€nder Mobile Development (iOS / Android / React Native)

❓ Vanliga frĂ„gor

Native (Swift/Kotlin) vs React Native vs Flutter, which should I learn?
Native: Best performance, access to all device APIs, required for complex animations/AR. Swift: 1M+ iOS jobs, strong community. Kotlin: 1M+ Android jobs, also used for servers. React Native: 60% code sharing between iOS/Android, faster iteration, $20-30k cheaper to maintain than two native teams. Skills transfer from web React. Flutter: Dart language (small community), 70% code reuse, beautiful animations out of box, growing demand. For careers: learn React Native if you know JavaScript, learn native if you want max salary/performance.
How do I handle app store rejections?
Apple App Store rejection rate ~25% (most common: missing privacy labels, unclear in-app purchases, inactive features). Avoid: crashing on launch, missing IDFA consent, unclear screenshots. Read the rejection reason carefully, it's specific (e.g. 'Guideline 4.3: Design spam'). Fix, resubmit within 24-48 hours. Google Play is more lenient (rejection rate ~5%) but enforces tighter data privacy. Both: no promise of 'faster loading' without proof, no fake ratings, no bait-and-switch paywalls.
How do I implement push notifications properly?
iOS: request user permission (UIUserNotificationSettings), use APNs (Apple Push Notification service) with certificates/keys, handle token refresh. Android: Firebase Cloud Messaging (FCM) is standard, token rotates automatically. Server: send payload (title, body, custom data) to token. Client: handle tap (open deep link) and background receive. Common mistakes: not requesting permission upfront (iOS), not handling app-in-foreground case (Android), sending test notifications to inactive tokens (hits delivery rate). Use Firebase Cloud Messaging for both platforms (Apple supports it via APNs bridge).
What does 'offline-first' mean and how do I build it?
Offline-first = app works without internet, syncs when connection returns. Pattern: (1) local database (SQLite/Realm/Firebase Realtime), (2) queue outgoing changes, (3) background sync when online. Detect: `NetInfo.fetch()` on app resume. Sync: batch API calls, handle conflicts (last-write-wins, CRDT). For chat: use SQLite + observe connection state → resume sending. For forms: save drafts locally, retry submission on network return. Libraries: WatermelonDB, Realm, Firebase local caching. Trade-off: adds ~200-500KB to bundle.
How do I optimize app size and startup time?
Size: code splitting (lazy load screens), remove unused assets, compress images to WebP, strip debug symbols. Typical bloat: React Native adds ~40MB (debug), native Swift app ~20MB base. Startup: measure with Xcode Profiler / Android Studio, profile first (often blocking API call on init). Avoid: loading all data at launch, large images in Bundle. Target: < 5s launch on iPhone 12, < 7s on mid-range Android. Use Firebase Performance for production monitoring.
How do I monetize an app, in-app purchases, subscriptions, or ads?
IAP (in-app purchase): one-time, cosmetics/premium content. Apple takes 30% (15% for subscriptions year 2+). Subscriptions: recurring, common for apps (Netflix, Spotify model). Setup: RevenueCat handles iOS/Android subscription logic + analytics. Ads: low-value unless 10M+ DAU. Best for most apps: free tier + $9.99/mo premium (like Spotify). PaymentKit / StoreKit2 on Apple, Google Play Billing Library on Android. Never implement payments yourself, use RevenueCat or Stripe.
What are deep links and why do they matter?
Deep link: URL that opens a specific screen in your app (e.g. `myapp://profile/123` or `https://myapp.com/profile/123`). Used for: marketing (track source), push notifications (tap = open offer), URL sharing. Setup: iOS scheme + Universal Links (https), Android App Links (https). Common mistake: not handling deep link in cold start (app not running). Pattern: save deep link on app launch, route after auth completes. Use Firebase Dynamic Links for short, trackable links that convert from web to app.

OsÀker pÄ om den hÀr kompetensen passar dig?

Gör Career Match — vi föreslĂ„r rĂ€tt spĂ„r för dig.

Hitta mina bĂ€st passande kompetenser →

Hitta din ideala karriÀrvÀg

Kompetensbaserad matchning mot 2 521 karriÀrer. Gratis, ~3 minuter.

Gör KarriĂ€rmatchningen — gratis →