Android Engineering Articles · Page 12

Kotlin Symbol Processing: KSP from Annotation Scanning to Code Generation

A full walkthrough of KSP as a KAPT replacement, from SymbolProcessor and Resolver to CodeGenerator, incremental builds, multiplatform support, and migration.

Kotlin Sealed Classes and Interfaces: Type-Safe UI State

A practical guide to Kotlin sealed classes and sealed interfaces, from exhaustive when checks to type-safe Compose UI state, MVI reducers, Flow results, and Navigation routes.

Kotlin Contracts: Smart Casts, Type Inference, and callsInPlace

A deep dive into Kotlin Contracts, showing how returns() implies and callsInPlace help the compiler recover smart casts, variable initialization, and better type inference.

Technical Leadership and Influence

Reaching the Principal or Staff Engineer level means moving beyond individual code contribution and creating leverage through technical direction, architecture, mentorship, and cross-functional influence.

Kotlin Context Receivers: Legacy Syntax and Context Parameters

(Updated on )
Understand legacy Kotlin context receivers and their replacement, context parameters. Use the examples to read old code and plan migration.

Compose Phases: Composition, Layout, Drawing, and State Reads

(Updated on )
Understand Compose's composition, layout, and drawing phases, then place state reads where they invalidate the least work.

From Pixels to Soul: Android Typography and Font Architecture

A complete guide to typography and Android font architecture, from type basics and font files to rendering, downloadable fonts, Compose, accessibility, and testing.

Android Large IPC: From Binder's 1 MB Limit to ASharedMemory

A practical guide to large cross-process data transfer on Android, comparing Binder limits, MemoryFile, ASharedMemory, Surface, and ContentProvider.

Android Custom IME: InputMethodService, Process Isolation, and Candidates

A practical guide to Android custom input methods, covering InputMethodService, IME process isolation, InputConnection, candidate engines, and keyboard rendering.

Android Custom Lint Rules: From UAST Trees to Detector Implementation

A practical end-to-end guide to Android custom Lint rules, covering UAST, Detector implementation, packaging, integration, and debugging.

Android Cache Systems: LruCache, DiskLruCache, and Offline-first Design

A practical deep dive into Android caching, from LruCache and DiskLruCache internals to three-level cache coordination, consistency, and offline-first engineering.

Android Stability Monitoring: From Crash SDKs to APM Dashboards

A deep dive into Android production stability monitoring, including Java and native crash collection, ANR detection, reporting pipelines, stack clustering, and APM dashboards.

Android On-device Speech Recognition: From SpeechRecognizer to Android 16 ASR

A full-stack look at Android on-device speech recognition, from AudioRecord capture and SpeechRecognizer APIs to Android 16's built-in ASR engine.

Android On-device RAG: From Local Vector Databases to LLM Inference

A practical walkthrough of on-device Android RAG, covering document chunking, local vector search with SQLite, MediaPipe LLM inference, and performance trade-offs.

Android On-device LLM Context Window Engineering

A practical Android on-device LLM context management strategy covering layered prompt compression, summary caching, dialog state machines, and token budget allocation.

Android On-device LLM Streaming Output: From Tokens to Compose UI

A full-stack architecture for Android on-device LLM streaming output, covering KV Cache memory pressure, Kotlin Flow backpressure, and incremental Compose rendering.

Android App Memory Management: Understanding Dalvik VM Parameters

A practical guide to Android app memory limits, Dalvik heap parameters, largeHeap, and ADB commands for inspecting memory usage.

Android On-device AI Model Delivery and Version Management

A practical model delivery architecture that decouples on-device AI models from APK releases with three-layer versioning, BSDiff incremental updates, and hot rollback.

Android On-device AI Power and Thermal Management: From SoC DVFS to Thermal Throttling

A practical look at sustained on-device LLM inference, GPU power profiles, DVFS scheduling, thermal throttling, and thermal-aware load scheduling that reduced P99 latency from 890ms to 380ms.

Android On-device AI Memory Bandwidth: GPU Shared Memory to NPU Zero-copy

A practical guide to Android on-device AI memory-bandwidth optimization, from camera-to-GPU data movement to AHardwareBuffer, ION reuse, and NPU zero-copy paths.