
Mobile Engineer iOS (Swift) / Android (Kotlin)
- $60k – $70k • No equity
- |Remote ()
- |4 years of exp
- |Full Time
About the job
Must-have (both platforms)
- 4+ years shipping native apps in the platform's first-party language (Kotlin/Swift), with ≥1 public-store app they can name and describe their ownership of.
- Shipped a realtime, high-message-rate app trading, live odds, ride-hailing, auctions, telemetry. Specifically: persistent socket connections, backpressure, reconnect/resubscribe logic, UI updating many times/sec without dropping frames.
- Bidirectional protocol experience (Socket.io, raw WebSocket, MQTT, gRPC streaming, SSE). Socket.io a plus — native clients are rougher than the JS one, and the candidate should know that.
- Secure on-device credential handling. iOS: Keychain, Secure Enclave, biometric-gated keys. Android: Keystore/StrongBox, BiometricPrompt, EncryptedSharedPreferences. Must explain what is/isn't protected on a rooted/jailbroken device.
- Correctness-critical domain experience — fintech, banking, brokerage, payments, crypto, healthcare.
- Owns the release pipeline — signing, CI builds, staged/phased rollout, crash reporting — and has personally handled an App Store/Play Store rejection and gotten the app approved.
- Modern UI toolkit at production depth (Compose/SwiftUI): how it re-renders, and how to avoid re-rendering everything on every tick.
Android specifics (Kotlin):
Kotlin depth: coroutines, Flow (StateFlow/SharedFlow, conflation, buffering for a
firehose), structured concurrency.
Compose in production + enough View/XML for legacy/third-party components;
recomposition scope, derivedStateOf, stability, profiling via Layout Inspector /
Compose metrics.
Architecture: ViewModel, Navigation, WorkManager, Room/SQLDelight. DI: Hilt/Koin.
Networking: Retrofit/OkHttp; Socket.io Java client or OkHttp WebSocket.
Java interop for third-party SDKs (Java-only with no production Kotlin = not a fit).
Play Console: signing keys, app bundles, staged rollout, pre-launch reports, Financial
Services / crypto-exchange declarations.
Background execution limits, Doze, foreground-service policy (price alerts). Device
fragmentation, low-end perf, R8/ProGuard.
iOS specifics (Swift):
Swift depth: async/await, actors, Sendable / strict concurrency, Combine or
AsyncSequence for streams.
SwiftUI in production + UIKit where SwiftUI falls short (and the judgment to know
when); view identity, diffing, List/LazyVStack under rapid updates.
Networking: URLSession, Socket.IO-Client-Swift or URLSessionWebSocketTask.
Keychain, Secure Enclave, LocalAuthentication / Face ID / Touch ID, passkeys
(ASAuthorization, associated domains).
Xcode Cloud, Fastlane; TestFlight; provisioning/certificate hygiene.
App Store crypto rules — Guideline 3.1.5(b), wallet/exchange — and has argued a
case with App Review.
Instruments: Time Profiler, Allocations, SwiftUI/Animation Hitches. SPM; can audit a
dependency before adopting it.