What differs in mobile, embedded and game development?
Mobile (iOS/Android)
- Choose native (Swift, Kotlin) for platform depth or cross-platform (Flutter, React Native) for shared code
- Design for intermittent connectivity: offline-first storage, sync and conflict resolution
- Mind battery, memory, permissions, secure storage (Keychain/Keystore), certificate pinning and app-store review rules
- Ship with staged rollouts, crash reporting and forced-upgrade paths for old API versions
Embedded / IoT
- Resource-constrained firmware in C/C++ or Rust, often on an RTOS; deterministic timing matters
- Secure boot, signed over-the-air updates, device identity and a plan for fleets in the field
- Test on hardware-in-the-loop, and design for power and connectivity limits
Game development
- A real-time game loop (input → update → render) with a frame budget; engines such as Unity or Unreal
- Performance profiling, asset pipelines, networking with prediction and reconciliation, and anti-cheat considerations
In every case, treat the client as untrusted and keep authoritative logic on the server.