Interview questions in Mobile Dev, page 27
Diagnosing choppy scrolling performance
Reach for Instruments, especially the Time Profiler and Core Animation/Hangs tools, and look for main-thread work and dropped frames.
What does flutter build appbundle --release do to minimize size?
Dart AOT compiles and tree-shakes dead code; R8 shrinks Android Java/Kotlin; app bundles split by ABI.

Diagnose Android UI jank using Android Studio's Profiler
Start with CPU Profiler for traces over 16ms and main thread blocking; check Memory Profiler for GC.
Android App Bundles versus Universal APKs
An AAB is an upload format; Play generates per-device APKs via dynamic delivery, shrinking download size.
Struct versus class performance and memory tradeoffs
Structs are value types, often stack-allocated with no ARC; classes are heap-allocated reference types with retain counts.
Walk me through a Flutter CI/CD pipeline for Play Store and TestFlight
Tests your ability to orchestrate multi-platform Flutter builds, manage signing secrets, and automate deployments to Google Play Internal Testing and Apple TestFlight.

Explain cold, warm, and hot app startups and three cold-start optimizations
Cold means no process; warm means process lives but activity recreates; hot means activity resumes. Three fixes: lazy-load deps, trim Application.onCreate, defer blocking I/O.
Over-the-Air Updates for JavaScript-Only Fixes
Ship a new JS bundle the app downloads at runtime and applies on next launch, with no store review.
Exposing Swift classes to Objective-C
Subclass NSObject or mark members @objc, import the generated ModuleName-Swift.h, and accept that Swift-only types like enums with associated values cannot cross.
How do you handle platform-specific configurations per flavor on Android and iOS?
Tests if you know flavors delegate icons and titles to native tooling. On Android, use productFlavors in build.gradle with source sets or placeholders; on iOS, use Xcode build configurations with Info.plist values or asset catalogs.

What is certificate pinning and what are its trade-offs?
Pinning hardcodes a server key to block rogue CA MITM; trade-offs are breakage on cert rotation and forced updates.
CI/CD Pipeline for React Native to TestFlight and Play
A triggered workflow installs deps, builds signed artifacts on macOS and Linux runners, uploads via Fastlane to TestFlight and the Play internal track.
What an autoreleasepool is and when to add one manually
An autorelease pool holds objects until it drains; wrap tight loops creating many temporary ObjC objects in autoreleasepool to cap peak memory.
Debug iOS code signing failure in CI that works locally
This tests Xcode code signing and CI keychain isolation. A strong answer checks exportOptions.plist, keychain profile presence, runner OS and Xcode versions, and entitlements mismatches. Red flag: manual local fixes or ignoring keychain access gaps.

Use Android Keystore to secure a database encryption key
Tests Android Keystore key generation and hardware trust boundaries. Strong answers: KeyGenParameterSpec with AES/GCM, TEE vs StrongBox isolation, setIsStrongBoxBacked on API 28+ with fallback, wrapping the database key. Red flag: claims Keystore encrypts DBs.
Designing a Fastfile for Versioning, match, and Uploads
Lanes bump versions, run match for signing, build with gym and gradle, upload via pilot and supply; secrets come from CI env or a vault.
dispatch_async versus Task.detached for offloading work
Dispatch_async submits a closure to a queue; Task.detached starts an unstructured async task off the current actor without inheriting context.
Why use const for Flutter widgets and how does it improve performance?
Tests widget canonicalization and rebuild short-circuiting. Strong answer: const enables instance reuse and skips subtree rebuilds on parent updates, reducing allocations.

Explain generational GC in ART and why onDraw must avoid allocations
Covers young-gen nursery, mark-sweep fallback, and why a 5-10ms GC pause misses 16ms frame deadline.
Optimizing Slow iOS CI Build Times
Profile the build, cache CocoaPods and DerivedData, use prebuilt frameworks, parallelize, scope to changed work.
We are hiring for this. Every open role lists the topics its interview covers, so you can prepare for the real thing rather than guessing.
See open roles