Mobile Engineering
This topic collects broader mobile engineering practices.
It is about the parts of Android development that determine whether a team can keep shipping: build speed, test strategy, module boundaries, release gates, observability, production quality, and collaboration patterns.
The point is to treat Android work as an engineering system, not only as feature implementation.
Learning Path
- Make build speed measurable: configuration time, task execution, KSP/KAPT cost, remote cache hit rate, and CI variance.
- Build a layered test strategy: unit tests, integration tests, Compose UI tests, screenshot tests, macrobenchmarks, and release smoke checks.
- Define release gates: lint, static analysis, crash symbolication, rollout controls, feature flags, and observability.
- Use modularization and architecture evolution to reduce long-term coordination cost, not to create structure for its own sake.
Core Articles
- Android Gradle build optimization: configuration cache, KSP, and task governance
- Android testing practice: from JUnit unit tests to Compose semantics
- Android CI/CD with Jenkins and GitLab CI: from build to release
Build, Gates, and Release Quality
- Android Gradle Version Catalog and Convention Plugins
- Custom Android lint rules: from UAST to detector implementation
- Android CI/CD delivery: static checks, automated tests, and Firebase App Distribution
- Android API compatibility engineering: from minSdk checks to runtime degradation
- Automated deobfuscation for Android crash stacks: mapping file governance and online recovery
- Android production stability monitoring: exception SDKs, APM dashboards, and quality systems
- Feature flags and progressive rollout: remote config and experiment splitting
- Google Play In-App Updates: update flow, policy, and user experience
- Android plugin architecture: ClassLoader loading and Shadow-style zero-reflection design
- Android user data backup and restore: Auto Backup and key-value transport
Metrics Worth Tracking
- Build duration by phase, cache hit rate, and CI queue time.
- Test pass rate, flaky-test rate, and time to isolate failures.
- Crash-free users, ANR rate, startup regression, and render-frame stability.
- Release rollback rate, rollout-stop reasons, and feature-flag intervention frequency.
- Module dependency growth and build-graph hot spots.
Next Step
For AI-assisted coding and agent workflows, continue with AI Development Tools. For Android AI features that ship inside the app, continue with Android On-device AI.