Android

Articles on Android performance, Kotlin optimization, Gradle builds, and building responsive Android apps.

919 Articles · 160 Companies · 43 Topics

Articles about Android (919)

PickMe Jul 22, 2026

Android 17: What Every Android Developer Should Know in 2026

Anjuka Koralage breaks down Android 17's biggest shift: Google is forcing developers to stop ignoring tablets and foldables. No more opt-outs for resizable windows.

Kasikornbank Jul 20, 2026

Flutter Too Slow for Images? Rush It With Rust

Amorn Apichattanakul from KBTG just shattered a common Flutter myth: it's not the language that's slow, it's the codec. His benchmark results are eye-opening.

Deloitte Jul 9, 2026

The Mistake That Taught Me to Use Flutter Flavors

Abdelrahman Khalil accidentally shipped a production app pointing to staging servers. That painful mistake led him to master Flutter Flavors—and he's breaking down exactly how to avoid the same fate.

Salesforce Jul 1, 2026

How AI Learned to Investigate Mobile Build Failures Like an Experienced Support Engineer

Archana Indran's team at Salesforce turned years of mobile debugging expertise into AI that investigates build failures like a senior engineer. Eight people now support 60+ repositories with less firefighting.

Wealthfront Jun 25, 2026

Tuning Android build nodes for maximum throughput

Wealthfront's Android team cut their CI build times by rethinking how Gradle uses resources on AWS EC2 instances. Turns out, more workers doesn't always mean faster builds.

Shopify Jun 12, 2026

Building Arrive's Confetti in React Native with Reanimated

Joel Besada from Shopify reveals how they built a delightful confetti animation in React Native that runs at 60 FPS without blocking the JavaScript thread. The secret? Declarative animations that execute entire...

Just Eat Jun 10, 2026

Remote Compose looks promising

Costa Fotiadis from Just Eat Takeaway just tested Google's Remote Compose in production scenarios, and the results are surprisingly good. Could this alpha library finally kill WebViews for server-driven UI?

Expo Jun 10, 2026

How a Kotlin compiler plugin cut Android time to first render by 30%

Łukasz Kosmaty from Expo just shipped a compiler plugin that cuts Android app startup time by 30%. No code changes required for developers.

PickMe May 28, 2026

API Testing in Mobile Apps: The Backbone of Digital Experiences

Hafsa Amanulla from PickMe reveals why your beautiful mobile UI means nothing if your APIs are broken. A delayed menu load or failed promo code isn't just annoying—it's a business killer.

Flutter May 18, 2026

Flutter's multiplatform value for agentic development

Michael Thomsen from Google's Flutter team makes a bold claim: AI-driven development works better with a single codebase than platform-specific code. Here's why Flutter might be the secret weapon for agentic wo...

Grab May 15, 2026

Scaling developer experience: How we improved Android Studio in a large monorepo

Grab's Android team turned 35-minute IDE syncs into a 2-minute flow. Their secret? A clever Gradle trick that required just three lines of code and zero workflow changes for 100+ engineers.

Getir May 13, 2026

Surviving Production: The Performance Gauntlet

Berkay Özdemir from Getir's Market Discovery Team cut category page load times from 8 seconds to 2 seconds. Then production traffic hit, and everything started crashing.

PickMe May 10, 2026

Never Miss a Critical App Crash Again: Integrating Firebase Crashlytics with Google Chat

Chamod Lakmal shares how discovering hundreds of weekend crashes on Monday morning pushed him to build an automated alert system. No more silent failures destroying your app's reputation while you're offline.

Flutter Apr 27, 2026

That's a wrap: Everything Flutter at Google Cloud Next

Emma Twersky from Flutter just dropped the biggest news for cross-platform developers: full-stack Dart is here. If you've been context-switching between languages for frontend and backend, this changes everythi...

PickMe Apr 22, 2026

Beyond Local Rendering: Building a Server-Driven UI System with RemoteCompose

Theekshana Alwis from PickMe built a subscription screen that updates instantly—no app store approval, no waiting. He used RemoteCompose to turn Jetpack Compose UI into a binary format streamed from the server.

Shopify Apr 22, 2026

Building Shopify POS for Android Using MVVM

Richa Khanna from Shopify reveals how their team migrated a 3.5-year-old Android POS app from competing MVC/MVP architectures to MVVM without a full rewrite.

PickMe Apr 20, 2026

From GIFs to Lottie: Mastering Lottie Animations in Android with Jetpack Compose

Pavithra Chamod J from PickMe Engineering makes the case: if you're still using GIFs for Android animations, you're leaving performance and control on the table. Lottie animations offer vector-based crispness, ...

Shorebird Apr 16, 2026

Flutter vs. Kotlin Multiplatform: 2026 Architecture Guide

The article content appears to be just promotional copy for Shorebird rather than the actual Flutter vs. Kotlin Multiplatform architecture guide. Without the real article content, I cannot provide an accurate s...

PickMe Apr 10, 2026

Stop Using FLAG_SECURE — Here's a Better Way to Protect Sensitive Screens in Jetpack Compose

Sanath Sajeeva Kumara from PickMe Engineering reveals why FLAG_SECURE is killing your Android app's UX. Banking apps block screenshots entirely—but there's a smarter way to hide sensitive data in Recent Apps wh...

Shorebird Apr 10, 2026

Flutter vs .NET MAUI in 2026: Architecture, Tooling, CI/CD, and Migration Trade-offs

The article content appears to be just a promotional snippet for Shorebird's integration tool, not the full Flutter vs .NET MAUI comparison promised in the title. Without the actual article content, I cannot pr...

PickMe Apr 10, 2026

Revolutionizing Mobile App Profiling: From Days to Minutes with Automation using ADB (Android Debug Bridge) & Python

Mithila Karunarathne and Manuja Hapuarachchi from PickMe turned a days-long performance profiling bottleneck into a minutes-long automated process. Their solution? Python scripts, ADB commands, and a clever wra...

Pinterest Apr 8, 2026

Performance for Everyone

Lin Wang from Pinterest's Android Performance team just solved a problem that costs most teams two engineer-weeks per feature: measuring user-perceived latency. Their solution? Make it completely automatic.

Kasikornbank Apr 7, 2026

From Idea to Reality: Behind Flip Slip, 3-Finger Capture, and the Pinch-to-Zoom PoC #MAKEbyKBank

Weera Youngnam from KBTG turned a personal pain point into a feature that caught executive attention. His journey from gyroscope experiments to production reveals how small PoCs can create outsized impact.

Flutter Apr 1, 2026

How Dart and Flutter are thinking about AI in 2026

Mariam Hasnany from Google's Flutter team just dropped their AI strategy, and the numbers reveal a massive shift: 79% of Flutter developers already use AI assistants. But there's a trust problem.

Thumbtack Mar 31, 2026

Headless Screenshot Testing in Thumbtack's Android Apps

Brian Terczynski from Thumbtack reveals how they ditched emulators entirely for their 1,500+ screenshot tests. The result? Tests that run at unit test speed and actually gate code merges.

Snapchat Mar 19, 2026

Performance as a Core Product Feature

Snapchat treats performance as a core product feature, not just a requirement. Their custom tracing system catches regressions that off-the-shelf tools completely miss.

Getir Mar 17, 2026

Maestro at Scale: Architecting a Deterministic Mobile Test Platform

Emre Erkek from Getir reveals how they turned Maestro from a simple testing tool into a deterministic platform that runs thousands of tests daily. Most teams fail at E2E testing scale—here's the architecture th...

Medium Mar 17, 2026

Making AI Write Android Code Our Way: A Practical Guide to Agent Skills

Pierrick CAEN from Medium's Android team reveals how they turned AI coding assistants from generic code generators into team-specific experts. The secret? Teaching the AI their exact conventions through structu...

Expo Mar 17, 2026

Expo UI in SDK 55: Jetpack Compose now available for React Native apps

Kudo Chien, Nishan Bende, and Aleksander Mikucki from Expo just made it possible to use native SwiftUI and Jetpack Compose components directly in React Native apps. No JavaScript reimplementation required.

Deloitte Mar 16, 2026

How to Make Your Mobile App Faster

Essam Fahmy from Deloitte reveals why 70% of users abandon slow apps—and shares the exact techniques that cut load times by up to 70%. If your mobile team treats performance as an afterthought, this breakdown w...

Grab Mar 15, 2026

Enabling R8 optimization at scale with AI-assisted debugging

Grab's Android team cracked a 6-year problem that stumped multiple attempts: enabling R8 optimization across 9 million lines of code. One engineer led the charge, and AI was the secret weapon.

Grab Mar 15, 2026

Reclaiming Terabytes: Optimizing Android image caching with TLRU

Grab's engineering team just reclaimed terabytes of storage across 100+ million Android devices without breaking a sweat. Their secret? A clever twist on a decades-old caching algorithm.

Meta Mar 13, 2026

Patch Me If You Can: AI Codemods for Secure-by-Default Android Apps

Pascal Hartig explores how Meta's Product Security team uses AI to automatically patch security vulnerabilities across millions of lines of Android code. The challenge? Doing this at scale without disrupting th...

Mobile Vitals Mar 12, 2026

WTH is Remote Compose

Remote Compose sounds like science fiction: your server sends actual drawing operations to Android devices, and they render natively. No JSON schemas, no component mapping, just pure Compose instructions over t...

Android Developers Blog Mar 11, 2026

Level Up: Test Sidekick and Prepare for Upcoming Program Milestones

Maru Ahues Bouza from Google Play reveals how 600 million monthly gamers are now using Play Games Services, with Level Up features driving 2.5 billion incremental game installs in 2025 alone.

Individual Author Mar 10, 2026

Remote Compose: Back to the Future

Arman Chatikyan just built a visual UI editor that deploys Android screens without app updates. Remote Compose lets you design layouts in a browser and render them natively on device—no WebViews, no JSON schema...

Google Mar 7, 2026

Instagram and Facebook Deliver Instant App Experiences on Android

Mayuri Khinvasara Khabya reveals how Meta eliminated video loading delays for billions of users. The secret? A complete rethinking of how Android apps prepare content before you even tap play.

Android Developers Blog Mar 5, 2026

Elevating AI-assisted Android development and improving LLMs with Android Bench

Matthew McCullough from Android just dropped something the AI coding world needed: a public leaderboard showing which LLMs actually understand Android development. No more guessing which AI assistant knows Jetp...

Android Developers Blog Mar 4, 2026

How WHOOP Decreased Excessive Partial Wake Lock Sessions by Over 90%

WHOOP's Android team turned a Google Play compliance warning into a masterclass in battery optimization. Their excessive wake lock sessions dropped from 15% to under 1% in just 30 days.

Posts on Medium Mar 3, 2026

Ship Your Compose UI Updates in Seconds

Aditya Shinde (Developer Chunk) tackles the 24-48 hour app store review cycle that kills mobile iteration speed. His solution: Server-Driven UI that updates Compose screens without deployments.

Getir Mar 3, 2026

Memory Leaks You Probably Missed in Jetpack Compose

Mahmut Yuce from Getir destroys the myth that declarative UI means no memory leaks. Compose apps leak differently, and these patterns are sneakier than the old View system bugs.

Android Developers Blog Mar 2, 2026

Supercharge your Android development with 6 expert tips for Gemini in Android Studio

Trevor Johns from Google just dropped 6 expert tips for using Gemini AI in Android Studio, and they're a game-changer for how we build apps. These aren't basic prompting tricks—this is how Google engineers and ...

Teknasyon Mar 2, 2026

Silent Killer in Production: Memory Leak Diagnosis and Solution Journey

Taha Selim Aksakal from Teknasyon Engineering tracked down a memory leak that silently grew RAM usage from 160MB to critical levels over 12 hours—with zero traffic. The culprit? An unexpected interaction betwee...

Teknasyon Mar 2, 2026

Kotlin Enums: Replace values() with entries

Ilyas Ipek from Teknasyon reveals a hidden performance killer in Kotlin that most Android devs hit daily. That innocent enum.values() call? It's silently allocating and cloning arrays every single time.

Teknasyon Mar 2, 2026

A Simple Guide to Version Catalog Implementation in Android

ilyas ipek from Teknasyon breaks down how Android teams can finally escape dependency management chaos. The solution? A single TOML file that centralizes every library version across your entire project.

Teknasyon Mar 2, 2026

Using Gradle in Android: Build Variants, Build Types, and Manifest Placeholders

Enes İğneci from Teknasyon Engineering breaks down the Gradle configuration secrets that separate amateur Android builds from production-ready apps. If you've ever shipped the wrong API key to production, this ...

Mobile Vitals Mar 1, 2026

The 5 Numbers That Decide Whether Users Keep or Delete Your App

Half of all users uninstall an app after a single performance issue. A peer-reviewed paper puts specific numbers on the thresholds that separate apps people keep from apps they delete.

Posts on X Feb 26, 2026

Vision-Based Mobile App Testing CLI for Claude Code

Revyl introduces a CLI tool that gives Claude Code vision-based mobile app testing capabilities. The tool interacts with apps like a human — no scripts, selectors, or element IDs needed — enabling a full write-...

Android Developers Blog Feb 26, 2026

The Second Beta of Android 17

Matthew McCullough just dropped Android 17 Beta 2, and it's packed with APIs that fundamentally change how apps handle privacy, cross-device experiences, and local network access. This isn't just another increm...

Android Developers Blog Feb 25, 2026

The Intelligent OS: Making AI agents more helpful for Android apps

Matthew McCullough from Android reveals how Google is fundamentally changing app interaction: users won't open apps anymore, they'll just ask AI to handle tasks for them.

Trivago Feb 18, 2026

How a Learning Project Became Our Modern Mobile Test Framework

What started as one engineer's Appium 1 learning project at trivago became their production mobile test framework for six years. Here's how they evolved it through Appium 2 and 3 without another ground-up rewri...

Android Developers Blog Feb 17, 2026

Under the Hood: Android 17's Lock-Free MessageQueue

Shai Barack and Charles Munger from Android reveal how a 20-year-old lock in MessageQueue was secretly causing UI jank across the entire Android ecosystem. Their solution? A lock-free data structure that's up t...

Guardsquare Feb 17, 2026

Breaking Down Mobile App Vulnerabilities

Jija Bhattacharya from Guardsquare breaks down recent mobile app vulnerabilities that exposed millions of users. These weren't sophisticated exploits—they were logic flaws and authorization failures hiding in p...

Callstack Feb 17, 2026

Agent Device: AI-Native Mobile Automation for iOS and Android

Callstack just released a CLI tool that finally lets AI agents actually test mobile apps. No more agents that can write code but can't click a button.

Google Feb 13, 2026

App Resizability and Multi-Window Support

Miguel Montemayor from Android drops a major compatibility requirement: the developer opt-out for resizability is gone in Android 17. If your app still assumes portrait-only or fixed aspect ratios, you've got w...

Google Feb 13, 2026

Android 17 First Beta Release

Google just killed Developer Previews. Android 17 Beta 1 introduces a continuous Canary channel that delivers features as soon as they pass internal testing, no more waiting for quarterly drops.

React Native Blog Feb 11, 2026

React Native Version 0.84 Release

React Native 0.84 just dropped with automatic performance wins for every app. No migration needed, no config changes required—just faster execution and lower memory usage out of the box.

Grindr Feb 10, 2026

Automating Memory Leak Detection with AI

Ricardo Marin from Grindr turned memory leak debugging from a 2-4 hour manual slog into a minutes-long automated process. The secret? Recognizing that memory leaks are pattern-matching problems, not creative on...

Spotify Feb 9, 2026

How We Release the Spotify App: A Look Under the Hood (Part 2)

Spotify's release managers were drowning in Jira tabs, juggling dozens of tickets while fielding Slack questions. One dashboard changed everything.

PickMe Feb 6, 2026

Why Your Mobile App Is Not as Secure as You Think

Pavithra Chamod J from PickMe Engineering drops a hard truth: your mobile app's security measures are probably theater. Once an APK hits a rooted device, all bets are off.

Individual Author Feb 4, 2026

Common Mistakes When Shifting Left in Mobile Testing

Russell Morley reveals why most mobile teams think they're shifting left in testing, but are actually just moving their pain earlier in the pipeline.

Instacart Feb 3, 2026

Migrating to Jetpack Compose: How AI Accelerated Our Journey at Caper

Instacart's Caper team turned a multi-quarter Fragment-to-Compose migration into a dramatically faster effort using AI coding assistants.

Reddit Feb 2, 2026

Protecting Your GraphQL

Stas Kravets shares how a Python GraphQL service's P99 timeout detection was so unreliable that only P50 requests actually timed out as expected. The culprit? IO operations under heavy load can bring down your ...

Kotlin Blog Feb 1, 2026

Java to Kotlin Conversion Comes to Visual Studio Code

JetBrains brings Java-to-Kotlin code conversion to Visual Studio Code through the Kotlin language plugin, extending a feature previously exclusive to IntelliJ IDEA. Developers can now convert Java files or snip...

Google Jan 28, 2026

How Automated Prompt Optimization Unlocks Quality Gains for ML Kit's GenAI Prompt API

Google just solved one of mobile AI's biggest challenges: how do you customize foundation models for your app without breaking device constraints? Their answer might surprise you—it's not fine-tuning.

Hotstar Jan 26, 2026

Beyond the smartphone: How JioHotstar optimized its UX for foldables and tablets

Prateek Batra from Google reveals how JioHotstar transformed their streaming app for 400 million users. The secret? Treating tablets and foldables as first-class citizens, not just stretched phones.

Individual Author Jan 26, 2026

Kotlin Intrinsics on Android

Rahul Ravikumar reveals how Android's tooling has been quietly carrying the weight of Kotlin's type safety. Every null check, every parameter validation adds overhead that pure Kotlin apps don't actually need.

PickMe Jan 23, 2026

Your Development Environment Is a Security Risk: What Every Android Developer Needs to Know

Sanath Sajeeva Kumara from PickMe reveals a chilling truth: simply opening a project in Android Studio can steal your credentials before you click a single button. A 2026 incident proves your IDE might be your ...

Gojek Jan 20, 2026

The Silent Performance Killer: How a Single Lambda Nearly Destroyed My Compose UI

Raditya Gumay from GoTo discovered his navigation UI was recomposing 60+ times per minute. The culprit? A single lambda inside a data class that looked completely innocent.

Kotlin Blog Jan 16, 2026

Update Your Projects for AGP 9

Márton Braun from JetBrains drops a critical update: Android Gradle Plugin 9.0 just landed with breaking changes that will affect every Kotlin Android project. Time to update your build configs.

Zar Jan 15, 2026

Supercharging Mobile Development with Permanent Work Trees and Claude

Umair Ali from ZAR Engineering turned weeks of mobile development work into single days by eliminating a hidden productivity killer. The secret? Rethinking how Git worktrees interact with AI coding assistants.

Google Jan 15, 2026

LLM Flexibility and Agent Mode Improvements

Sandhya Mohan and Trevor Johns from Google just dropped a game-changer: Android Studio now lets you use ANY LLM—OpenAI, Claude, or even local models—to power your AI coding assistant.

Kotlin Blog Jan 13, 2026

Compose Multiplatform 1.10.0

Elvira Mustafina from JetBrains just dropped Compose Multiplatform 1.10.0, and it's solving one of the most annoying pain points in cross-platform development. Three different @Preview annotations? Gone.

Mercari Jan 13, 2026

NavEntryScope: The missing scope in Android Hilt

Luca from Mercari's Logistics team hit a wall: multiple ViewModels on one screen needed to share data, but Hilt's built-in scopes forced them into Singleton hell with manual cleanup. So they built their own sco...

Kotlin Blog Jan 13, 2026

The Journey to Compose Hot Reload 1.0.0

Sebastian Sellmair and Azat Abdullin from JetBrains reveal how they built Compose Hot Reload 1.0.0—a zero-config tool that lets you update Kotlin UI code instantly while preserving app state. The engineering be...

Gojek Jan 6, 2026

Project Butter: A Journey for App Performance Improvement

Gojek's Android app was taking 14.35 seconds to launch. With 500+ modules and millions of lines of code, something had to change.

Simform Jan 5, 2026

Unlock Native Power in Flutter Part 2

Flutter developers: still treating native integration like a black box? You're leaving serious performance on the table.

PickMe Jan 5, 2026

From PNGs to GIFs: Mastering Animated Images in Android with Coil

Pavithra Chamod J from PickMe Engineering tackles a common Android performance trap: GIFs that look great but silently drain memory and tank your UI responsiveness.

Posts on Medium Jan 3, 2026

HashMap and Set Performance Optimization in Android Kotlin

Using List.contains() instead of Set.contains() in your Android app? You might be making it 900x slower than it needs to be.

PickMe Jan 1, 2026

Mastering Location Services in Mobile Apps — A Guide for Android (Jetpack Compose) & iOS (SwiftUI)

Pavithra Chamod J from PickMe Engineering breaks down the biggest challenge in mobile dev: making location services work seamlessly across Android and iOS without draining batteries or violating privacy.

Simform Dec 31, 2025

Unlock Native Power in Flutter Part 1

Flutter's cross-platform magic hits a wall when you need native APIs. Here's how to bridge that gap without losing your mind.

Grab Dec 23, 2025

Demystifying user journeys: Revolutionizing troubleshooting with auto tracking

Ever tried debugging a mobile app crash without knowing what the user actually did? You're flying blind.

Hotstar Dec 23, 2025

JioHotstar Android App — Road to 99.9% CFUR

JioHotstar pushed their Android app from 99.5% to 99.8% crash-free rate by hunting down invisible memory killers. Here's how they did it.

PickMe Dec 23, 2025

The ViewModel Manager Pattern: How We Tamed a 2000+ Line ViewModel Into Clean, Testable Code

Chamod Lakmal from PickMe Engineering turned a 2,100-line ViewModel nightmare into 350 lines of clean, testable code. His team's test coverage jumped from 12% to 87%, and onboarding time dropped from 2 weeks to...

PickMe Dec 22, 2025

Building a Production-Ready Custom Slider in Jetpack Compose: A Deep Dive into Haptic Feedback, Snapping Logic, and Custom Theming

Chamod Lakmal from PickMe Engineering built a slider that users actually *feel*. Most custom sliders look good but feel dead—this one snaps, vibrates, and eliminates float drift with surgical precision.

Google Dec 19, 2025

Adaptive Design: Moving Beyond Mobile-Only Apps

Fahd Imtiaz from Google's Android team reveals a stark reality: tablet and foldable users spend 9-14x more on apps than phone-only users. The mobile-only era is officially over.

Kotlin Blog Dec 19, 2025

How Mobile Development Teams Use Kotlin in 2025

José Luis González, a JetBrains-certified Kotlin Trainer, reveals the production bugs that still plague mobile teams in 2025. One tiny mistake in exception handling can silently break your entire app's lifecycl...

Swift.org Blog Dec 18, 2025

Exploring the Swift SDK for Android

The Android workgroup just dropped Swift 6.3 SDK nightly previews for Android, and several production apps with millions of downloads are already proving it works at scale.

Kotlin Blog Dec 16, 2025

Kotlin 2.3.0 Released

Kotlin 2.3.0 just dropped with some serious multiplatform firepower. If you're building cross-platform apps, this release fundamentally changes how you work with Swift, Wasm, and native code.

Callstack Dec 16, 2025

Profiling MLC-LLM's OpenCL Backend on Android: Performance Insights

Running LLMs on Android devices just got a serious performance deep-dive. Callstack profiled MLC-LLM's OpenCL backend to uncover what actually happens when you run local AI on mobile hardware.

Mercari Dec 16, 2025

Supercharging User Engagement: How Mercari is Using Server-Driven UI to Reduce Time-to-Market

Stefan from Mercari's Growth Platform team reveals how they eliminated app releases for marketing campaigns. Their server-driven UI solution turned weeks of development into minutes of drag-and-drop configurati...

Meta Dec 15, 2025

How AI Is Transforming the Adoption of Secure-by-Default Mobile Frameworks

Meta just shared how they're using AI to automatically fix security vulnerabilities across billions of lines of code. The twist? The AI doesn't need to be perfect to be incredibly useful.

Google Dec 11, 2025

Enhancing Android Security: Stop Malware

Bennet Manuel and Rob Clifford from Google just dropped a security feature so simple it's almost embarrassing we didn't have it sooner: one line of code that blocks malware from reading your app's sensitive dat...

Kotlin Blog Dec 11, 2025

Exploring KotlinX Benchmark Results with Kotlin Notebooks

Filipp Zhinkin and Teodor Irkhin from JetBrains show how staring at raw benchmark tables is costing you insights. Kotlin Notebooks turn those text dumps into interactive visualizations that actually tell a stor...

React Native Blog Dec 10, 2025

React Native Version 0.83 Release

React Native 0.83 just dropped with a historic first: zero breaking changes. The team is finally delivering on their promise of predictable, painless upgrades.

Google Dec 8, 2025

Building for Android XR: AI Glasses Development

Matthew McCullough from Google just dropped the toolkit that could make AI glasses actually useful. Developer Preview 3 brings purpose-built libraries for augmented experiences that keep users present in the re...

Google Dec 4, 2025

Android Studio Otter 2 Feature Drop

Sandhya Mohan and Trevor Johns from Google just dropped Android Studio Otter 2, and it's packing Gemini 3 Pro with a 1 million token context window. Your AI coding assistant just got a serious upgrade.

Posts on Medium Dec 4, 2025

The Complete Guide to Offline-First Architecture in Android

Your Android app crashes when the WiFi drops. Your users' apps shouldn't. Offline-first architecture flips the script: the network becomes optional, not essential.

JetBrains Dec 1, 2025

Building AI Agents In Kotlin Part 3: Under Observation

Denis Domanskii from JetBrains tackles a problem every AI agent developer faces: your agent works, but you can't see what it's doing. When debugging takes hours and costs are invisible, you're flying blind.

Getir Dec 1, 2025

Strategic Guide to Migrating Legacy Android Apps from XML to Jetpack Compose

Getir's Android team learned the hard way: migrating millions of users from XML to Jetpack Compose isn't about rewriting screens. It's about avoiding the performance traps that come with mixing old and new.

Individual Author Nov 29, 2025

RemoteCompose: Another Paradigm for Server-Driven UI in Jetpack Compose

Jaewoong Eum explores RemoteCompose, AndroidX's experimental framework that lets you update Android UI layouts without recompiling or redeploying your app. Ship UI changes in minutes instead of weeks.

Posts on Medium Nov 24, 2025

Core/Core-Impl Pattern: Build-Performance Superpower of DI & Gradle

Your modular Android app is building like a monolith. One shared :core module is killing your build times, even when you change a single private implementation detail.

Qantas Nov 24, 2025

Mobile App Release Challenges: Why Code Persistence Matters

Daniel Tome from Qantas reveals why mobile releases are fundamentally different: once your code ships to a user's phone, you've lost control of it forever.

Kotlin Blog Nov 24, 2025

The Ultimate Kotlin Multiplatform Watchlist

Ekaterina Petrova curated 10 KotlinConf talks that show how Duolingo, McDonald's, and StoneCo achieved massive scale with Kotlin Multiplatform. Skip the beginner mistakes and learn from teams already shipping t...

Google Nov 21, 2025

Fully Optimized: Wrapping up Performance Spotlight Week

Ben Weiss and Sara Hamilton from Google wrap up Performance Spotlight Week with a roadmap to faster Android apps. Reddit cut ANR errors by 30% with one configuration change.

Google Nov 20, 2025

Raising the bar on battery performance: excessive partial wake locks

Google Play is about to start penalizing apps that drain your users' batteries. Starting March 2026, excessive wake lock usage could get your app buried in search results or flagged with a warning label.

Android Developers Blog Nov 20, 2025

Android Developers Blog: Leveling Guide for your Performance Journey

Google's Android team just dropped a performance framework that meets you where you are. Whether you're a solo dev or leading a performance team, there's a clear path forward.

Mercari Nov 20, 2025

Behind the Global Launch: Decoding the Android Engineering Strategy for Our New App

Karthi from Mercari's Cross Border team reveals why they chose native Android over Flutter and React Native for their global marketplace launch. The decision wasn't about theory, it was about leveraging 10M+ do...

Google Nov 20, 2025

How Reddit used the R8 optimizer for high impact performance

Ben Weiss from Google shares how Reddit achieved 40% faster cold startup and boosted Play Store ratings in under 2 weeks. The secret? Finally enabling R8 optimizer's full potential.

Doist Nov 20, 2025

Orchestrating our UI test suite with Maestro

Doist's Android team faced a brutal reality: their UI test suite was so flaky that only 50% of runs passed on the first try. PRs sat idle for hours waiting for reruns.

Mercari Nov 20, 2025

Android Engineering Strategy for Global App Launch

Karthi from Mercari's Android team reveals why they ditched cross-platform frameworks for their global marketplace launch. The decision wasn't about native vs. hybrid ideology, it was about leveraging 10M+ down...

Posts on Medium Nov 19, 2025

Modernizing ExoPlayer with Media3’s Compose UI

For years, video playback was the one piece of Android UI that refused to go fully declarative. That changed when Google shipped Media3's Compose UI module.

Google Nov 19, 2025

Deeper Performance Considerations

Ben Weiss, Breana Tate, and Jossi Wolf from Google just dropped a performance goldmine: Trello cut startup time by 25%, and Meta saw improvements up to 40%. All from one optimization technique most teams haven'...

Slack Nov 19, 2025

Android VPAT journey

Slack's Android team tackled a VPAT accessibility audit and found critical gaps that affected screen reader users. Here's what they fixed and why it matters for your mobile app.

Expo Nov 19, 2025

Going Universal: From a brownfield React Native and Next.js stack to one Expo app

Gunnar Torfi shares how a single developer maintained 40+ mobile screens AND a full web app by merging them into one universal codebase. No big rewrite required.

Cash App Nov 18, 2025

Cash Android Moves to Metro

Egor Andreevich just shipped a DI framework migration across 1,500 modules serving tens of millions of users. The build speed improvements? Nearly 60% faster incremental builds.

Google Nov 17, 2025

Use R8 To Shrink, Optimize, and Speed Up Apps

Ben Weiss from Google reveals the single most impactful, low-effort change you can make to Android app performance. Reddit saw 40% faster cold startup and Disney+ cut ANRs by 25% with one configuration tweak.

Android Developers Blog Nov 17, 2025

Android Developers Blog: Get your app on the fast track with Android Performance Spotlight Week!

Google is dedicating an entire week to helping Android developers ship faster apps. If performance has been on your backlog, this is your moment.

Posts on Medium Nov 15, 2025

Improve your Android App Performance by 10X with Compose Stability

Your Jetpack Compose app might be recomposing 10X more than it needs to. The culprit? Stability.

Posts on Medium Nov 13, 2025

Making Android WebView 2.5× Faster (And Proving It with Data)

Timur Borgalinov from Uzum Market turned Android WebView from a performance black hole into a predictable, measurable component. His team achieved 2.5× faster load times with data to prove it.

Flutter Blog Nov 12, 2025

What's New in Flutter 3.38

Kevin Chisholm from Google's Flutter team just dropped Flutter 3.38, and it's packed with the kind of productivity wins developers have been asking for. Dot shorthands alone will save you countless lines of boi...

Pinterest Nov 10, 2025

How Pinterest Cut Android Testing CI Build Times by 36%+

Pinterest's Android CI builds were bleeding 9 minutes per run because one slow test shard held everything hostage. Their fix? Stop counting tests and start counting seconds.

Posts on Reddit Nov 9, 2025

I achieved 0% ANR in my Android app. Spilling beans on how I did it - part 1.

After a year of relentless optimization, one Android dev achieved the impossible: 0% ANR rate in production. Here's how they did it.

Reddit Nov 9, 2025

Reddit: Making Android Videos Super Fast

Reddit cut video loading time in half on Android. Here's how they did it with ExoPlayer optimization, player pooling, and smart prefetching strategies.

PickMe Nov 5, 2025

5 Jetpack Compose Tricks That Simplify UI Logic

Anjuka Koralage from PickMe Engineering discovered that migrating to Jetpack Compose wasn't just about replacing XML layouts. It required a complete mental shift in how to think about UI architecture.

Trendyol Nov 5, 2025

Scaling Mobile UI Testing with AI

Trendyol scaled from 4,869 to 10,400 UI tests in under a year — while keeping execution under one hour. Here's how AI became their test generation engine.

ASOS Nov 4, 2025

Android Clean Architecture: Understanding the Data Layer

Sean Coyle from ASOS breaks down the Data Layer in Android Clean Architecture—the unsung hero that keeps your networking, databases, and caching from bleeding into your business logic.

PickMe Nov 3, 2025

Migrating from KAPT to KSP: A Complete Guide to Kotlin's Future

Chamod Lakmal from PickMe reveals how switching annotation processors can cut Android build times in half. If you're still using KAPT, you're leaving serious performance gains on the table.

Swift.org Blog Oct 31, 2025

What's New in Swift October 2025

Joe Heck and Dave Lester just dropped the first edition of a new monthly Swift digest, and it's packed with signals that Swift is expanding way beyond iOS. Server-side Swift is heating up with performance gains...

Kotlin Blog Oct 28, 2025

Evaluating Kotlin for Real-World Mobile Projects

Urs Peter, a JetBrains-certified Kotlin trainer, reveals the hidden pitfalls that turn promising Kotlin projects into Java-with-different-syntax nightmares. Most teams waste months writing 'Java-ish Kotlin' ins...

Swift.org Blog Oct 24, 2025

Nightly Swift SDK for Android

Joannis Orlandos just announced something that could reshape mobile development: you can now write Android apps in Swift. After a decade of Swift expanding to cloud, Windows, and browsers, it's finally landing ...

leboncoin Oct 24, 2025

Enhanced Accessibility Gestures for Custom Components on Android

Nicolas Mayer Weiler from leboncoin shows why your 'accessible' Android component might still be failing users. Three stepper implementations, wildly different user experiences.

Google Oct 23, 2025

Performance Optimization for Android XR Devices

Google just dropped a comprehensive guide for Android XR performance optimization, and the stakes are higher than traditional mobile: miss your frame rate target and users get motion sickness, not just frustrat...

Mercari Oct 22, 2025

Delivering Mobile App Updates Faster

Manoj Kumar Gubba from Mercari's iOS team reveals how they ship mobile updates in just 3-7 days. Most teams take 1-2 weeks, but Mercari's approach cuts that in half while maintaining stability.

Mercari Oct 22, 2025

How We Deliver Mobile App Updates Faster

Manoj Kumar Gubba from Mercari's iOS team shares how they cut mobile release cycles from weeks to just 3-7 days. Their secret? A combination of trunk-based development and aggressive automation that most teams ...

PickMe Oct 20, 2025

The Hidden Engine: How QA Powered the Driver App Transformation

Mohomed Nawab reveals how QA became the unsung hero in PickMe's driver app overhaul. Most teams treat testing as a final checkpoint, but this approach flipped the script entirely.

Groww Oct 17, 2025

Building Native Trading Charts for Android

The Groww Engineering Team just open-sourced their playbook for building trading charts that render 2,000+ candlesticks at 60fps. No third-party libraries, pure native Android.

Expo Oct 16, 2025

How to add native code to your app with Expo Modules

Jacob Clausen from Expo shows how to break free from SDK limitations. Building custom native modules doesn't mean abandoning Expo's developer experience.

Kotlin Blog Oct 9, 2025

Kotlin Multiplatform Contest 2026

Students and recent grads: JetBrains is offering free trips to Munich for building Kotlin Multiplatform projects. The 2026 contest is open now, and the bar might be lower than you think.

Very Good Ventures Oct 8, 2025

Flutter for Enterprises: Everything CTOs and Engineering Leaders Need to Know

Very Good Ventures reveals why global leaders like Disney, Toyota, and BMW are ditching fragmented native development for a single framework. The shift isn't just technical—it's transformational.

React Native Blog Oct 8, 2025

React Native Version 0.82 Release

React Native just dropped its most significant release ever. Version 0.82 completely removes the Legacy Architecture, marking what the team calls 'the start of a new era' for mobile development.

Medium Oct 6, 2025

Medium Android App — Migrating from Apollo Kotlin 3 to 4: Lessons Learned

Pierrick CAEN from Medium thought upgrading Apollo Kotlin would be straightforward. Instead, it exposed hidden cache issues that had been silently failing for months.

Flink Oct 6, 2025

Managing Dependency Hell in a 400-Module Android Project

Erdem Topak from Flink reveals how their Android team scaled from 30 to 437 modules—then discovered 400 unused dependencies silently killing their build times. Here's how they built a custom solution when exist...

Zalando Oct 3, 2025

Accelerating Mobile App Development at Zalando with Rendering Engine and React Native

Zalando is migrating 90+ screens across iOS and Android to React Native without rebuilding their entire app. Here's how they're pulling it off for 52M+ customers.

Callstack Oct 3, 2025

Cross-Platform TV Apps with React Native for tvOS, Android TV, and Tizen

Callstack just dropped their Ultimate Guide to React Native TV Development 2026. If you're building streaming apps, this changes the game for cross-platform TV.

Uber Oct 2, 2025

How Uber Standardized Mobile Analytics for Cross-Platform Insights

Ben Hjerrild and the Uber Mobile Data Platform team just solved a problem every mobile org faces: analytics chaos. Over 40% of their events had become meaningless custom logs, and iOS/Android were tracking thin...

Uber Oct 2, 2025

How Uber Standardized Mobile Analytics for Cross-Platform Insights

Uber runs 50+ mobile apps across iOS and Android. How do you get consistent analytics when every team tracks things differently?

Meta Oct 1, 2025

Accelerating our Android apps with Baseline Profiles

Meta just shipped a masterclass in Android performance optimization. Their apps now load up to 40% faster thanks to one underutilized Android feature.

Swiggy Sep 30, 2025

Scaling Swiggy's Mobile Ecosystem [1/n]

Tushar Tayal from Swiggy reveals the hidden complexity behind managing 6+ consumer apps (Snacc, Instamart, Toing, Dineout, Crew) in production. Spoiler: it's not just about shipping faster.

Slice Sep 23, 2025

Centralized Dynamic Navigation at Scale: Zero Crashes, Module Independence, Faster Delivery

Aditya Singh from slice engineering solved a problem that haunts every Android team at scale: navigation crashes from circular dependencies. His team hit zero navigation crashes in production with a runtime gra...

Flink Sep 22, 2025

Weekly Mobile App Release Process and Deployment Strategy

Jawad Mashhadiea from Flink reveals how his team ships 4 mobile apps every single week with almost zero manual work. The secret? Treating releases like trains, not planes.

Kotlin Blog Sep 22, 2025

Compose Multiplatform 1.9.0 - Compose for Web Beta

Ekaterina Volodko and Alejandra Pedroza Marchena from JetBrains announce a game-changer: Compose Multiplatform for web just hit Beta, powered by Wasm. Your Android Compose skills now work in the browser with mi...

Google Sep 17, 2025

Android 16 QPR2 Beta 2 Release

Android 16 QPR2 Beta 2 is here, and it's time for developers to start testing. Google continues its quarterly platform release cadence with another beta drop.

Callstack Sep 16, 2025

Debugging Android Connectivity Issues with Metro Bundler

Ever spent hours debugging why your React Native Android app won't connect to Metro during development? You're not alone.

Swift.org Blog Sep 15, 2025

Swift 6.2 Released

Holly Borla from Apple's Swift Core Team just dropped Swift 6.2, and it's tackling the biggest pain point in modern development: making concurrent programming actually approachable. This isn't just another incr...

PickMe Sep 14, 2025

Building a Modern Android Location Manager: From Legacy Approaches to Clean Architecture Excellence

Chamod Lakmal from PickMe Engineering just open-sourced a LocationManager that turns Android's notoriously messy location APIs into clean, testable code. No more callback hell or mystery crashes.

Google Sep 9, 2025

Improve App Performance With Optimized Resource Shrinking

Johan Bay from Google just dropped a game-changer for Android app size. Apps sharing resources across form factors are seeing 50%+ size reductions with one configuration change.

Lyft Sep 9, 2025

Migrating Lyft's Android Codebase to Kotlin

Oleksii Chyrkov from Lyft just closed the book on a 7-year migration journey. The final push to eliminate Java from their entire Android codebase revealed some brutal truths about automated tooling.

Android Developers Blog Sep 1, 2025

Optimize your app battery using Android vitals wake lock metric

Google is cracking down on battery-draining apps. Starting March 2026, excessive wake lock usage could get your app demoted in the Play Store or flagged with battery warnings.

Google Aug 25, 2025

Elevating Android Security

Suzanne Frey from Google just announced a major shift in Android's security model. Starting 2026, every app installed on certified Android devices will need a verified developer behind it.

Google Aug 22, 2025

Gemini Nano with On-Device ML Kit and GenAI APIs

Caren Chang, Joanna Huang, and Chengji Yan from Google reveal how they're making Gemini Nano v3 940 tokens/second fast while keeping quality consistent across devices. The secret? LoRA adapters and rigorous eva...

Trendyol Aug 22, 2025

Building a Maestro Plugin for IntelliJ: From Mobile Test Automation to IDE Excellence

Trendyol's mobile team turned Maestro test automation from a terminal-only workflow into a full-featured IDE experience. Writing YAML tests without syntax highlighting, validation, or auto-complete was slowing ...

Google Aug 21, 2025

64-bit app compatibility for Google TV and Android TV

Fahad Durrani from Google drops a major requirement: TV apps need 64-bit support by August 2026. If your app has native code, you've got work to do.

PickMe Aug 19, 2025

Securing API Keys and Sensitive Data in Android Apps: A Practical, Modern Guide

Numesh Dilusha from PickMe Engineering drops a hard truth: Android malware surged 40% in 2024/2025, and your hardcoded API keys are basically an open invitation. This comprehensive guide shows exactly how to lo...

Google Aug 14, 2025

Test on a fleet of physical devices with Android Device Streaming, now with Android Partner Device Labs

Adarsh Fernando and Grant Yang from Google just made device fragmentation testing dramatically easier. No more buying dozens of phones to test your Android app.

Android Developers Blog Aug 13, 2025

Android Developers Blog: What’s new in the Jetpack Compose August ’25 release

The Jetpack Compose team just dropped their August '25 release, and it's packed with updates Android devs have been waiting for.

React Native Blog Aug 12, 2025

React Native Version 0.81 Release

React Native 0.81 just dropped with a game-changing performance boost: iOS builds up to 10x faster. But there's a catch that'll affect every Android developer.

Google Aug 11, 2025

Media3 1.8.0 Release: New Features and Improvements

Toni Heidenreich from Google just dropped Media3 1.8.0, and the scrubbing mode alone will change how your users interact with video playback. This release packs performance wins that directly impact user experi...

PickMe Aug 10, 2025

The Android Memory Revolution That Will Make Your Apps Fast

Chamod Lakmal from PickMe reveals why November 1, 2025 marks Android's biggest performance shift since Android 5.0. Apps could launch 40% faster, but most developers aren't ready.

TripAdvisor Aug 8, 2025

The evolution of native engineering at Tripadvisor: Part 2

Tripadvisor's mobile team was drowning in nearly-identical UI components. Their server-driven UI framework promised speed but delivered the opposite.

droidcon Aug 8, 2025

Recomposition Is Not a Bug — You Are

If your Jetpack Compose UI is recomposing like crazy, the framework isn't broken—your code is fighting it instead of working with it.

Delivery Hero Aug 5, 2025

From Biology to Code: How Android’s Zygote Enables Fast and Efficient App Launching

Ever wonder why Android apps launch so fast? The answer lies in a clever biological hack borrowed from how human cells divide.

PhonePe Aug 4, 2025

Pincode Migration Journey with Compose Multiplatform

Chethan N from PhonePe's Pincode team just shared how they migrated their Android seller app to desktop using Compose Multiplatform. The twist? They kept both codebases running in the same repo during migration...

Posts on Reddit Aug 1, 2025

Our Buildkite Brings All the Devs to the Yard: (Re)Building Reddit Mobile CI in 2025

Reddit's mobile team had zero professional CI experience. Then they cut build times in half and transformed developer happiness.

Meta Jul 28, 2025

Accelerating on-device ML on Meta’s apps with ExecuTorch

Meta just shared how they moved billions of daily users to their new on-device ML framework. The performance gains are substantial.

Adevinta Germany Jul 19, 2025

Rebranding on Android Apps: Behind the Scenes

Hannah Olukoye from mobile.de reveals how her team pulled off a complete Android rebrand in just 2 weeks—but only after tackling 8 years of technical debt first.

Thumbtack Jul 17, 2025

Debugging OOMs: SQLite Query Optimization

Brian Terczynski from Thumbtack tracked down a brutal Android OOM bug that was crashing apps at startup—and the culprit wasn't a memory leak. It was hiding in plain sight: their SQLite queries.

Deloitte Jul 10, 2025

Jetpack Compose State Management: The Three Musketeers

Mohanad Abdelaziz from Deloitte tackles the question every Android dev asks: how do I improve state management this time? His answer: three distinct patterns, each with serious trade-offs.

PickMe Jul 10, 2025

Building a Dynamic Curve Spinner in Jetpack Compose

Sanath Sajeeva Kumara from PickMe just dropped a stunning tutorial that turns mathematical curves into mesmerizing loading animations. Who knew trigonometry could look this good in production Android apps?

Google Jul 9, 2025

UNISOC Leverages ADPF for Enhanced Android Gaming Performance  |  Developer stories  |  Android Developers

UNISOC just proved that Android's Dynamic Performance Framework (ADPF) isn't just theory. Their implementation with LineageW delivered a 50% frame rate boost in real-world testing.

Just Eat Jun 27, 2025

Link Inlining Optimization for Android

Alex Dadukin from Just Eat Takeaway reveals how inline links in Android apps create a localization nightmare. Their team evaluated three common approaches and found them all fundamentally broken.

Google Jun 23, 2025

Agentic AI Integration in Android Studio with Gemini

Sandhya Mohan and Jose Alcérreca from Google just dropped Agent Mode for Gemini in Android Studio. This isn't another code completion tool—it's an AI that creates execution plans, makes multi-file changes, and ...

PickMe Jun 16, 2025

Stop Storing Secrets Wrong: The Right Way to Encrypt Data in Android

Chamod Lakmal from PickMe reveals why most Android apps store secrets dangerously wrong. Hardcoded keys and SharedPreferences encryption are fundamentally broken, leaving user data vulnerable to extraction.

RevenueCat Jun 11, 2025

Server-driven UI SDK on Android: how RevenueCat enables remote paywalls without app updates

Jaewoong Eum breaks down how RevenueCat's Android SDK lets product teams update paywall screens remotely—no app releases, no developer bottlenecks, no waiting on store reviews.

Duolingo Jun 11, 2025

Duolingo's Android Performance Case Study and DAU Growth

Chenglai Huang and Michael Huang from Duolingo reveal how 39% of entry-level Android users were abandoning their app before it even loaded. Their fix? A masterclass in performance optimization that saved hundre...

Google Jun 10, 2025

Android 16 Release Announcement

Matthew McCullough from Google just dropped Android 16, and it's not just another annual release. Google is fundamentally changing how Android evolves with a new two-release-per-year SDK strategy.

PickMe Jun 7, 2025

The Story of Pixels

Piyal Madushanka from PickMe breaks down why that 500x500px button looks completely different on your Pixel vs. your Samsung. The answer lies in understanding three deceptively simple concepts that every mobile...

Just Eat Jun 5, 2025

Testing Lottie Animations in Jetpack Compose

Jordi Coll Marin from Just Eat Takeaway reveals a testing challenge most Android devs overlook: how do you verify a Lottie animation actually completes when it only runs for half a second?

Callstack Jun 5, 2025

Cross-Platform Web3 dApps With React Native

Callstack explores how React Native is becoming the unexpected bridge between traditional mobile development and the Web3 ecosystem. Building decentralized apps just got a lot more practical.

Swift.org Blog Jun 2, 2025

Swift at Apple: Migrating Password Monitoring Service from Java

Apple's Password Monitoring team just shared something remarkable: they rewrote their entire backend service from Java to Swift and the results are staggering. This isn't a client-side migration story—it's bill...

Slice May 30, 2025

The Journey to Faster Android Builds: How Slice Slashed Build Times

Ankit Sharma from slice reveals how his team reclaimed 167 hours of developer time annually by tackling Android build performance head-on. Their systematic approach turned a productivity blocker into a competit...

Tinder May 23, 2025

How We Decomposed Tinder's Monolith

Maxwell Elliott and Connor Wybranowski from Tinder turned what seemed like a 12-year project into a 6-month sprint. Their secret? Letting the compiler do the heavy lifting instead of manually untangling 150,000...

PickMe May 21, 2025

Declarative vs Imperative Programming: A Practical Comparison with XML and Compose

Chamod Lakmal from PickMe Engineering breaks down the imperative vs declarative debate with side-by-side Android code that makes the difference crystal clear.

Google May 20, 2025

On-Device Generative AI APIs: ML Kit and Gemini Nano

Caren Chang, Chengji Yan, and Taj Darra from Google just made on-device AI dramatically easier for Android developers. Four new ML Kit APIs let you integrate Gemini Nano without any prompt engineering or fine-t...

Google May 20, 2025

Peacock Optimizes Streaming with Jetpack Compose

NBCUniversal's Peacock just proved that building for foldables isn't just about supporting bigger screens. It's about future-proofing your entire streaming experience.

Expo May 14, 2025

Real-time audio processing with Expo and native code

Braulio Ríos built a production-ready guitar tuner app using React Native that processes audio in real-time with near-native performance. Here's how he combined TypeScript, C++, Swift, and Kotlin to solve a pro...

Google May 8, 2025

Preparing Apps for 16KB Page Size Devices

Dan Brown from Google Play just dropped a requirement that'll affect every Android app targeting Android 15+. Starting November 1st, 2025, your app must support 16 KB page sizes or risk breaking on next-gen dev...

Slice May 7, 2025

Android Network Observability: Shedding Light on Performance Blind Spots

Shaurya Jaiswal from Slice reveals how his team cut app launch API calls from 28 to 12, improving startup time by 40%. The secret? A custom observability system that exposes what Firebase Performance Monitoring...

Duolingo May 4, 2025

How We Slashed Android Startup Time by 30% with Baseline Profiles

Duolingo's Android team cut startup time by 30% with baseline profiles. But the path from 'easy setup' to production was anything but smooth.

Dropbox Apr 25, 2025

How Dropbox leverages testing to maintain high level of trust at scale

Dropbox maintains 1B+ downloads with under 30 Android engineers. Their secret? A testing strategy that evolved from complete chaos to surgical precision.

Posts on Medium Apr 23, 2025

How to Reduce Android Studio Memory Usage

Android Studio eating your RAM? You're not alone. A few strategic tweaks can reclaim gigabytes and slash build times by 20-50%.

IDN Media Apr 22, 2025

Enhancing Android Development Productivity with Convention Plugins

Fauzi Mubarok from IDN Engineering tackles a problem every Android team hits: copy-pasting the same build configurations across dozens of modules. His solution? Convention plugins that centralize it all.

Netflix Apr 17, 2025

Netflix App Testing At Scale

Netflix runs 1,000+ device tests on every PR for an app with 1M lines of code across 400+ modules. Here's how they evolved their testing strategy over 14 years.

Yubo Apr 15, 2025

Android Migration from XML to Jetpack Compose

Gary Dameme from Yubo just wrapped up migrating 70% of their social app to Jetpack Compose. The results? 20% better rendering performance and 30% less code in their main feature.

PickMe Apr 11, 2025

Tenant-Specific Theming with Material 3 in Jetpack Compose

Chamod Lakmal from PickMe Engineering just cracked white-label theming for Android apps. If you're building B2B platforms that need per-tenant branding, this implementation guide is gold.

Yubo Apr 8, 2025

Android Migration: From XML to Jetpack Compose - Part 2

Gary Dameme from Yubo shares hard-won lessons from migrating a production Android app to Jetpack Compose. Spoiler: rewriting XML is the easy part.

PickMe Apr 5, 2025

Mastering SOLID Principles in Android with Jetpack Compose & Kotlin

Chamod Lakmal from PickMe Engineering breaks down SOLID principles with real Jetpack Compose code examples. No theory fluff—just practical refactoring patterns that actually work in production Android apps.

Yubo Apr 1, 2025

Android Migration: From XML to Jetpack Compose - Part 1

Gary Dameme from Yubo shares how they're migrating a nearly 10-year-old Android app from XML to Jetpack Compose. Spoiler: it's not just about swapping UI frameworks.

Spotify Apr 1, 2025

A Behind-the-Scenes Look at How We Release the Spotify App (Part 1)

Spotify ships weekly releases to 675 million users across iOS and Android. Here's how they balance speed with quality at that scale.

PickMe Mar 30, 2025

Revamping PickMe Passenger Android App: Moving from Java/XML to Kotlin/Compose

Numesh Dilusha from PickMe reveals how a team of just 5 developers completely rewrote their ride-hailing app in record time. The secret? Strategic modularization and keeping the UI design unchanged.

PickMe Mar 29, 2025

Design Android build variants for Multi-Tenant

Piyal Madushanka from PickMe Engineering tackles a problem every scaling mobile team faces: how do you manage multiple regional apps without drowning in build configuration chaos?

PickMe Mar 26, 2025

Building Scalable Jetpack Compose Android Applications with a Multi-Module Architecture

Chamod Lakmal from PickMe breaks down how multi-module architecture transformed their Android development. If your Compose app is becoming a monolithic nightmare, this is your roadmap out.

Posts on Medium Mar 25, 2025

Make WebViews edge-to-edge in Android

Android 16 just made edge-to-edge mandatory for all apps. If your WebViews aren't ready, they'll break on launch.

Careem Mar 22, 2025

How server-driven UI is revolutionizing mobile app experiences

Careem was losing weeks waiting for app releases just to update a banner. During Ramadan, when customer behavior shifts daily, that delay was killing their food business.

Skyscanner Mar 14, 2025

Skyscanner’s journey to effective observability

Skyscanner was drowning in observability chaos: multiple vendors, fragmented tools, and engineers losing confidence in their ability to debug production issues.

PickMe Mar 13, 2025

Clean Architecture for Android Applications

Chamod Lakmal from PickMe breaks down Clean Architecture for Android with a practical folder structure that actually makes sense. If your codebase feels like spaghetti, this is your roadmap out.

PickMe Mar 13, 2025

State Management in Jetpack Compose

Chamod Lakmal from PickMe Engineering breaks down why basic `remember` and `mutableStateOf` won't cut it for production Jetpack Compose apps. Here's what actually scales.

ASOS Mar 11, 2025

Android Clean Architecture: Understanding the Domain Layer

Sean Coyle from ASOS breaks down the most misunderstood layer in Clean Architecture. If your ViewModels are bloated and your business logic is scattered everywhere, this deep dive into the Domain Layer will cha...

PickMe Mar 8, 2025

Battery Optimization in Android Jetpack Compose

Chamod Lakmal from PickMe Engineering reveals how unnecessary recompositions in Jetpack Compose can silently drain your users' batteries. Most Android devs are missing these optimization wins.

Delivery Hero Mar 4, 2025

Future for Java: Virtual Thread

Woowa Brothers needed to handle massive I/O in their authentication gateway. Java's traditional threads couldn't keep up, so they explored virtual threads.

Meta Feb 25, 2025

How Meta is Translating Its Java Codebase to Kotlin

Pascal Hartig from Meta sits down with the engineers tackling one of Android's biggest migration challenges: converting tens of millions of lines of Java to Kotlin. How do you pull off a transformation this mas...

Square Feb 24, 2025

Mobile Payments SDK General Availability and Terminal API Features

Square just launched their Mobile Payments SDK to GA with a twist: your phone becomes the card reader. No external hardware required for contactless payments.

Callstack Feb 11, 2025

Profiling Native Code in React Native with Tracy

Profiling React Native apps just got a serious upgrade. Tracy, the real-time profiler that game developers swear by, now works seamlessly with React Native's native layer.

Pinterest Feb 11, 2025

The Quest to Understand Metric Movements

Your key metric just tanked 20%. Was it a code change? An OS update? A data pipeline bug? Pinterest built a platform to answer this question at scale.

Duolingo Feb 7, 2025

How we reduced manual regression tests by 70% using AI tools

Duolingo's QA team cut manual regression testing by 70% using AI. Here's how they made it work at scale.

Very Good Ventures Feb 4, 2025

10 Reasons To Choose Flutter for Your Mobile App

Very Good Ventures makes the case for Flutter with data that's hard to ignore: 93% developer satisfaction and 24% user growth in a single year. If you're evaluating cross-platform frameworks, this breakdown cut...

Swift.org Blog Feb 1, 2025

The Next Chapter in Swift Build Technologies

Owen Voorhees from Apple just dropped a bombshell: the build engine that powers millions of App Store apps is now open source. This changes everything for Swift developers working across platforms.

Wise Jan 29, 2025

Building 3D Animations in Mobile Apps

Yağız Gürgül from Wise Engineering reveals how they shipped interactive 3D animations in their mobile app—and crushed a 324 MB asset bundle down to just 3.7 MB. The secret? A clever web-based approach that deli...

Etsy Jan 28, 2025

Adopting Jetpack Compose for Etsy’s Android App

Etsy just rewrote major parts of their Android app with Jetpack Compose and saw conversion rates climb. Here's how they pulled off the migration without breaking production.

Wink+ Jan 24, 2025

How We Reduced the WINK+ Android App to Less Than 10MB

A solo Android engineer at WINK+ crushed their APK down to under 8MB while competitors bloat past 20MB with fewer features. Here's the playbook.

Instagram Jan 24, 2025

Bringing Jetpack Compose to Instagram for Android

Instagram just migrated to Jetpack Compose. But when you're operating at Meta scale, you can't just import some AARs and start coding.

Google Jan 23, 2025

Orientation and Resizability Changes in Android 16

Maru Ahues Bouza from Google just dropped a bombshell: Android 16 is killing off portrait-only and fixed-orientation apps on large screens. If your app locks orientation, you've got work to do.

Teknasyon Jan 22, 2025

Code Optimization with ProGuard and R8 in Android

Enes İğneci from Teknasyon Engineering breaks down why your Android app might be bloated, slow, and vulnerable. The fix? Two powerful code optimization tools most developers underutilize.

React Native Blog Jan 21, 2025

React Native Version 0.77 Release

React Native 0.77 just dropped with over 1,061 commits from 161 contributors. The team is bringing web-standard CSS properties to mobile and making a bold move to Swift for iOS templates.

IDN Media Jan 12, 2025

RxJava in 2025: Relevance and Best Practices for Android Development

Muhammad Zuhriyan Sauqi from IDN Engineering makes a bold case: RxJava isn't dead in 2025, it's just misunderstood. While Kotlin Coroutines dominate modern Android development, he argues there's still a compell...

Google Jan 8, 2025

Android Developers Blog: Performance Class helps Google Maps deliver premium experiences

Google Maps just pulled back the curtain on how they deliver smooth experiences across Android's massive device fragmentation. The secret? Performance Class.

IDN Media Jan 3, 2025

Simplify In-App Purchases on Android with RevenueCat and Kotlin

Husein Murtadlo from IDN Engineering shows how RevenueCat can replace Google Play Billing Library's complexity with just a few lines of Kotlin code. If you've ever wrestled with in-app purchase implementation, ...

Mercari Dec 24, 2024

Leading a project to migrate hundreds of screens to SwiftUI/Jetpack Compose from UIKit/AndroidView in Merpay

Merpay just migrated hundreds of payment screens to modern UI frameworks while keeping their app running in production. Here's how they managed a 2-year engineering transformation.

Callstack Dec 20, 2024

Kotlin Multiplatform Development and Compose

The article content appears to be missing, but based on the title and page structure, this looks like a Callstack piece on Kotlin Multiplatform and Compose. Unfortunately, the actual article text didn't load.

Meta Dec 18, 2024

Translating Java to Kotlin at Scale

Meta is rewriting 10 million lines of perfectly good Java code into Kotlin. Why would anyone do that?

Duolingo Dec 18, 2024

How we sped up Android and iOS builds by 68% on CI

Duolingo's engineers were stuck waiting 50 minutes for every CI build. That's hundreds of hours wasted every week across the team.

Coinbase Dec 18, 2024

Boosting App Performance: Strategies to Optimize Network Requests

Coinbase cut network requests by 64% during traffic spikes without degrading user experience. Here's how they engineered their way to massive scale.

Reddit Dec 12, 2024

Reddit Improved App Startup Speed Using Baseline Profiles & R8

Reddit just proved that Android's built-in performance tools can deliver massive wins without custom engineering. Their app startup improvements are eye-opening.

Back Market Dec 12, 2024

How We Enhanced Our Android App’s Startup Time by Over 50%

Back Market slashed their Android app startup time by 60%. Here's the engineering breakdown that made it happen.

Glovo Nov 29, 2024

How We Engineered a Scalable Architecture to Power Videos, Social, and Picks in Our Delivery App

Victoria Perelló and Hernán Malatini from Glovo shipped three major social features in 90 days—without breaking their app. Their secret? An architecture that let 10+ teams work in parallel without stepping on e...

Callstack Nov 28, 2024

Upgrading React Native in Brownfield Applications

Upgrading React Native in a brownfield app isn't just harder than a greenfield project. It's a completely different beast that most teams underestimate.

Discord Nov 27, 2024

Measuring Product Impact Without A/B Testing: How Discord Used the Synthetic Control Method for Voice Messages

Discord wanted to measure Voice Messages impact, but A/B testing would break the feature. Network effects meant users in control groups couldn't receive voice messages from treatment users.

Posts on Reddit Nov 26, 2024

Why is there so much obsession on app size reduction?

Why do engineering teams obsess over shaving megabytes off their apps? A Reddit thread reveals the hidden costs of bloat.

Callstack Nov 25, 2024

Integrating React Native into Existing Applications

Callstack reveals how to add React Native to existing native apps without a full rewrite. This brownfield approach is changing how engineering teams think about cross-platform development.

Grab Nov 22, 2024

How We Reduced GrabX SDK Initialisation Time

Grab's SDK was taking 4 minutes to initialize with 400MB of config data. That's a cold start problem that kills autoscaling.

IDN Media Nov 21, 2024

Building a Floating View in Android: A Practical Approach - Final Part

Fauzi Mubarok from IDN Engineering wraps up his floating view series with the polish that separates good Android UIs from great ones. That magnetic snap-to-edge effect you see in TikTok and Shopee? Here's how t...

IDN Media Nov 20, 2024

Building a Floating View in Android: A Practical Approach - Part 1

Fauzi Mubarok from IDN Engineering breaks down how to build those addictive floating reward bubbles you see in TikTok and Shopee. Turns out, creating smooth overlay views in Android requires some clever system-...

Callstack Nov 18, 2024

Brownfield Development with React Native

Callstack reveals how brownfield React Native integration lets you modernize native apps without the dreaded full rewrite. This collection of insights shows exactly how companies like Shopify and Zalando pulled...

Very Good Ventures Nov 13, 2024

Flutter Myths: Clearing Up Common Misconceptions

Still think Flutter is too slow for production apps? Very Good Ventures just dismantled the 6 biggest myths holding teams back from adopting this cross-platform framework.

Glovo Nov 12, 2024

Building a Compose Design System at Scale

Matias Isella from Glovo reveals how they built a Compose Design System that serves multiple apps at scale—without being locked into Material Design. Their API decisions could save you months of architectural h...

Duolingo Nov 8, 2024

How server-driven UI keeps our shop fresh

Duolingo ships UI changes in minutes, not weeks. Their server-driven UI system bypasses app store releases entirely.

Trendyol Nov 6, 2024

Jetpack Compose Performance

Hasan Kuşçu from Trendyol reveals why your Jetpack Compose app might be recomposing way more than it should. The culprit? Compose treats most classes as unstable by default.

Just Eat Nov 4, 2024

Extending Detekt for Android Code Quality

Costa Fotiadis from Just Eat Takeaway shows how custom Detekt rules caught edge-to-edge violations before they hit production. No more relying on reviewers to remember Android 15's breaking changes.

Sentry Nov 4, 2024

Enabling Out Of The Box Performance Insights In The Unity SDK

Stefan Jandl from Sentry just cracked a tough problem: how do you auto-instrument performance monitoring in Unity games without asking developers to write a single line of code?

Google Oct 31, 2024

Android SDK Release Update

Matthew McCullough just dropped a bombshell: Android is ditching its annual release cycle. If you're building for Android, your entire 2025 planning timeline just changed.

Google Oct 31, 2024

What's New in Gemini in Android

Sandhya Mohan from Google just dropped the biggest Gemini in Android Studio update since launch. If you're still manually writing commit messages and test scenarios, this changes everything.

Grab Oct 30, 2024

How we reduced peak memory and CPU usage of the product configuration management SDK

Grab's configuration management SDK was crushing service performance with memory spikes and CPU throttling. 98% of services were loading 100x more data than they actually needed.

Callstack Oct 28, 2024

Enhance App Performance and Business with Real User Monitoring (RUM)

Real User Monitoring isn't just a performance tool. It's the bridge between what you think users experience and what actually happens in production.

Mercado Libre Oct 9, 2024

Tales of Performance Engineering

Diego Parra from Mercado Libre's Performance Engineering team just shared how they slashed API response times by 60% with one strategic fix. The culprit? Regex compilations eating 40% of CPU cycles.

DoorDash Oct 1, 2024

Precision in Motion: Deep Learning for Smarter ETA Predictions

DoorDash handles 2 billion orders annually, and every ETA prediction matters. Their old tree-based models couldn't keep up with the complexity.

Google Oct 1, 2024

Gemini Nano Experimental Access Available on Android

Taj Darra just announced that Google is opening Gemini Nano to all Android developers. On-device AI just became accessible for production-ready mobile apps.

Sentry Sep 27, 2024

Mobile App Launch Profiling

Andrew McKnight from Sentry just solved one of mobile performance monitoring's biggest blind spots. Ever wondered what's actually happening in your app before main() even gets called?

Fullstory Sep 20, 2024

5 Mobile app optimization tips to enhance user engagement

Your mobile app's first impression isn't just important. It's everything. The Fullstory Team breaks down why most teams are optimizing blind, relying on assumptions instead of actual user behavior data.

Reddit Sep 17, 2024

Snappy, Not Crappy: An Android Health & Performance Journey

Your Android app might be bleeding users before they even finish launching it. Performance isn't a feature anymore. It's table stakes.

Swift.org Blog Sep 17, 2024

Announcing Swift 6

Holly Borla from Apple's Swift Core Team announces Swift 6, bringing data-race safety from opt-in warnings to compiler-enforced guarantees. After a decade of development, Swift now targets embedded systems, ser...

Google Sep 3, 2024

Android 15 Release to AOSP

Android 15 just dropped to AOSP, and Google's bringing some serious developer firepower. Edge-to-edge enforcement, 16KB page size support, and a complete overhaul of how we handle app profiling on user devices.

Shopify Aug 23, 2024

Tophat: Crafting a Delightful Mobile Developer Experience

Shopify doubled developer productivity by turning the most tedious part of mobile development into a one-click experience.

Glance Aug 21, 2024

How We Improved Our 1Weather Android App Cold Startup Time by Over 70%

The 1Weather team slashed their Android app cold start time by over 70% and reduced slow starts by 24%. Here's the systematic approach that got them there.

Wealthfront Aug 19, 2024

Speed Up Your Android Tests: Gradle Plugin for Unit Test Filtering

Wealthfront's Android team had a problem: their test suite was slowing down every PR merge. Running all tests on every change wasn't scaling.

PhonePe Jul 17, 2024

Building the Pincode Android App with Jetpack Compose

The Pincode Android Team at PhonePe built an entire app with Jetpack Compose while it was still maturing. 2.5 million downloads later, they're sharing what actually worked and what didn't.

DoorDash Jul 15, 2024

App Health Through Metric-Aware Rollouts

DoorDash was shipping experiments that crashed their app and degraded performance for weeks before anyone could identify the cause. They built an automated system to catch issues before customers feel the pain.

Squarespace Jul 12, 2024

Unfold's Modern Mobile Release Process And The Subtle Art Of Making Them Boring

Alan Cooke from Squarespace reveals how Unfold turned chaotic mobile releases into boring background events. Boring is the goal, and here's why that's brilliant.

Swift.org Blog Jul 1, 2024

Ready for Swift 6

Dave Verwer and Sven A. Schmidt from Swift Package Index reveal that 43% of Swift packages are already data race safe. The Swift 6 migration is happening faster than expected.

Skeelo Jun 13, 2024

Good Practices When Creating E2E Tests at Skeelo

Skeelo's QA team built a scalable E2E testing framework using Python + Appium. Here's the architecture that keeps their mobile tests maintainable as the app grows.

Skeelo Jun 12, 2024

How Baseline Profiles Improve Skeelo Android App Performance

Skeelo's Android app had a problem: too many users were experiencing painfully slow startup times. They needed a solution that didn't require rewriting their entire codebase.

adidas Jun 11, 2024

Developers for adidas CONFIRMED build features 30% faster using Jetpack Compose

Nick Butcher and Florina Muntenescu from Google reveal how adidas CONFIRMED slashed feature development time by 30% with a single technology shift. The results speak for themselves: happier users, fewer crashes...

Skeelo Jun 11, 2024

How We Optimized Concurrency Using Node.js at Skeelo

Skeelo's engineering team achieved a 30% performance boost by rethinking one simple thing: when NOT to use await in Node.js.

Square Jun 6, 2024

What's New in the Mobile Payments SDK Beta

Square just launched the successor to their Reader SDK after 6 years, and KIOS was among the first to build with it. Their integration story reveals what's actually possible when payment SDKs are built for deve...

Delivery Hero Jun 5, 2024

Boost Your Android App’s Performance with Baseline Profiles

Delivery Hero's Android team achieved 30% performance gains without writing a single line of new feature code. Here's how baseline profiles transformed their app.

OkCupid May 28, 2024

Drawing a Ribbon Background in Compose

Anton Begeima from OkCupid shows how to create eye-catching ribbon backgrounds in Jetpack Compose using custom Path drawing. No third-party libraries needed—just pure Canvas API magic.

Zalando May 16, 2024

Transitioning to Appcraft: Evolution of Zalando’s Server-Driven UI Framework

Zalando powers 13 dynamic mobile pages without waiting for app store releases. Here's how they built a server-driven UI framework that ships changes same-day.

Thumbtack May 16, 2024

Java Is Dead Long Live Kotlin Part 2

Emily Fujimoto from Thumbtack just closed the book on a 6-year migration journey. The final push to eliminate Java from their Android codebase revealed lessons every mobile team needs to hear.

PhonePe May 13, 2024

Enhancing Chat Performance on PhonePe Android - Part 2

Ayush Bagaria from PhonePe reveals how CPU profiling and thread optimization slashed chat load times by 30%. Most Android apps are sitting on similar performance gains.

Uber Apr 23, 2024

DragonCrawl: Generative AI for High-Quality Mobile Testing

Uber's mobile testing was broken. Engineers spent 30-40% of their time maintaining test scripts that broke with every UI change. So they built an AI that tests apps like a human would.

Airbnb Apr 11, 2024

Introducing Trio | Part III

Airbnb just shipped 230+ production screens with their new Compose architecture. Here's how they solved the hardest problem: making screens talk to each other.

Posts on Reddit Apr 10, 2024

Should I continue learning Flutter or start with KMM?

Flutter or KMM? If you're building cross-platform mobile apps in 2024, this question is keeping a lot of engineering leaders up at night.

Very Good Ventures Apr 10, 2024

Building AI-powered games with Gemini and Flutter

Very Good Ventures took the stage at Google Cloud Next 2024 to show how Flutter and Gemini are changing the game development playbook. Literally.

AirAsia MOVE Apr 9, 2024

How we transformed the AirAsia Superapp into AirAsia Move — A Tech Journey\!

Caeser Bakabulindi from AirAsia reveals how a complete app rewrite slashed launch time by 35% and cut memory usage by 120MB. The secret? Jetpack Compose and a bold commitment to building a product, not just fea...

Airbnb Apr 4, 2024

Introducing Trio | Part II

Airbnb's Android team just solved one of mobile architecture's hardest problems: navigation in massive, modularized apps. Their solution? Store navigation state right in the ViewModel.

Airbnb Mar 28, 2024

Introducing Trio | Part I

Airbnb just open-sourced the architecture powering a significant portion of their Android app. After 2+ years of development, Trio is their answer to Fragment-based pain points.

Meta Mar 26, 2024

Bringing HDR photo support to Instagram and Threads

Meta serves trillions of image downloads daily. Now Instagram and Threads are pushing the boundaries of mobile photo quality with HDR support.

incident.io Mar 25, 2024

incident.io harnesses the power of native modules and CNG

Dan Kelly explores how incident.io shipped a production mobile app in months without hiring a single mobile engineer. Their secret? Leaning hard into Expo's 'golden path.'

Etsy Mar 18, 2024

Macramé: Untangling the Knot on the Etsy Android Listing Screen

Etsy's Android listing screen had 4,000+ lines of code in a single file, single-digit test coverage, and 200 experiments running. Something had to give.

PhonePe Mar 15, 2024

Enhancing Chat Performance on PhonePe Android - Part 1

Ayush Bagaria from PhonePe set out to cut chat latency by 50% in their P2P payment flow. The journey taught some expensive lessons about the gap between POC results and production reality.

Walmart Mar 8, 2024

Performance Measurement for Native Apps

Supriyo Mondal from Walmart reveals how they shaved 500-600ms off view rendering times by changing a single boolean flag. Sometimes the biggest performance wins come from the smallest tweaks.

IDN Media Mar 4, 2024

Real-Time Communication on Android with AWS AppSync GraphQL

Arvel Alana from IDN Engineering breaks down how to add real-time features to Android apps without the WebSocket headaches. AWS AppSync handles the heavy lifting while you focus on the user experience.

Duolingo Mar 1, 2024

How dogfooding helps us build a better Duolingo

Duolingo catches critical bugs before users ever see them. Their secret? 70% of employees actively use internal builds daily.

Bumble Feb 21, 2024

Refining Compose API for Design Systems

Yury from Bumble Tech tackles a problem every Android team faces: how do you build design system components that are both easy to use and flexible enough for edge cases?

Cred Feb 12, 2024

Pareto Principle in Action: Boosting Performance with Smart Caching

CRED Engineering faced a nightmare: caching every query combination would require 45,768+ TB of storage. Here's how they got it down to 135 MB.

Very Good Ventures Jan 22, 2024

Benefits of Flutter for Cross-Platform App Development

Still running separate iOS and Android teams in 2024? The economics of native development just stopped making sense. Here's why Flutter is quietly becoming the default choice for engineering leaders who need to...

Sentry Jan 17, 2024

How We Improved Performance Score Accuracy

Edward Gou from Sentry reveals why their performance scores were lying to developers. A single slow pageload could tank your entire app's score, even when 99% of users had fast experiences.

Very Good Ventures Jan 16, 2024

Learn About the Leading Multi-Platform Frameworks

Still running separate iOS and Android teams in 2024? VGV breaks down why Flutter and React Native are replacing the old playbook for multi-platform development.

Swiggy Dec 19, 2023

Optimising the Swiggy Restaurant App

Swiggy's restaurant app was crashing under load. Their React Native app couldn't handle more than 100 orders on budget devices, and they needed to scale 10x.

Glovo Dec 18, 2023

Slashing Lead Times by 30%: The Impact of Using Explicit Types in JVM

alexxozo from Glovo's engineering team discovered that a single line of code change slashed their build time by 30%. The culprit? Java's type inference struggling with large Map definitions.

Google Dec 13, 2023

Leveraging Generative AI in Your Android Apps

Dave Burke, VP of Engineering at Google, just dropped the playbook for integrating Gemini AI into Android apps. If you've been waiting for the right moment to add generative AI to your mobile stack, this is it.

Gojek Dec 8, 2023

Evolution of Bid Notifications to Courier

Gojek was sending 97-99% of driver bid notifications successfully. They rewrote the system and hit 99.9%+.

Delivery Hero Dec 7, 2023

Micro-Feature Architecture for Mobile

Delivery Hero tackled a tough problem: how do you let 15+ teams build features independently for the same mobile screen without chaos?

Google Dec 6, 2023

A New Foundation for AI on Android

Dave Burke from Google just dropped the blueprint for running foundation models directly on your Android device. No cloud required, no network dependency, just pure on-device AI.

Revolut Dec 5, 2023

Evolution of Translations Management for Android

Yaroslav T from Revolut reveals how managing translations for 6 apps across 330 modules and 33 languages evolved from a simple library to a custom Gradle plugin. The journey took 7 years and countless iteration...

Reddit Dec 4, 2023

Reddit Recap: State of Mobile Platforms Edition (2023)

Reddit's mobile team just dropped their brutally honest take on iOS vs Android development in 2023. Spoiler: neither platform makes it easy.

Mercari Dec 4, 2023

Performance monitoring in Mercari mobile apps

Mercari rewrote their entire mobile app and faced a nightmare scenario: millions of users reporting the new version felt slower than the old one.

NordVPN Nov 29, 2023

Android Developers Blog: NordVPN boosted the speed of its login user flow by 60% using Baseline Profiles

NordVPN just made their Android app 60% faster in one critical flow. The fix? A performance feature most Android devs still aren't using.

DoorDash Nov 28, 2023

How DoorDash Manages Mobile Releases

Manolo Sañudo from DoorDash reveals how their iOS team ships weekly releases without breaking things. Spoiler: it's not about having more QA people.

Glance Nov 22, 2023

Distributed Job Scheduler: Zero to 20k Concurrent Jobs

Glance built a distributed job scheduler that went from zero to handling 20,000+ concurrent jobs. Here's how they did it with Redis and smart architecture.

Flutter Blog Nov 15, 2023

Building Your Next Casual Game With Flutter

Zoey Fan from Google's Flutter team just dropped a major update to their Casual Games Toolkit—and it's packed with templates that could save you weeks of setup time. If you've been curious about Flutter for gam...

Swiggy Nov 14, 2023

Optimising Scrolling Performance with Litho

Swiggy's Android team was hitting scroll performance walls with traditional RecyclerViews. Their solution? Facebook's Litho framework, which delivered massive performance gains.

DoorDash Nov 7, 2023

Leveraging Flink to Detect User Sessions and Engage DoorDash Consumers with Real-Time Notifications

DoorDash was sending cart abandonment notifications to users who were still actively browsing. The result? Annoying customers and missing conversion opportunities.

Glovo Nov 6, 2023

Accelerate Your Android Development: Essential Tips to Minimize Gradle Build Time (Part II of II)

Rolgalan from Glovo's Mobile Platform team reveals how they slashed Android build times through hardware and JVM tuning. Most teams are leaving massive performance gains on the table by ignoring these fundament...

Meta Nov 6, 2023

How Meta built Threads in 5 months

Meta shipped Threads to 100M users in 5 days. The timeline? Just 5 months from idea to launch.

Uber Nov 2, 2023

Real-Time Analytics for Mobile App Crashes using Apache Pinot

Uber deploys 11,000 code changes weekly. How do they catch crashes before users notice? They built Healthline, powered by Apache Pinot.

Spotify Nov 1, 2023

The What, Why, and How of Mastering App Size

Spotify's mobile apps generated 930+ petabytes of network traffic in 2022, equivalent to 65,000 tons of CO2 emissions. Their solution? A comprehensive app size management system that's both environmentally cons...

Glovo Oct 23, 2023

Accelerate Your Android Development: Top Techniques to Reduce Gradle Build Time (Part I of II)

Rolgalan from Glovo cut Android build times by 75%—from 1 hour down to 15 minutes. Here's how they did it, and why most teams are leaving massive performance gains on the table.

Gojek Oct 22, 2023

GoTransit: Unifying Our Mobility Products with Public Transportation

Gojek discovered that 11 of their top destinations in Jakarta weren't restaurants or malls. They were train stations and bus hubs.

Glance Oct 18, 2023

Scaling Glance Game Centre to Support 100 Million Daily Active Users

Glance Game Centre serves millions of daily users playing HTML5 games on their lock screens. Their leaderboard system hit a wall with a single-node MongoDB struggling under 1000 QPS.

Swiggy Oct 17, 2023

Media on Swiggy's Mobile Apps

Swiggy's mobile apps serve millions of users across wildly different devices and network conditions. How do you deliver high-quality images and videos without killing performance or burning through bandwidth co...

Cash App Oct 12, 2023

From 30 Minutes Down to 10: Taming our Monolith's CI Build Times

Cash App's monolith CI builds were taking 30 minutes at p50. Developers were stuck waiting through multiple build cycles just to get a green merge.

Instagram Oct 3, 2023

Making Direct Messages Reliable and Fast

Instagram DMs handle millions of messages per second. How do they make every send feel instant, even when your network drops mid-tap?

Gojek Sep 27, 2023

Modularizing Our Driver App for Android: Benefits & Way Ahead (Part-3)

Gojek's driver app modularization cut CI build times by 33% and unlocked team-level productivity metrics. Here's what they learned from breaking up their monolith.

Glance Sep 27, 2023

Glance TV Optimization Part 1: Shrinking APK Size by 65%

Glance TV's engineering team faced a brutal challenge: their Android TV app was 20.6MB and eating 515MB of RAM. Here's how they fixed it.

Swiggy Sep 19, 2023

Making Swiggy's Order Tracking a Magical Experience

Swiggy discovered customers were anxiously checking their order tracking screen multiple times during the 20-45 minute delivery window. Their solution? Let users track orders while doing literally anything else...

Mercado Libre Sep 15, 2023

The Android Backstage of Mercado Libre Warehouses

Victor Oliveira from Mercado Libre reveals how they ditched traditional Android architecture to scale their warehouse operations across Latin America. The problem? Too many duplicate screens, too much boilerpla...

Mercado Libre Sep 15, 2023

Os Bastidores Android Dos Armazéns Do Mercado Livre

Victor Oliveira from Mercado Libre reveals how their warehouse management system went from drowning in duplicate code to shipping features without app updates. The secret? A bold architectural bet that changed ...

Instagram Sep 12, 2023

Building a Better Instagram App for Android

Instagram cut their Android app startup time in half and reduced APK size by 50%. Here's how they did it.

Slack Sep 12, 2023

Inside Slack: Overcoming Challenges to Craft a Seamless Mobile App

Slack's mobile team faces a unique challenge: users expect desktop-level performance while bouncing between subway tunnels and spotty cellular networks.

Amazon Sep 12, 2023

Why Mobile Application Performance Testing Is Key to App Success

Amazon's QA team just shared their playbook for mobile performance testing. Here's what separates apps that scale from those that crash.

Salesforce Sep 12, 2023

Slack Behind the Scenes: Overcoming Key Challenges to Craft a Seamless Mobile App

Tracy Stampfli from Slack reveals how her infrastructure team keeps 120+ mobile engineers shipping features without breaking the app. The secret? Treating mobile connectivity like a first-class problem, not an ...

Klarna Sep 7, 2023

Native End-to-End Testing for Mobile Apps

Joana Melo from Klarna turned a 6-month diversity program into company-wide impact by solving a pain point that had defeated multiple engineering teams before her.

ASOS Sep 6, 2023

A Rundown of Android Intent Selectors: Building Intents Correctly

Jack Webb from ASOS discovered a common Android Intent mistake that could trap users in infinite loops. Most developers use ACTION_VIEW to open URLs, but there's a critical flaw hiding in plain sight.

Qantas Aug 30, 2023

Server-Driven UI Architecture for Mobile Apps

Daniel Tome from Qantas explores how Server-Driven UI lets you update your mobile app's interface without waiting for App Store approval. It's basically bringing HTML's flexibility to native apps.

IDN Media Aug 22, 2023

Optimizing CI/CD Efficiency with Git Hooks

Bevan Christian from IDN Engineering breaks down a CI/CD cost problem most teams ignore: GitHub Actions bills can hit $1,440/month for a 10-person team doing basic PR testing. His solution? Move testing local w...

Swiggy Aug 15, 2023

Making Swiggy Buttery Smooth

Swiggy's iOS team cut their app launch time in half and reduced app size by 8MB. Here's how they did it.

Instagram Aug 15, 2023

Improving Comment Rendering on Android

Instagram's Android team faced a brutal problem: complex captions with emojis and links were causing 50ms UI thread blocks, making scrolling feel janky even on flagship devices.

PickMe Aug 13, 2023

Exploring the Rotate Button Composable in Jetpack Compose

Sanath Sajeeva Kumara from PickMe breaks down a custom Jetpack Compose button that rotates in 3D space and morphs colors on touch. This isn't your standard Material button.

Cash App Aug 9, 2023

Poko goes multiplatform

Drew Hamilton just took Poko, the Kotlin compiler plugin that generates equals/hashCode/toString, fully multiplatform. This solves a real API compatibility headache for library authors.

Kasikornbank Aug 2, 2023

Quick Preview Compose Multiplatform in Our Existing Project

Sinj Menarucho from KBTG took Compose Multiplatform for iOS (still in Alpha) for a test drive with an existing native project. His verdict? Promising, but not production-ready yet.

Square Jul 27, 2023

Supercharging Continuous Integration with Gradle

Paul Hundal and Pablo Baxter from Square reveal how they slashed CI analysis time by 80% on a monorepo with 5,000+ modules. Their secret? Getting creative with Gradle's internals.

Glance Jul 20, 2023

Enhancing App Performance: A Practical Approach at Glance

Glance powers lockscreens for millions across India, Indonesia, Latin America, and Japan. Zero tolerance for lag when you're the first thing users see.

ASOS Jul 19, 2023

Slaying the Monolith: API Implementation and Modularization in Android

Sean Coyle from ASOS reveals how they're dismantling their Android monolith using a pattern that slashes recompile times. The secret? Splitting every feature into API and implementation modules.

Revolut Jul 19, 2023

Customising Android App UI with Themes

Maxim Kostenko from Revolut reveals how they built one of the most customizable Android apps on the market. Their approach goes far beyond basic dark mode—and it required reverse-engineering Android's own frame...

Instagram Jul 18, 2023

Fast Auto-Generated Streaming JSON Parsing for Android

Instagram's Android app had a JSON parsing problem that was killing their News feed performance. Traditional solutions weren't cutting it.

Swiggy Jul 18, 2023

Login & Signup Result Improvement in Swiggy Android App

Swiggy was losing users during login and signup despite optimizing app size and launch time. The culprit? Manual data entry errors.

Lyft Jul 17, 2023

Being first to market with rideshare on CarPlay and Android Auto

Michael Ramdatt and the Lyft team reveal how they beat every competitor to launch the first rideshare app on CarPlay and Android Auto. The secret? Building their own mapping platform from scratch.

Meta Jul 17, 2023

Bringing HDR video to Reels

Meta just solved a problem most users never notice: making HDR video look great on billions of devices with wildly different capabilities.

Cash App Jul 12, 2023

Multiplatform image loading: Coil 3.0

Colin White reveals how Coil 3.0 is breaking free from Android to become truly multiplatform. The image loading library that powers countless Android apps is making a bold leap to iOS, web, and desktop.

Skeelo Jul 11, 2023

Enhancing User Experience: Reducing ANR Rates with DataStore in Skeelo Android App

Skeelo's Android app was freezing on users. The culprit? SharedPreferences blocking the main thread and triggering ANR errors.

Grab Jul 6, 2023

Preventing App Performance Degradation Due to Sudden Ride Demand Spikes

Grab's engineering team faced a brutal problem: rain in Southeast Asia would crash their entire ride-hailing system. When demand spiked locally, users everywhere suffered.

Cash App Jul 5, 2023

Native UI and multiplatform Compose with Redwood

Cash App just open-sourced Redwood, their answer to the multiplatform UI problem. Unlike other solutions, it renders with native UI toolkits instead of recreating them.

Flipkart Jun 28, 2023

Optimising Page Load Times in Flipkart Mobile App

Flipkart shaved 30% off page load times in their React Native app with 500M weekly visits. Here's how they did it without rewriting everything.

Fullstory Jun 27, 2023

How we lowered Fullstory for Android’s impact on app startup time by 75% thanks to Emerge Tools

Fullstory got a wake-up call when a prospect flagged a 6% startup time increase from their Android SDK. Even when disabled, the SDK was adding 100ms to app launches.

Square Jun 27, 2023

Keeping Up with Android App Size Growth

Square manages hundreds of mobile engineers in a monorepo, all contributing to apps that must stay under Google Play's 150 MB limit. How do they prevent app bloat at scale?

Meta Jun 22, 2023

Page not found - Engineering at Meta

Meta's Engineering blog just hit a 404. Sometimes even the biggest tech companies deal with broken links and content migrations.

Cash App Jun 21, 2023

Flow testing with Turbine

Cash App just open-sourced Turbine 1.0, solving one of the trickiest parts of Kotlin coroutines: testing Flows without the headache.

Gojek Jun 21, 2023

Modularizing Our Driver App for Android: The Process (Part-2)

The article link appears to be broken or unavailable. This is a 404 error page from Medium, not the actual Gojek engineering article about modularizing their Android driver app.

Instagram Jun 20, 2023

Beautiful Performant Android UI

Instagram built a full-screen video viewer that needed to feel buttery smooth on every Android device. Here's how they made animations delightful without killing performance.

Swiggy Jun 20, 2023

Improving Video Cache Hits on Swiggy Apps

Swiggy was bleeding money on video bandwidth costs. The culprit? Videos being requested at 270px, 272px, 275px... you get the idea.

Getir Jun 19, 2023

Unit Testing Android Apps with MockK

Emre Muhammet Engin from Getir tackles a truth bomb: if your code is hard to test, your design probably sucks. His deep dive into MockK shows Android developers how to fix that.

Glance Jun 15, 2023

Distributed Load Testing Using Locust

Glance's engineering team scaled their load testing from basic scripts to a full Kubernetes-powered distributed system. Here's how they did it with Locust.

AWS Jun 7, 2023

Benchmarking your Mobile App with Rooted Android Private Devices and AWS Device Farm | Front-End Web & Mobile

AWS Device Farm now supports rooted Android devices, unlocking granular performance benchmarking that was previously impossible at scale.

Cash App Jun 6, 2023

Kotlin Multiplatform Money Formatter

Patrick Tyska and Terry Yiu from Cash App reveal how the same $1,000 needs to display four different ways across their app. Their solution? Kotlin Multiplatform to consolidate 10 separate money formatters into ...

Premise Jun 6, 2023

Using Gradle Enterprise to Detect Configuration Regressions in an Android Gradle Build

Premise's mobile team caught a sneaky 3x build time regression that only showed up in CI. Here's how they hunted it down using Gradle Enterprise.

Glance Jun 1, 2023

Testing Android UI Performance Part 2

You found the jank in your Android app. Now what? Most teams stop at identifying the problem—but that's only half the battle.

Datadog May 26, 2023

Network Latency Issues in Mobile Apps

Anatole Beuzon and Bowen Chen from Datadog turned what seemed like a simple deployment alert into a months-long debugging odyssey. What they uncovered reveals how deceptively complex network latency issues can ...

Simform May 23, 2023

Android App Performance and Optimization

70% of users expect apps to launch in 3 seconds. 63% will abandon yours if it takes more than 5.

Swiggy May 23, 2023

How We Improved Testing Processes Using Ephemeral Environment

Swiggy was missing production deadlines because their UAT environments were constantly unstable or unavailable. Sound familiar?

Glance May 18, 2023

Testing Android UI Performance

Glance's engineering team serves 100M+ users where visual experience is everything. When UI performance drops, users notice immediately—and they leave.

Pepperfry May 16, 2023

Improving API Response Time with Java Multi-Threading

Pepperfry's engineering team cut API response times by parallelizing requests. Here's how they used Java multi-threading to handle scale without blocking.

Robinhood May 15, 2023

How Server Driven UI is Helping Frontend Engineers Scale Impact

Robinhood was taking weeks and multiple engineers just to make minor UI tweaks. Their Server Driven UI platform cut that to hours with one engineer.

Thumbtack May 12, 2023

Cork: Thumbtack's Android UI Framework

Dominic Zirbel from Thumbtack reveals how they modernized 300+ Android screens without a complete rewrite. Their new framework cut code by 30% while maintaining production stability.

Flutter May 10, 2023

2023 Google Mobile Ads Updates for Flutter

Timothy Hoang from Google just dropped major updates to Flutter's mobile ads plugin. If you've been writing platform code just to customize native ads, that pain point is officially solved.

Gojek May 8, 2023

Modularizing Our Driver App for Android: The Need (Part-1)

Gojek's Android driver app was drowning: 30-minute CI builds, 10-minute local builds, and a team that had outgrown its monolithic codebase. Something had to give.

Instagram May 2, 2023

Building an Open Source Carefree Android Disk Cache

Instagram's disk cache was causing more crashes than any other component in their Android app. The culprit? A well-intentioned open source library that made error handling a developer nightmare.

Getir Apr 28, 2023

Migrating from XML to Jetpack Compose in an MVVM Android Project

Jyoti Sheoran from Getir shares how her team successfully migrated their multi-module MVVM Android app from XML to Jetpack Compose without breaking production. The secret? Their decoupled architecture made grad...

Swiggy Apr 25, 2023

How We Improved Our Android App Cold Start Time by 53%

Swiggy's Android team cut cold start time by 53% in three months. Here's the playbook that drove a 2.2% conversion lift.

Google Apr 24, 2023

Photo Picker API Across Android Versions

Yacine Rezgui from Google just solved one of Android's biggest photo picker headaches. Developers can now ship a single, permission-free implementation that works all the way back to KitKat.

Sentry Apr 21, 2023

How We Built User Interaction Tracking For Jetpack Compose

Markus Hintersteiner from Sentry reveals how they cracked a tricky problem: tracking user interactions in Jetpack Compose without cluttering developers' code or killing performance.

ASOS Apr 19, 2023

Supercharge your (Android) terminal experience

Jack Webb from ASOS turned his Android team into terminal power users. His secret? A toolkit that slashes thousands of keystrokes daily and makes complex git operations feel effortless.

Meta Apr 11, 2023

Why xHE-AAC is being embraced at Meta

Meta serves billions of users with wildly inconsistent audio uploads. Their solution? A codec that adapts audio quality in real time without burning in compression.

AirAsia MOVE Apr 8, 2023

How we built the Favourites feature on the Airasia superapp

Joojo Dadzebo Amoquandoh Dontoh from AirAsia reveals how a simple heart icon became a complex engineering challenge. Building a favorites feature across multiple lines of business meant solving data synchroniza...

Premise Apr 4, 2023

Measuring Render Performance with Jetpack Compose

Premise's Android team put Jetpack Compose 1.0 through rigorous performance testing before adopting it in production. The results? Surprising insights about render times, cold starts, and optimization strategie...

Spotify Mar 31, 2023

Load Testing for 2022 Spotify Wrapped

Spotify Wrapped serves 150M+ users in a single morning. How do you load test for that kind of thundering herd?

Pepperfry Mar 28, 2023

Enhancing Our Android App's Launch Performance

Pepperfry's Android app launches 130,000+ times daily. Every millisecond of delay risks losing customers at the door.

Swiggy Mar 28, 2023

How Swiggy Uses In-App Update API for Better App Adoption

Swiggy got 700,000 users to update their app in one week without sending them to the Play Store. Here's how they did it.

Mercari Mar 27, 2023

Android Developers Blog: Mercari reduces 355K lines of code, a 69% difference, by rebuilding with Jetpack Compose

Mercari just deleted 355,000 lines of code from their Android app. And it works better than ever.

Very Good Ventures Mar 17, 2023

Building Wear OS apps with Flutter: A very good guide

Flutter on your wrist? Very Good Ventures proves it's not just possible but production-ready. After shipping a real Wear OS game, they've cracked the code on building smartwatch apps with Flutter.

Revolut Mar 17, 2023

The Fundamentals of Android Development at Revolut

Revolut's Android team ships features to 25+ million customers every Tuesday at 9am sharp. Here's how 100+ engineers coordinate releases across 70 autonomous teams without QA.

Snapchat Mar 15, 2023

Lens Performance Toolkit

Snap's Lens Performance Toolkit has been sunset, but its replacement Mobile Monitor offers AR developers something better. Here's what changed and why it matters for your lens performance.

Snapchat Mar 15, 2023

Mobile Monitor

Snap's Lens Studio just gave AR developers a powerful weapon against performance issues. If your lenses are failing submission due to slow activation or low FPS, this tool is your answer.

Snapchat Mar 15, 2023

Mobile Lens Profiler: Case Study

Snap's engineering team just dropped a masterclass in mobile performance debugging. Ever wonder why your AR lens stutters on the first frame?

Snapchat Mar 15, 2023

Performance Optimization Guide

Snap's AR Lenses reach millions, but performance issues can kill engagement before users even see your creation. Here's how Snap ensures their AR experiences work across every device.

Meetup Mar 14, 2023

From Snail to Sonic: How Baseline Profiles Supercharged Meetup's Android App

Meetup cut their Android app startup time by 36% without writing much code. Here's how a simple Google technology delivered massive performance gains.

Lyft Mar 10, 2023

The Journey to Server Driven UI At Lyft Bikes and Scooters

Lyft Bikes & Scooters was drowning in complexity: 3 vehicle types, multiple markets, and endless switch statements. Their solution? Move the UI logic to the server.

Instagram Mar 7, 2023

App Modularization and Module Lazy Loading at Instagram and Beyond

Instagram's app was getting bloated. More engineers, more features, slower cold starts, and ballooning app size threatened the lean experience users loved.

Gojek Feb 23, 2023

Building a Multi-Pipeline CI Setup for Running Automated Tests in GitLab

Gojek's engineering team cracked a common CI/CD headache: how do you run automated tests from a separate repo without creating pipeline chaos?

ShareChat Feb 21, 2023

ShareChat addresses Jank issues to increase feed scrolling by 60%  |  Developer stories  |  Android Developers

ShareChat cut janky frames by 75% and boosted feed scrolling by 60%. Here's how they debugged their way to a 4.3-star rating.

Swiggy Feb 21, 2023

Handling Multiple Caches in App

Swiggy's mobile team faced a common problem: juggling disk caches, LRU caches, and databases without creating a maintenance nightmare. Here's their elegant solution.

Sentry Feb 15, 2023

Getting Started With Jetpack Compose

Lazar Nikolov from Sentry explores Jetpack Compose, Google's declarative UI toolkit that's already powering 160 of the top 1,000 Android apps. If you're still building with XML Views, this deep dive shows what ...

Getir Feb 15, 2023

MVI Architecture Pattern in Android

Jyoti Sheoran breaks down MVI architecture with a complete Jetpack Compose implementation that actually makes sense. No theory overload, just practical code you can use today.

Flashlight Feb 6, 2023

Get you your Android Performance Score with Flashlight

BAM just launched Flashlight, a Lighthouse-inspired tool that finally brings performance scoring to mobile apps. Android developers now have a standardized way to measure app performance.

React Native Blog Jan 27, 2023

React Native 0.71 RC1 Android Outage Postmortem

A single character in a Gradle config file took down Android builds for every React Native version simultaneously. Here's how the React Native team handled a 4-day global outage.

Swiggy Jan 24, 2023

Gradle Incremental Test Runner

Swiggy's Android team was stuck in a painful cycle: rebasing PRs, waiting hours for full test suites to run, then doing it all over again. One frustrated engineer decided to fix it over a weekend.

Lyft Jan 17, 2023

Detecting Android Memory Leaks in Production

Lyft discovered memory leaks affecting only 1% of users—issues that would never show up in local testing. Here's how they built a production monitoring system to catch what profiling tools miss.

Guardsquare Jan 16, 2023

Balancing Performance and Security with Android Baseline Profiles and DexGuard

Here's a performance optimization problem most Android teams don't see coming: your security tooling might be silently breaking your baseline profiles. Guardsquare just solved it.

Blibli.com Jan 15, 2023

Nested Scroll with Jetpack Compose

Syntia from Blibli.com tackles one of Jetpack Compose's most frustrating gotchas: the dreaded nested scroll crash. If you've ever hit that 'infinity maximum height constraints' error, this one's for you.

Square Jan 12, 2023

Android Studio Electric Eel Release Celebration

Roger Hu from Square reveals how Android Studio Electric Eel slashed their sync times by 60%. For a team managing 3,000+ Gradle subprojects, that's not just faster—it's 1,600 hours of developer time saved annua...

Callstack Jan 11, 2023

Lottie vs Rive: Optimizing Mobile App Animation

Animations can make or break your app's performance. Choosing between Lottie and Rive isn't just about features: it's about understanding the tradeoffs that impact your users' experience.

Gojek Jan 5, 2023

GoTransit: Unifying Our Mobility Products with Public Transportation

The article link appears to be broken or unavailable. I cannot access the content about GoTransit's mobility integration.

Delivery Hero Dec 27, 2022

How to Stop Worrying About Image Freshness and Reduce the Image Network Traffic

Delivery Hero was burning through 9TB of image data daily. Their apps were sluggish, their network costs were astronomical, and users were waiting too long for images to load.

Strava Dec 20, 2022

Optimizing Testing for Server-Driven Mobile Development at Strava

Strava's Android team hit a wall: testing server-driven UI meant wrestling with Charles Proxy crashes, EOF errors, and 3-4 minute build times. An intern decided to fix it.

OkCredit Dec 20, 2022

Screen Response Time: A Critical Metric for User Experience

OkCredit reduced frozen frames by 40% by obsessing over a metric most Android teams ignore: screen response time.

Swiggy Dec 20, 2022

Fan-tastic Search for Blazing Fast Results

Swiggy's search feature was a mess: 2,000+ lines in a single ViewModel, monolithic XML files, and performance issues. Time for a complete rewrite.

Square Dec 13, 2022

Saving 5,400 Hours a Year: Developer Productivity with Gradle

Paul Hundal from Square's Mobile Developer Experience team reveals how one Gradle feature saved their Android team the equivalent of watching 60 football games worth of waiting time. The ROI? $1.1 million annua...

Reddit Dec 12, 2022

Reddit Recap: State of Mobile Platforms Edition (2022)

Reddit's mobile team just dropped their unfiltered take on iOS vs Android development in 2022. Spoiler: both platforms have some explaining to do.

Sentry Dec 7, 2022

Mobile The Future Is Declarative

Lazar Nikolov explores why Android and iOS are finally catching up to React Native and Flutter. The shift to declarative UI is reshaping native mobile development.

Snapchat Nov 28, 2022

EfficientFormer: Vision Transformers at MobileNet Speed

Snap Research just proved that Vision Transformers can run as fast as MobileNet on actual mobile devices. Yes, really.

Mercado Libre Nov 23, 2022

Mercado Libre Android app is on a diet: Dynamic Features

Rodrigo Pintos from Mercado Libre reveals how they're tackling a massive problem: keeping 120 million active users happy while their app keeps growing. Their solution? Put the app on a diet.

Zomato Nov 22, 2022

Rewriting the Network Connection Layer in Our Android Apps

Zomato's Android app was slow. Their network layer was the bottleneck, costing them speed, bandwidth, and user patience.

Swiggy Nov 22, 2022

Swiggy App on Diet

Swiggy slashed their Android app size by 22.6% in just one day. Here's how they did it without the usual complexity.

Meta Nov 22, 2022

Retrofitting null-safety onto Java at Meta

Meta tackled the billion-dollar mistake: NullPointerExceptions causing 27% of their Android crashes. Here's how they retrofitted null-safety onto millions of lines of Java without rewriting everything.

OkCredit Nov 22, 2022

OKLayoutInflater

OkCredit's Android team was hitting a wall: complex XML layouts were causing frozen frames and ANRs. AndroidX's AsyncLayoutInflater wasn't cutting it.

Cash App Nov 21, 2022

How We Sped Up Zipline Hot Reload

Cash App's team turned a frustrating 20-second hot reload into a blazing 2.7 seconds. Here's how they systematically hunted down every millisecond.

Glovo Nov 17, 2022

Applying DORA Metrics to Mobile Development

rolgalan from Glovo tackles a question mobile teams keep asking: how do you actually use DORA metrics when you don't control app distribution? Turns out, the answer isn't to abandon them—it's to adapt them.

Pinterest Nov 15, 2022

Improving the Player on Android

Pinterest's Android team faced a unique challenge: playing multiple videos simultaneously in a two-column grid without killing performance. Here's how they optimized ExoPlayer to handle it.

Swiggy Nov 15, 2022

Elevating the Swiggy Experience with Voice Search on Android

Swiggy shipped voice search in just 2 weeks and now drives 2,500+ incremental orders daily. Here's how they built it fast without sacrificing quality.

Strava Nov 15, 2022

Improving Auto Pause for Everyone

Strava's engineering team faced a deceptively hard problem: how do you automatically detect when a runner stops moving without draining their battery or showing the wrong pace?

Klarna Nov 15, 2022

6 Lessons Learned from Optimizing the Performance of a Node.js Service

Klarna's A/B testing platform needed single-digit millisecond latency at 99.9%. Their Node.js service was spiking to seconds under load.

Mercado Libre Nov 14, 2022

Nuestra aplicación Android está a dieta: ¡Dynamic Features!

Rodrigo Pintos from Mercado Libre reveals how they tackled a critical problem: keeping 120M active users from uninstalling their app due to storage constraints. Their solution? Putting their Android app on a di...

Cash App Nov 10, 2022

Announcing Multiplatform Paging

Veyndan Stuart from Cash App just open-sourced a solution to one of mobile development's most annoying problems: writing pagination logic twice for Android and iOS.

Uber Nov 3, 2022

Scaling Mobile Device Management

Uber's Client Platform Engineering team faced a massive challenge: rolling out MDM to 20,000+ employees across hundreds of global offices where standard Apple enrollment wouldn't work everywhere.

Google Nov 3, 2022

Measuring Android App Performance with Profileable Builds

Yi Yang from Google reveals why your Android performance measurements might be completely wrong. Debug builds can show 2-3x worse performance than what users actually experience.

Spotify Nov 1, 2022

Strategies and Tools for Performing Migrations on Platform

Spotify migrated 2,200+ mobile components and moved their entire iOS/Android codebase to Bazel across 100+ squads. Here's how they survived the chaos.

Meta Oct 24, 2022

From zero to 10 million lines of Kotlin

Meta just migrated 10+ million lines of Android code from Java to Kotlin across Facebook, Instagram, and Messenger. Here's how they automated the impossible.

Gojek Oct 20, 2022

Planting Trees One Ride at a Time

Gojek turned ride-hailing into climate action with a simple toggle. One developer said it best: 'For the first time in my life, writing code generated physical outputs.'

Grab Oct 20, 2022

Debugging High Latency in the Market Store

Grab's ML feature store went from 200ms to 2 second latency. The culprit? A single line of code in an async library.

Turo Oct 18, 2022

Introducing Nibel: A Navigation Library for Adopting Jetpack Compose in Fragment-Based Apps | by Pavlo Stavytskyi | Turo Engineering | Medium

Turo open-sourced Nibel, their solution to the messy problem of migrating fragment-based Android apps to Jetpack Compose without breaking everything.

Swiggy Oct 18, 2022

Detecting App Cloning & Location Spoofing on Android

Swiggy discovered 8% of their delivery drivers were running cloned apps and spoofing GPS locations. This was breaking their live order tracking system and creating chaos for customers.

OkCredit Oct 18, 2022

How We Reduced Our ANR by Three Times

OkCredit slashed their ANR rate by 67% and cold startup time by 70%. Here's how they debugged one of Android's most frustrating problems.

Zomato Oct 18, 2022

Our Android App Has Been Eating but Shedding Weight

Zomato's Android app was 23MB to download and hogging up to 700MB of cache. Their platform team decided to put it on a diet while still shipping new features.

Strava Oct 18, 2022

Conquering Our Android Crash Count

Strava thought they had a few hundred crashes per day. Crashlytics revealed they were missing 42,000 crashes per week.

Meetup Oct 18, 2022

How Meetup Scales Notification Queue Consumers

Meetup sends 8-10 million notifications daily. Their queue kept backing up, sending messages late or not at all.

Lyft Oct 17, 2022

Recovering from Crashes with Safe Mode

Lyft engineers faced a nightmare scenario: feature flags causing infinite crash loops on app launch, requiring emergency hotfixes and losing revenue. They built Safe Mode to break the cycle.

SoundCloud Oct 13, 2022

Image Loading and Optimization on Android

Arlind Hajredinaj from SoundCloud reveals how a beautiful UI redesign accidentally tanked their image loading performance. The fix? A deep dive into Android optimization that every mobile team should read.

Slack Oct 12, 2022

Mobile Developer Experience at Slack

Slack's 8-person Mobile DevXp team saved $240K annually just by improving PR notifications. Most companies are massively underinvesting in developer experience.

Signal Oct 12, 2022

Removing SMS support from Signal Android (soon)

Nina from Signal just announced they're killing a feature that's been in the Android app since before Signal even existed. After nearly a decade of supporting plaintext SMS alongside encrypted messages, they're...

Pinterest Oct 11, 2022

How Optimizing Memory Management with LMDB Boosted Performance on Our API Service

Pinterest's API team just freed up 4.5GB of memory per host with a clever database swap. The result? Fewer servers, happier users, and a masterclass in optimization.

Mercado Libre Sep 23, 2022

Accessibility in prices, our learning from the Android perspective

Juan Ignacio Unzurrunzaga from Mercado Libre's team reveals how they fixed a critical accessibility gap that affected millions of users: price components that screen readers couldn't interpret correctly.

Mercado Libre Sep 23, 2022

Precios accesibles, nuestro aprendizaje desde la perspectiva Android

Juan Ignacio Unzurrunzaga from Mercado Libre reveals how a simple price component became a masterclass in Android accessibility. Their team discovered screen readers were announcing dollars instead of pesos, re...

Shopify Sep 22, 2022

Lessons Building Android Widgets

Matt Bowen and the Shopify team discovered their Android widgets were making up to 5 unnecessary network calls per update cycle. Their solution? A clever 60-second cache that transformed widget performance.

Callstack Sep 21, 2022

App Performance Monitoring Strategies and Tools

Your app crashes in production and you have no idea why. Callstack breaks down the monitoring strategies that catch issues before your users do.

Turo Sep 20, 2022

How We Reduced Our Android Startup Time by 77%

Turo's Android team slashed their app startup time by 77%. Here's how they turned a sluggish launch into a lightning-fast experience.

Swiggy Sep 20, 2022

Consent Matters

Swiggy's Android team faced a UX dilemma: auto-reading OTPs felt magical to some users, creepy to others. How do you balance convenience with transparency?

AirAsia MOVE Sep 19, 2022

Android Network Traffic Tracking and Monitoring

Ahmed Alnaami from AirAsia reveals how they solved a debugging nightmare: tracking network traffic across Native, React Native, and WebViews in one super app.

Tinder Sep 19, 2022

Performing Due Diligence As Android Engineers

Ishan Khanna from Tinder shares a hard-earned lesson: that shiny third-party SDK could be a ticking time bomb for your app. Here's the framework his team uses to avoid disaster.

Lyft Sep 13, 2022

Productionizing Envoy Mobile at Lyft

JP Simard from Lyft reveals how they replaced URLSession and OkHttp across all their mobile apps with a single networking library—and the results weren't what anyone expected.

Strava Sep 13, 2022

Android Launch Performance

Strava's Android team cut app launch time in half by treating performance optimization like athletic training: consistent measurement, strategic improvements, and relentless focus on efficiency.

OkCredit Sep 13, 2022

How OkCredit Android App Improves UX Writing by Changing Strings on the Fly

OkCredit found a way to A/B test UI copy without shipping new app versions. The results? A 1.7% lift in user activation from changing just two words.

Traveloka Sep 8, 2022

Automating Android Build Benchmarking with Gradle Profiler

Doni Winata from Traveloka's Android Infra team reveals how his team automated build benchmarking to catch performance regressions before they hit production. For projects with 300+ modules and 15-20 minute bui...

Cash App Sep 7, 2022

Molecule: Build a StateFlow stream using Jetpack Compose

Cash App open sourced Molecule, a library that lets you write reactive code as simple if/else statements. No more complex RxJava chains.

TikTok Sep 2, 2022

Android Developers Blog: Precise Improvements: How TikTok Enhanced its Video Social Experience on Android

TikTok slashed app startup time by 45% and reduced video lag by 27%. Here's how they did it using Android's native toolchain.

Getir Aug 24, 2022

Uploading Files to AWS S3 with Progress - Kotlin

Mehmet Gür from Getir tackles a common Android pain point: uploading files to S3 with real-time progress tracking. His solution avoids the MultipartBody pitfalls that trip up most developers.

OkCredit Aug 23, 2022

Comparing Jetpack Compose Performance with XML

OkCredit ran a fascinating A/B test: Jetpack Compose vs XML layouts in production. The results surprised them—and reveal what most teams miss about Compose performance.

Instawork Aug 23, 2022

How We Made Unit Testing Part of Our Engineering Culture

Instawork runs over 1 million tests daily in their CI pipeline. Here's how they made unit testing a core engineering practice, not an afterthought.

Turo Aug 23, 2022

Designing Jetpack Compose Architecture for a Gradual Transition from Fragments on Android

Turo's Android team faced a challenge: how to adopt Jetpack Compose without rewriting their entire fragment-based app overnight.

Meetup Aug 23, 2022

Simplifying Navigation in Multi-Module Android Apps

Meetup's Android team ditched Activities and Fragments for pure Jetpack Compose—and immediately noticed the performance difference. Here's how they navigated the complexity of multi-module apps.

Zomato Aug 16, 2022

How We Cut the Build Time for Our Android App by 95%

Zomato's Android team was losing 7 hours of productivity every single day just waiting for builds. A 10-person team, 20 builds per day, 2+ minutes each time. The math was brutal.

Uber Aug 15, 2022

Building m.uber: Engineering a High-Performance Web App

Uber built a web app that loads in 3 seconds on 2G networks. Here's how they made it smaller than a typical image file.

Tinder Aug 15, 2022

Sparking Jetpack Compose at Tinder

Tinder adopted Jetpack Compose before it hit 1.0. Here's how they navigated the alpha/beta chaos in a massive production app.

Bumble Aug 12, 2022

Appyx vs Jetpack Compose Navigation

Andrey Kovalev from Bumble's engineering team challenges a fundamental assumption: what if Jetpack Compose Navigation's string-based routes and hardcoded BackStack are holding your Android app back?

Delivery Hero Aug 11, 2022

Android Community Month at Delivery Hero

Sid Patil from Delivery Hero shares how his team turned Droidcon Berlin into a masterclass on scaling Android apps across 50 countries. Over 300 developers stopped by their booth to learn what it takes to build...

Pinterest Aug 9, 2022

Four Lessons in Making Pinterest Faster on Android

Pinterest was bleeding user engagement on Android. With 75% of signups coming from outside the U.S. and 90% of global smartphones running Android, they had to fix their performance problem fast.

Strava Aug 9, 2022

Android Guild Week 2: More Modules

Strava's Android team hit a wall trying to modularize their codebase the traditional way. So they flipped their entire architecture upside down.

Grab Aug 4, 2022

Performance Bottlenecks in Go Apps

Grab's engineering team discovered their Go apps were mysteriously throttling at 1.94 CPU cores but flying at 2 cores. The culprit? A sneaky interaction between Kubernetes VPA and GOMAXPROCS.

Coupang Aug 3, 2022

Android App Modularization Strategy

Seongchul Park from Coupang reveals how they tamed a 300,000+ line monolithic Android codebase. The build times were spiraling, new features were getting tangled, and Google's modern deployment features were ou...

Yelp Aug 3, 2022

Android Integration in Analytics Infrastructure

Alexander Dadukin and Dhriti Chawla reveal what it's like being the only 2 Android engineers supporting analytics infrastructure for all of Yelp. Spoiler: they can't see or touch what they build.

Gojek Aug 1, 2022

Introducing Skynet: Infrastructure as Code for Gojek

Gojek runs 15,000+ VMs across 250+ GCP projects serving millions of customers. How do they manage infrastructure at this scale without chaos?

OkCredit Jul 19, 2022

How OkCredit Android App Boosted Network Performance by 30%

OkCredit serves millions in India's Tier-2/3 cities where flaky networks are the norm. Their Android team just cut network call times by 30% with some clever client-side optimizations.

Klarna Jul 19, 2022

How Removing Caching Improved Mobile Performance by 25%

Klarna's team removed their caching layer and saw a 25% performance boost. Wait, what?

Turo Jul 19, 2022

Android UI Testing with Firebase

Turo's Android team hit a wall: their single-device test setup couldn't keep up with their growing UI test suite. Hours of wait time for a single test run wasn't going to cut it.

Swiggy Jul 19, 2022

Automating Mobile Event Verification

Swiggy was drowning in analytics chaos. Thousands of events per session, scattered specs across docs, and manual verification eating up engineering time.

Coupang Jul 14, 2022

Improving the CI/CD pipeline for mobile app development

Johnson Li from Coupang reveals how migrating from Mac minis to AWS EC2 transformed their mobile CI/CD pipeline. Their team was drowning in 3,000+ daily builds with 1-hour wait times.

React Native Blog Jul 8, 2022

Hermes Engine Becomes React Native Default

React Native just made a massive default change that could speed up your app launches and shrink your bundle size. Here's what the benchmarks show.

Mercado Libre Jul 5, 2022

How We Improved Our Android Apps Performance by Up to 24%

Mercado Libre's Android team achieved a 24% performance boost without using Google's recommended Baseline Profiles or Macrobenchmark tools. How did they pull it off?

Booking Jun 30, 2022

Rendering Performance Monitoring on Android

Booking.com's Android team built their own rendering performance monitoring system. Here's why Google Play Console metrics weren't enough.

Just Eat Jun 30, 2022

Android UI Development with Jetpack

Neil Davies from Just Eat Takeaway reveals how his team eliminated manual theme updates across multiple Android apps. Their solution? A design token system that cut redesign time by 80%.

Tinder Jun 29, 2022

How Tinder Solves Complex Lottie Localizations with Server Driven UI

Tinder was manually creating 40+ localized Lottie animations for every campaign. Their solution? A clever architecture that reduced it to just one.

Very Good Ventures Jun 29, 2022

Build a Flutter app with Very Good CLI and Supabase

Very Good Ventures shows how to build a production-ready Flutter app with Supabase that achieves 100% test coverage. This isn't your typical Firebase clone tutorial.

OkCredit Jun 14, 2022

How OkCredit Android App Improved Cold Startup by 70%

OkCredit slashed their Android app cold startup time by 70%. Here's the engineering playbook that made it happen.

Mercado Libre Jun 7, 2022

Why Mobile Apps Performance Matters

Mercado Libre's mobile apps serve 4.5 billion active devices. A Galaxy A10 might take 5 seconds to load a screen—or just 1.67 seconds, depending on conditions.

OLX May 31, 2022

Scaling Android Apps with Gradle Build Types and Product Flavors

Sahil Jain from OLX reveals how they manage multiple market versions of their Android app without maintaining separate codebases. The secret? Strategic use of Gradle's build configuration.

LazyPay May 19, 2022

Faster media delivery to optimize app performance

LazyPay was serving unoptimized images directly from S3, killing app performance and burning bandwidth. Their migration to Cloudinary cut image sizes by 70%.

Tokopedia May 17, 2022

The Benefits and Challenges of Android Dynamic Feature in Tokopedia

Tokopedia cut their Android app download size by 10% using Dynamic Features. But the implementation wasn't as simple as Google's docs suggested.

Robinhood May 17, 2022

How Server-Driven UI Is Helping Frontend Engineers Scale Impact

Robinhood was taking weeks and multiple engineers just to make simple UI changes. Their solution? Server-Driven UI that lets them ship to all platforms without app releases.

ClassPass May 17, 2022

Async Jersey + Kotlin Coroutines

ClassPass engineers were hitting a wall: their Jersey-based APIs couldn't handle traffic spikes without exhausting thread pools. The culprit? Synchronous request processing blocking precious I/O threads.

Zomato May 16, 2022

Giving Android a security boost (Part Two)

Zomato's Android team breaks down SSL certificate pinning: the security feature that could brick your app if done wrong.

Uber May 15, 2022

Managing Deep Scope Hierarchies in Large Codebases

Uber rewrote their Android rider app in 2016 and made an architectural choice that most Android teams avoid: deeply nested dependency injection scopes.

Zomato May 9, 2022

Giving Android a security boost (Part One)

Zomato's Android team is tackling a critical vulnerability that most apps ignore. Your encrypted HTTPS traffic might not be as secure as you think.

Coupang May 6, 2022

Evolution of Android Message Passing Mechanism

Ju Cai from Coupang reveals how their Android app went from Stone Age message passing to a custom LiveData-based event bus that cut development time in half. The journey through three architectural eras offers ...

Slack May 4, 2022

Scaling Slack’s Mobile Codebases: Modernization

Slack just wrapped a massive mobile refactor. The results? 68% of iOS and 92% of Android codebases modernized, with CI times slashed by over 60%.

Slack May 4, 2022

Scaling Slack’s Mobile Codebases: Modularization

Slack's mobile codebase was slowing teams down. Their solution? Break the monolith into hundreds of independent modules.

Medium May 3, 2022

Custom color elevation effect in Compose

Alexandre Bruneau from Medium Engineering discovered that Jetpack Compose's elevation overlay only works with default Material theme colors. His workaround unlocks custom color elevation for any design system.

DoorDash May 3, 2022

How We Applied Client-Side Caching

DoorDash makes millions of ML predictions per second, but their Redis-based feature store was becoming a massive cost and scalability bottleneck. Could client-side caching be the answer?

Slack Apr 29, 2022

Continuous Load Testing

Slack's engineering team ran into a classic performance testing problem: spinning up load tests was so time-consuming that teams avoided doing it. Their solution? Never stop testing.

Swiggy Apr 26, 2022

Mobile DevOps Journey: Evolving Mobile Development at Swiggy (Episode 1)

Swiggy's mobile team was drowning in Jenkins bottlenecks. Build times were slow, machines crashed frequently, and manual interventions killed velocity.

Etsy Apr 26, 2022

One Activity to Rule Them All: Reducing Crashes in the Etsy App

Etsy was getting 1,000 Out of Memory crashes per day on Android. The culprit? A navigation architecture from 2012 that couldn't handle modern browsing behavior.

Tokopedia Apr 19, 2022

Stop Wasting Time on Unit Testing: How Tokopedia Achieved 8X Faster Results | by Andrean Lay | Tokopedia Engineering | Medium

Tokopedia's iOS team was drowning in 30-minute unit test cycles with 65 developers fighting over 9 CI/CD machines. They cut that time by 8X.

Lyft Apr 13, 2022

Monitoring CPU Performance of Lyft’s Android Applications

Lyft's Android app serves millions of users daily, but how do you track CPU performance when hundreds of engineers ship code constantly? The team built a custom monitoring system from scratch.

OkCupid Apr 11, 2022

Animate on a Path with Android Jetpack Compose UI

Phil Boyd from OkCupid shows how to build smooth path animations in Jetpack Compose using just high school math. No complex animation libraries required.

Grab Apr 7, 2022

Profile-Guided Optimisation

Grab's engineering team just unlocked 30% memory savings and 38% storage reduction with a simple compiler flag. Here's how Profile-Guided Optimization (PGO) delivered massive gains with minimal code changes.

Dropbox Mar 29, 2022

Introducing Focus: A New Open Source Gradle Plugin

Ryan Harter from Dropbox just open-sourced a Gradle plugin that cuts Android Studio sync time by 87%. If you're tired of waiting on builds in large Android projects, this is for you.

Swiggy Mar 29, 2022

Designing Swiggy to Be Truly Accessible (Episode 4)

Swiggy tackled mobile web accessibility and discovered that following W3C guidelines was just the starting point. The real challenge? Making a food delivery app work seamlessly for screen reader users.

Lyft Mar 29, 2022

Android Developers Blog: How a single Android developer improved Lyft’s Drivers app startup time by 21% in one month

One Android developer at Lyft cut app startup time by 21% in just 30 days. Here's how they convinced leadership to prioritize performance over features.

Tokopedia Mar 22, 2022

Query Hashing to Reduce GraphQL Payload Size

Tokopedia's mobile team was sending massive GraphQL queries with every API call. The network overhead was killing performance on slower connections.

Dropbox Mar 16, 2022

Making Camera Uploads for Android Faster and More Reliable

Dropbox rewrote their Android camera uploads feature from scratch. It took 2 engineers 2 full years, but first-time uploads now finish 4x faster.

Booking Mar 10, 2022

Measuring Mobile Apps Performance in Production

Booking.com discovered that standard performance monitoring tools from Apple, Google, and Firebase couldn't meet their needs. So they built their own—and just open-sourced it.

Robinhood Mar 8, 2022

Building a Thoughtful Scaling Framework for Engineering

Robinhood doubled their engineering team in a year while scaling to handle unpredictable market swings. Here's the framework that made it possible without breaking their systems or culture.

Swiggy Mar 8, 2022

Delivering a Million Downloads Every Week

Swiggy's Android team serves 1M+ downloads weekly with 52% of users updating within 5 days. That velocity could be a disaster without bulletproof automation.

Paytm Feb 16, 2022

Instrumenting App Flows for Performance Monitoring

The Paytm Editorial Team reveals how they measure the real cost of user friction: tracking payment flows down to the millisecond, excluding network delays that mask app performance issues.

Swiggy Feb 15, 2022

Designing the Swiggy App to Be Truly Accessible (Episode 3)

Swiggy made their food delivery app fully accessible for visually and physically challenged users. The result? A measurable increase in orders from users with disabilities.

Spotify Feb 14, 2022

Introducing Ruler: Our Tool for Measuring Android App Size

Spotify just open-sourced the tool that helped them slash their Android app size by 9%. Here's why app size matters more than you think.

Swiggy Feb 1, 2022

Designing the Swiggy App to Be Truly Accessible (Episode 2)

Swiggy saw 5x growth in accessibility sessions after fixing one critical UX problem: their Android app treated screen reader users like robots, not humans.

Razorpay Jan 31, 2022

Releasing Features with Confidence in Mobile Apps

Shubhnik Singh Mann from Razorpay reveals why most mobile teams are testing wrong. Their approach eliminated P0 production issues entirely.

Netflix Jan 24, 2022

Fixing Performance Regressions Before They Happen

Angus Croll from Netflix reveals how his team slashed false performance alerts by 90% while catching more real regressions. The secret? They stopped using static thresholds entirely.

Swiggy Jan 18, 2022

Designing the Swiggy App to Be Truly Accessible (Episode 1)

Swiggy ignored accessibility for years, effectively locking out millions of users with disabilities. A Change.org petition changed everything.

Tokopedia Jan 18, 2022

How We Solve the Sideloading Crash After App Bundle Implementation

Tokopedia shipped Android App Bundles and immediately hit a wall: mystery crashes on random devices. The culprit? Sideloaded APKs missing critical resources.

Slack Jan 12, 2022

Stabilize, Modularize, Modernize: Scaling Slack's Mobile Codebases

Tracy Stampfli and Bryan Stern reveal how Slack's mobile teams tackled crippling tech debt that was actively slowing product roadmaps. Their solution? A bold 6-month stabilization sprint that transformed both i...

GitHub Jan 12, 2022

How we ship GitHub Mobile every week

GitHub Mobile ships to production every single week with a tiny team. Their secret? Ruthless automation that turns a multi-day release process into a Saturday morning workflow.

Betterment Jan 4, 2022

Flutter Revitalized Our Codebase and Transformed Our Engineering Team

Sam Moore from Betterment shares how his team rewrote 85% of their mobile app in just over a year without disrupting users. The secret? A methodical approach to adopting Flutter that prioritized team buy-in ove...

Callstack Dec 20, 2021

Balancing Native and JavaScript Code in React Native

React Native's bridge can be your bottleneck or your superpower. Callstack explores the critical tradeoff between JavaScript flexibility and native performance that determines whether your app flies or crawls.

Snapchat Dec 17, 2021

Cross-Platform Messaging Experience

Snap rewrote their entire messaging system in C++ to solve a problem that plagues most mobile teams: platform inconsistency causing bugs and doubled engineering effort.

Airbnb Dec 17, 2021

Airbnb's Page Performance Score on Android

Airbnb moved beyond Time To Interactive to measure what users actually see. Their Page Performance Score tracks visual wait time, not just code execution.

Nextdoor Dec 1, 2021

Nextdoor Notifications: Using ML to Keep Neighbors Informed

Karthik Jayasurya from Nextdoor reveals how they transformed notifications from random spam into personalized updates that neighbors actually want. The result? A 40% jump in engagement without sending more mess...

Just Eat Nov 23, 2021

Jetpack Compose UI Testing Strategies

Karan Saimbhi from Just Eat Takeaway compares testing Jetpack Compose to watching Back to the Future on different formats—the content stays the same, but the method evolves. Here's what changes when you move fr...

Reddit Nov 22, 2021

Mobile Developer Productivity at Reddit

Reddit's mobile team ships features 30% faster after overhauling their developer productivity infrastructure. Here's how they did it.

Airbnb Nov 18, 2021

Creating Airbnb's Page Performance Score

Airbnb ditched single-metric performance tracking and built something better. Here's how they unified web, iOS, and Android performance into one 0-100 score.

BlaBlaCar Nov 18, 2021

Reducing Android Build Time at Scale

Patrick Brochado from BlaBlaCar turned a 13-minute Android build into a 4-minute one. His team was losing 8 hours of productivity every single day to slow builds.

Meta Nov 16, 2021

Android Developers Blog: Improving App Startup: Lessons from the Facebook App

Facebook's Android app serves 2.9 billion users monthly. Their startup optimization strategy cut bad starts by focusing on one counterintuitive metric.

Cash App Nov 11, 2021

The state of managing state (with Compose)

Cash App's Jake Wharton just open-sourced their solution to a problem every mobile team faces: state management code that's impossible to read.

DoorDash Nov 9, 2021

The Beginner's Guide to Kotlin Coroutine Internals

Sonic Wang from DoorDash breaks down Kotlin coroutines from bytecode to scheduler. If you've ever wondered what actually happens when you call 'suspend', this deep dive reveals the magic.

Square Nov 4, 2021

Beyond Mobile First: Modern Mobile Development Strategy

Ryan O'Neill from Square reveals why 9 out of 10 mobile shoppers think their experience could be better. His team's solution? Stop thinking mobile-first and start thinking app-first.

Lyft Oct 28, 2021

Mobile Performance @ Lyft

Lyft was serving 17.1M riders while their Android app launched 15-20% slower than competitors. Time to fix that.

Traveloka Oct 27, 2021

Traveloka Android Dynamic Feature Module Migration

Anisha Inas Izdihar and Yusuf Cahyo Nugroho from Traveloka cut build times by 37% and saved users 15MB of storage. Here's how they migrated 26 modules to Android's Dynamic Feature Module framework.

React Native Blog Oct 26, 2021

Making Hermes the Default JavaScript Engine

Meta's Hermes team cut app startup time in half and reduced GC pauses by 34x. Here's how they're making it the default engine for React Native.

Carousell Oct 22, 2021

Browse Page Refactoring on Android

Jintin from Carousell reveals how a 3,000+ line Presenter became their team's productivity nightmare. Their solution? A strategic mix of refactoring AND rewriting that didn't require months of downtime.

Teknasyon Oct 20, 2021

Android Jetpack Compose

Buğra Yetkin from Teknasyon Engineering breaks down why Android teams are ditching XML and fragments for Jetpack Compose. The promise? Less code, better performance, and a completely new way of thinking about U...

Doist Oct 13, 2021

We release our Android apps every day (Android App Continuous Deployment)

Doist went from scary 2-hour manual Android releases to shipping every single day. Here's the engineering playbook that made it possible.

DoorDash Oct 5, 2021

8 Tips Learned from Adding Payments to DoorDash's Android App

DoorDash's Android team learned the hard way that adding payments isn't just about processing transactions. It's about building a system that scales across countries, payment methods, and user expectations.

Mercado Libre Sep 30, 2021

A Importância da Performance Para Apps Mobile

Victor Oliveira from Mercado Libre reveals a harsh truth: 53% of users uninstall apps due to performance issues. With 4.5 billion active Android and iOS devices worldwide, each performing differently, mobile pe...

Thumbtack Sep 29, 2021

Open Sourcing Thumbprint Native Design System

Mallika Potter and Kevin Beaulieu from Thumbtack reveal how they open-sourced their entire native design system—and the surprising technical challenges they had to solve first.

Traveloka Sep 29, 2021

Identifying and Handling Android Build Memory Issues

Doni Winata from Traveloka's Android Infra team reveals why constantly increasing Gradle's heap size actually makes your build problems worse. His deep dive into Android build memory issues shows how to stop fi...

Grab Sep 23, 2021

Designing Resilient Systems Beyond Retries (Part 1: Rate Limiting)

Grab's engineering team learned the hard way: retries and circuit breakers aren't enough when you're running hundreds of microservices at scale.

Walmart Sep 14, 2021

Tech Modernization at scale — Blog Series

Walmart's engineering team learned the hard way: breaking up a monolith without fixing team structure just creates a distributed mess.

Revolut Sep 14, 2021

Improving Product Reliability by Imposing Constraints as a Part of CI/CD Process

Revolut built a system that automatically blocks code deployments based on security risk and bug count. Here's how they shifted security left without slowing down 165,000+ pull requests.

Tokopedia Sep 14, 2021

A Saga of Improvement in Android App Performance (Part 3)

Tokopedia built an internal tool that automatically finds Android performance bottlenecks. No more manual trace analysis or guessing which methods are slowing you down.

Meta Sep 13, 2021

Superpack: Pushing the limits of compression in Facebook’s mobile apps

Meta's Superpack compression tech achieves what traditional tools couldn't: keeping app size in check while developers ship code at massive scale daily.

Teknasyon Sep 8, 2021

Android Hilt Dependency Injection

Mehmet Agah Balbay from Teknasyon Engineering makes the case for ditching Dagger2's boilerplate hell. His team's switch to Hilt for dependency injection delivered real performance wins and faster development cy...

Glovo Sep 7, 2021

Publishing Variant-Aware Android Libraries with Source Distribution

Guillermo Mazzola from Glovo cracked a problem that's been frustrating Android library publishers since AGP 7.0: how to ship variant-aware libraries without breaking source code navigation in your IDE.

Bumble Sep 2, 2021

Checkmate on Compose Part 2

Zsolt Kocsi discovered that Jetpack Compose's lack of shared element transitions wasn't a limitation. It was an opportunity to build something better.

React Native Blog Sep 1, 2021

Preparing Your App for iOS 15 and Android 12

New OS releases can break your app overnight. The React Native team shares critical changes in iOS 15 and Android 12 that could impact your users.

AWS Aug 31, 2021

Implementing caching for pipeline resolvers in AWS AppSync GraphQL APIs

Eric Robertson from AWS AppSync reveals how pipeline resolver caching slashed database requests by 99% for some customers. If your GraphQL API is hitting backend services too hard, this changes everything.

Bumble Aug 31, 2021

Checkmate on Compose Part 1

Zsolt Kocsi from Bumble built a chess app in Jetpack Compose to solve a problem that's frustrated beginners for years: engines tell you a move is bad, but never explain why.

Duolingo Aug 26, 2021

Android App Excellence: Duolingo

Duolingo's Android app was degrading 5-10% every month. New features meant guaranteed performance regressions every 90 days.

Slack Aug 25, 2021

Building Android Conversation Bubbles

Mathias Roth from Slack reveals how a hardcoded Android display name prefix saved their Conversation Bubbles implementation. What started as straightforward API work turned into a detective story involving work...

Square Aug 24, 2021

Kotlin Multiplatform: Shared Test Resources

Victoria Gonda from Square tackles a tricky KMP problem: Kotlin/Native doesn't support I/O, yet your shared tests need to read fixture files. Here's the workaround that makes it possible.

Just Eat Aug 23, 2021

Best Practices for Writing Compose Code

GJ Kooijmans from Just Eat Takeaway compares writing software to Bruce Springsteen's E Street Band. Both succeed by composing simple parts into harmonious wholes—but most developers struggle with the compositio...

Grab Aug 19, 2021

Preventing Pipeline Calls from Crashing Redis Clusters

Grab lost 95% of ride bookings for a full minute when a single Redis slave node failed. Their highly available cluster with multiple replicas somehow became a single point of failure.

React Native Blog Aug 17, 2021

React Native 0.65 Release

React Native 0.65 just dropped with performance gains that'll make you rethink your mobile architecture. The Hermes engine upgrade alone is delivering 20-50% improvements on CPU-intensive workloads at Facebook.

Grab Aug 12, 2021

Project Bonsai

Grab's Android app had 4 million lines of code and was bleeding users. Google's research showed every 6MB increase costs 1% of conversions.

Square Aug 10, 2021

Jetpack Compose Support in Workflow

Zach Klippenstein from Square reveals how they bridged their state machine architecture with Google's declarative UI toolkit—a year before Compose hit 1.0.

Tokopedia Aug 10, 2021

A Saga of Improvement in Android App Performance (Part 2)

Tokopedia built an automated performance testing pipeline that catches regressions before they hit production. Here's how they measure every build, every night.

Cash App Aug 3, 2021

Android Architecture for the Rocketship - Part 1: Modularisation

Huan Nguyen from Afterpay reveals how they architected their Android rewrite to support hundreds of future developers. The secret? A three-tiered modular structure that makes parallel development actually work.

Revolut Jul 27, 2021

Best Practices for Unit Testing at Revolut

Revolut's iOS team ships weekly updates with minimal regression. Their secret? Making unit tests actually fun to write.

Tokopedia Jul 27, 2021

How We Improve Android App Performance (Part 1)

Tokopedia's Android team achieved a 40% improvement in app start time and page load speed. Here's the systematic approach that got them there.

Microsoft Jul 20, 2021

Spotting Latency Regressions Ahead of Time at Teams Mobile

Microsoft Teams Mobile merges 50+ commits daily from 350+ developers. How do they catch performance regressions before users feel the pain?

Lyft Jul 20, 2021

Building an Enterprise IntelliJ Plugin for Android Developers

Pierce Johnson from Lyft reveals how a custom IntelliJ plugin transformed productivity for 60+ Android developers. The secret? Automating the repetitive tasks that were quietly draining engineering velocity.

Uber Jul 14, 2021

Carbon: Dual Binary Mobile App

Uber rewrote their entire driver app serving 3 million drivers. How do you ship that without breaking your business?

OLX Jul 6, 2021

Scaling Android Apps with Gradle: Different Source Sets (Part 2)

OLX Engineering scaled their Android app across multiple markets without creating code chaos. Here's how they used Gradle source sets to keep things clean.

Airbnb Jun 29, 2021

A Deep Dive into Airbnb’s Server-Driven UI System

Airbnb ships features simultaneously across web, iOS, and Android without waiting for app store releases. Their secret? Server-driven UI.

Walmart Jun 22, 2021

ACF Automated Code Formation Engineering Excellence

Walmart's engineering team cut time-to-market for cloud self-service platforms from 26 weeks to under 2 weeks. Here's the framework that made it possible.

Pinterest Jun 22, 2021

Trusting Metrics at Pinterest

Pinterest relies on data to drive decisions and ML models. But what happens when a metric as simple as Daily Active Users gets counted wrong?

Cash App Jun 21, 2021

Sharp Edges in Kotlin Coroutines Testing Tools

Kevin Cianfarini from Cash App discovered a sneaky threading bug that stumped his entire team. The culprit? A misunderstood feature in Kotlin's coroutine testing tools that silently breaks thread assertions.

Grab Jun 17, 2021

App Modularisation at Scale

Grab went from one monolithic mobile app to over 1,000 modules. Here's what they learned about scaling a superapp.

Flutter Blog Jun 14, 2021

Improving Platform Channel Performance in Flutter

Aaron Clarke from Google's Flutter team eliminated unnecessary memory copies in platform channels and achieved up to 52% performance gains. Here's how he debugged his way through Objective-C class clusters and ...

Grab Jun 3, 2021

Structured Logging: The Best Friend You'll Want When Things Go Wrong

Grab's logging bills were spiraling out of control. Their solution? A complete rethink of how they capture what happens in production.

Bumble Jun 3, 2021

Scalable Jetpack Compose Navigation

Lachlan McKee from Bumble Tech tackles a critical scalability problem in Jetpack Compose Navigation that Google's docs don't address. His solution? Delegate route creation to feature modules using Dagger Hilt f...

Microsoft May 25, 2021

Scaling Mobile Development at Microsoft: Mental Model

Microsoft's mobile teams were drowning in duplicate code. Every app rebuilt the same file picker, calendar, and sharing experiences from scratch.

Flutter May 18, 2021

Announcing Flutter 2.2 at Google I/O 2021

Tim Sneath from Google reveals Flutter 2.2 just hit a major milestone: it's now the #1 cross-platform framework, powering 1 in 8 new Play Store apps. The momentum is undeniable.

DoorDash Apr 7, 2021

Optimizing OpenTelemetry's Span Processor for High Throughput and Low Latency

DoorDash's OpenTelemetry adoption hit a wall: 72% CPU utilization versus 56% without tracing. That's a costly tax for observability.

Microsoft Mar 30, 2021

Reducing Android app size in practice at LinkedIn | by Chao Zhang | Microsoft Mobile Engineering | Medium

LinkedIn reduced their Android app size by 27.5MB through aggressive optimization. Here's how they did it without compromising features.

Traveloka Mar 25, 2021

Traveloka Android Dynamic Feature Module Pilot Project

Anisha Inas Izdihar and Yusuf Cahyo Nugroho from Traveloka tried implementing Dynamic Feature Modules in 2019 when documentation was scarce and critical tools were broken. Their workarounds got creative: they l...

Slack Mar 24, 2021

Client Tracing: Understanding Mobile and Desktop Application Performance at Scale

"My app is slow" - every engineer's nightmare. Slack's mobile team was tired of hitting dead ends when debugging performance issues.

AWS Mar 23, 2021

CDN Caching Improvements for Better App Performance

AWS Amplify just shipped CDN caching improvements that delivered a 98% reduction in response times for static assets. Cookie handling was the culprit.

Dropbox Mar 23, 2021

Detecting Memory Leaks in Android Applications

Dropbox's Android team was fighting OutOfMemoryError crashes. The culprit? Memory leaks hiding in activity lifecycles that traditional debugging couldn't catch.

Thumbtack Mar 16, 2021

Automating Integration Tests To Ensure Android App Quality

Brian Terczynski from Thumbtack reveals how his team eliminated weekly manual QA sessions that were draining engineering time. Their solution? A fully automated integration testing pipeline that catches bugs be...

Zalando Mar 16, 2021

Flexbox Layout Behavior in Jetpack Compose

Zalando's engineering team is evaluating Jetpack Compose to replace Litho for their backend-driven mobile screens. But there's no Flexbox composable, so they mapped it themselves.

Google Mar 16, 2021

Boosting Developer Success with Android Tools

Sameer Samat from Google just announced a move that will put more money back into 99% of Android developers' pockets. Starting July 2021, the economics of building on Google Play are fundamentally changing.

React Native Blog Mar 12, 2021

React Native 0.64 Release

React Native 0.64 just brought Hermes to iOS, and it's a game-changer for app performance. The team is finally closing the gap between Android and iOS optimization.

Pinterest Mar 10, 2021

How Pinterest Leverages Honeycomb to Enhance CI Observability and Improve CI Build Stability

Pinterest sends 1 million CI build events to Honeycomb daily. Here's how they turned that data into a competitive advantage for mobile development.

Walmart Mar 9, 2021

Improve Reliability with Observability Tracing in Your CI/CD Pipeline

Walmart's engineering team reveals how observability tracing transformed their CI/CD pipeline reliability. The secret? Treating data requests like package tracking.

Bukalapak Mar 9, 2021

Speeding Up Android Unit Tests with Test Sharding on GitLab CI

Fadel Trivandi Dipantara from Bukalapak faced a brutal reality: 3,000+ test classes taking 2.5 hours to run. His team couldn't ship fast enough, and traditional solutions kept failing.

Deezer Mar 4, 2021

Private libraries in Android — how to manage them.

Jean-Baptiste Vincey from Deezer reveals how their team manages private Android libraries across multiple apps—without the chaos. Their approach handles 3 major libraries with bi-weekly releases and keeps depen...

Lyft Mar 2, 2021

Announcing the Mobile Native Foundation

Keith Smiley from Lyft just announced something that could change how we all build mobile apps. Instead of every company rebuilding the same infrastructure in silos, major tech players are finally collaborating...

Google Feb 25, 2021

Low-Power Sleep Tracking on Android

Nick Grayson from Google reveals how Android's new Sleep API can track your sleep patterns while barely touching your battery. No more choosing between sleep insights and phone longevity.

Just Eat Feb 25, 2021

JSON Serialization Libraries Performance Comparison

Israel Abramov from Just Eat Takeaway tested 10 JSON serialization libraries across 8 scenarios. The results? Your default serializer might be costing you serious performance.

Pinterest Feb 18, 2021

How We Designed Our Continuous Integration System to Be More Than 50% Faster

Pinterest's Engineering Productivity team slashed CI build times by over 50% in one week. Here's the architecture that made it possible.

OLX Feb 15, 2021

Designing a Custom Progress bar with timed breaks in Android

Sarina Dhamija from OLX Engineering tackles a tricky Android UI challenge: building a circular progress bar that shows pause breaks during video recording. Think Instagram Stories meets custom video capture.

Dropbox Feb 9, 2021

How We Sped Up Dropbox Android App Startup by 30%

Dropbox's Android app was slowly dying by a thousand cuts. Over 4 months, startup time crept up unnoticed until they finally looked at the bigger picture.

Microsoft Feb 2, 2021

Measuring Android App Size in CI

Microsoft SwiftKey's team knows that reducing app size once isn't enough. The real challenge? Keeping it small with every code change.

Expedia Feb 2, 2021

Solving Native Memory Leaks in Mobile Apps

Sid Rathi from Expedia Group debugged a production nightmare: KStream apps dying in an endless OOM loop. The culprit? A single unclosed iterator eating native memory.

Netflix Jan 21, 2021

Optimizing the Aural Experience on Android Devices with xHE-AAC

Phill Williams and Vijay Gondi from Netflix reveal how a codec upgrade is solving one of mobile streaming's most annoying problems: constantly adjusting your volume.

Snapchat Jan 6, 2021

Time to Camera Ready

Snap's engineering team obsesses over one metric: Time to Camera Ready. Miss the bear crossing the street because your app was too slow? That's exactly the problem they're solving.

Tokopedia Jan 5, 2021

Tokopedia Android Engineering 2020 Review

Rico Harisin from Tokopedia reveals how their Android team shipped weekly releases while building a complete performance infrastructure from scratch. Their secret? Treating CI/CD like a product.

Thumbtack Dec 18, 2020

Using Android Screenshot Tests To Verify View Correctness

Emily Fujimoto from Thumbtack reveals how her team caught critical layout bugs that traditional testing completely missed. The solution? Screenshot tests that verify what your UI actually looks like, not just w...

Lyft Dec 17, 2020

Introducing Pulse: Envoy Mobile's stats library

Jingwei Hao from Lyft reveals how real-time stats APIs caught a production crash spike at 9:55am, enabling engineers to ship a hotfix before most users even noticed the problem.

Bumble Dec 11, 2020

How we achieved a 6x reduction of ANRs - Part 1: Collecting Data

Bumble's Android app was bleeding users to ANR dialogs. Their ANR rate sat above Google Play's threshold, threatening search rankings and user trust.

Bumble Dec 11, 2020

How we achieved a 6x reduction of ANRs - Part 2: Fixing ANRs

Bumble's Android team slashed their ANR (Application Not Responding) rate by 6x. Here's how they debugged one of mobile's most frustrating problems.

BBC Dec 7, 2020

Modernising a Legacy Android App Architecture: Part Three - Applying the Refactor

Rob Pridham from BBC Sport reveals how his team tackled a massive Android refactor—migrating from multiple activities to a single-activity architecture while keeping the app running in production.

BBC Dec 7, 2020

Modernising a Legacy Android App Architecture: Part One - Single Activity

Rob Pridham from BBC Sport reveals how they modernized a 7-year-old Android codebase without a full rewrite. The secret? A strategic refactor that tackled navigation chaos first.

BBC Dec 7, 2020

Modernising a Legacy Android App Architecture: Part Two - MVVM

Rob Pridham from BBC Sport ditched the trendy frameworks and went old school—callback listeners and view controllers—to modernize their Android app. Controversial? Maybe. Effective? Absolutely.

Dropbox Dec 1, 2020

Revamping the Android Testing Pipeline at Dropbox

Dropbox cut their Android CI pipeline from 75 minutes to 25 minutes without switching build systems. Here's how a team of 60+ mobile engineers solved testing at scale.

Grammarly Nov 29, 2020

How Grammarly Built a Native Keyboard for Android

Grammarly's Android keyboard gets used 70+ times per day by the average user. Building it meant solving problems most app developers never face.

Tokopedia Nov 27, 2020

Monitoring Android Codebase

Fajar Ulin Nuha from Tokopedia reveals how their 50+ Android engineers manage a codebase that changes so dramatically every single week that assumptions become dangerous. Their solution? Become data-driven deve...

Tokopedia Nov 27, 2020

Logging And Alerting in Android Tokopedia

Hendry Setiadi from Tokopedia reveals how they built a custom logging system that catches production issues before users even notice. Firebase Crashlytics is great, but what if you need more?

Huawei Nov 25, 2020

Leak Canary: What Is It?

Memory leaks are silent killers of Android app performance. They're hard to spot manually, but there's a tool that does the heavy lifting for you.

Farfetch Nov 3, 2020

Mobile App Launch Performance

Gonçalo Alvarez from Farfetch drops a hard truth: 86% of users uninstall apps after one use due to poor performance. Your launch time might be costing you customers before they even see your product.

Farfetch Nov 3, 2020

Mobile App Launch Performance II

At Farfetch, a 0.1 second delay in warm app launch costs $4.2M annually. That's less time than it takes to blink.

Dropbox Oct 27, 2020

Our Counterintuitive Fix for Android Path Normalization

Dropbox Android users couldn't see folders with Cyrillic characters or certain special names. The obvious fix? Way too risky to attempt.

Lyft Oct 27, 2020

Decomposing network calls on the Lyft mobile apps

Lyft's mobile apps used to poll a single endpoint every 5 seconds for everything. That "Universal Object" became their biggest reliability nightmare.

Pinterest Oct 20, 2020

Pre-submit UI Tests at Pinterest

Pinterest's UI test suite was failing more than 50% of the time. Engineers were drowning in false positives, and tests had lost all credibility.

Microsoft Oct 13, 2020

Improve Android App Screen Launch Times Using LazyLifecycle Callbacks

Microsoft Teams Android engineers faced a critical problem: heavy initialization code in lifecycle callbacks was killing app launch times. Their solution? Get lazy.

Flutter Sep 30, 2020

Learning Flutter's new navigation and routing system

John Ryan from Flutter's team tackles one of mobile dev's messiest problems: navigation. But the solution might be more complex than the problem itself.

Revolut Sep 29, 2020

Custom View from Scratch Part III: Performance and Optimisation

Eugene Zubkov from Revolut hit a wall building a custom Android chart: it literally disappeared due to texture size limits. His debugging journey reveals critical performance traps most Android devs don't see c...

GitHub Sep 23, 2020

GitHub Mobile and GraphQL

Hesham Salman from GitHub reveals how GraphQL eliminated over-fetching and let their mobile team ship features at warp speed. The secret? Letting the client define exactly what data it needs.

Uber Sep 18, 2020

New Rider App Architecture

Uber threw away years of code and rebuilt their rider app from scratch. Here's why that radical decision paid off.

Walmart Sep 15, 2020

5 Minute DevOps Effective Testing

Walmart's DevOps team has a bold claim: if you're not testing during development, you're risking the business. Here's why your testing strategy might be fundamentally broken.

Airbnb Sep 8, 2020

Motion Engineering at Scale

Airbnb was shipping hundreds of features, but custom animations were getting cut due to complexity. Their solution? A declarative framework that reduced transition code from hundreds of lines to just a few.

Netflix Sep 8, 2020

Seamlessly Swapping the API backend of the Netflix Android app

Netflix Android engineers migrated 170 API endpoints from a monolith to a new microservice without users noticing. Here's how they pulled it off over a year.

Google Sep 2, 2020

Data Storage Best Practices with Jetpack

Florina Muntenescu and Rohit Sathyanarayana from Google reveal why SharedPreferences has been secretly blocking your UI thread and causing ANRs. Their solution? Jetpack DataStore, a complete reimagining of Andr...

Google Sep 1, 2020

Android GPU Inspector: Open Beta Release

Jay Kong from Google's Gaming and Graphics team just opened the beta for Android GPU Inspector, and early results are impressive. Diablo Immortal cut vertex bandwidth by 45%, while Crash Bandicoot slashed frame...

Slack Aug 28, 2020

Tracing at Slack: Thinking in Causal Graphs

Slack processes 8.5 billion spans daily, but their tracing system looks nothing like traditional distributed tracing. Here's why they rebuilt it from scratch.

OkCupid Aug 28, 2020

Improved Localization with Custom TextView Effects

Anton Begeima from OkCupid's engineering team turned a localization nightmare into an elegant solution. Instead of managing separate images for every language, his team built a custom TextView that handles text...

Microsoft Aug 18, 2020

Clean Android WebView Caching

Microsoft Teams Android engineers cut WebView initialization time by 70% using a clever caching technique. Here's how they avoided memory leaks while sharing WebViews across activities.

Tokopedia Aug 14, 2020

Migrating Tokopedia Academy App From Dagger Android Into Hilt!

Yehezkiel L from Tokopedia cut their dependency injection boilerplate dramatically by migrating from Dagger Android to Hilt. The result? Cleaner code, faster onboarding, and way less confusion for their team.

DoorDash Aug 4, 2020

Implementing the Android Navigation Library

Maria Sharkina from DoorDash discovered that Android's Navigation Library has a critical flaw: it forces navigation before your app is ready. Here's how her team solved it without breaking deep links or the bac...

Badoo Jul 30, 2020

Using Gradle Composite Builds as a BuildSrc Replacement

Yury from Bumble Tech tackles a painful Gradle problem: buildSrc invalidates your entire build cache with every change. Here's how composite builds solve it without sacrificing IDE support.

Snapchat Jul 27, 2020

Shipping Two Apps In One Android

Snapchat shipped two complete Android apps in a single APK to A/B test their rewrite. The engineering challenge? Android wasn't designed to support this at all.

OkCupid Jul 27, 2020

Improve Android Testability with Fakes and Factories

Brian Plummer from OkCupid hit a wall adding a simple analytics event: his unit tests broke because static constructs were calling the analytics library directly. Here's how he fixed it with a pattern that made...

Spotify Jul 22, 2020

Leveraging Mobile Infrastructure with Data-Driven Decisions

Spotify's mobile infrastructure team turned build time chaos into predictable performance. Their secret? Making every engineer a data scientist.

React Native Blog Jul 17, 2020

React Native Core Principles and Best Practices

The React Native team at Facebook just pulled back the curtain on how they decide what to build next. Spoiler: cross-platform consistency isn't their top priority.

Farfetch Jul 16, 2020

App Size Matters II

What if I told you a single 15MB increase in your app size could cost your business $1M annually? Farfetch's mobile team did the math, and the numbers are eye-opening.

Farfetch Jul 16, 2020

App Size Matters I

Gonçalo Alvarez from Farfetch drops a hard truth: your bloated app is costing you users, installs, and market share. Here's why app size is a business problem, not just an engineering one.

Dropbox Jul 15, 2020

How We Ensure Credible Analytics on Dropbox Mobile Apps

Marianna Budnikova from Dropbox reveals why your mobile analytics are probably lying to you. And it's costing you two weeks every time you get it wrong.

Google Play Jul 14, 2020

Optimizing Notifications in Games

Google Play analyzed platform-wide notification data across all games and found something surprising: more notifications actually hurt retention.

Bukalapak Jul 9, 2020

Managing App Size for Super Apps

Hendro Riyadi from Bukalapak reveals how his team slashed their super app size by 35% while shipping new features in parallel. In emerging markets where users have limited data plans and older devices, this was...

Hotstar Jul 8, 2020

Android: Leveraging RecyclerView Effectively with ViewModel

Ninad MG from JioHotstar challenged Android best practices and won. His team's unconventional approach to RecyclerView architecture now powers a social feed with 20+ card types across multiple teams.

React Native Blog Jul 6, 2020

React Native 0.63 Release

React Native just fixed the two biggest complaints from mobile teams: cryptic error messages and interactions that scream 'this isn't a native app.'

Slack Jun 29, 2020

Making Slack Faster By Being Lazy

Slack cut load times by 65% for large teams by doing less work, not more. Their secret? Strategic laziness.

Slack Jun 29, 2020

Making Slack Faster By Being Lazy: Part 2

Slack's desktop client was grinding to a halt as teams scaled. The culprit? An over-reliance on browser LocalStorage that seemed smart at first.

LinkedIn Jun 26, 2020

Faster testing on Android with Mobile Test Orchestrator

LinkedIn's Android test suite hit tens of thousands of tests, pushing execution times into the danger zone. Developer productivity was tanking.

Microsoft Jun 23, 2020

App Size Reduction at Microsoft SwiftKey

Microsoft SwiftKey slashed their Android app size by 50% and boosted install conversions. Here's the playbook they used to get there.

Badoo Jun 16, 2020

WebRTC on Android: Enabling Hardware Encoding Across Devices

Ivan Dyatlov from Bumble Tech discovered that WebRTC's H.264 hardware encoding failed on most Android 5.x devices despite official support claims. His deep dive into codec implementations reveals why video call...

Bukalapak Jun 14, 2020

Automation for WebView Testing

Ferawati Hartanti Pratiwi from Bukalapak breaks down WebView automation with Appium. If you've struggled with context switching between native and web elements in mobile testing, this practical guide cuts throu...

Cash App Jun 9, 2020

A Great Way to do Android Presenters

Cash App's Android team chose presenters over ViewModels and MVVM. Here's why their "boring" code wins.

Spotify May 28, 2020

Spotify Modernizes Client-Side Architecture to Accelerate Service on All Devices

Spotify lifted the 10,000 Liked Songs limit. But that simple feature request triggered a year-long architecture overhaul affecting 100,000 lines of code.

OkCupid May 18, 2020

Find and Fix Issues with Android Studio Static Code Analysis

Brian Plummer from OkCupid reveals how their team uses Android Studio's built-in static analysis to systematically improve code quality. But running the tool is the easy part—merging those changes without break...

Spotify May 1, 2020

How We Gave Superpowers to Our macOS CI

Spotify cut iOS pre-merge CI times by 75% with one infrastructure change. Here's how they validated and scaled their approach.

Grindr Apr 19, 2020

Measuring Frame Rate Performance Per Fragment in Android

Wesley Ong from Grindr Engineering tackles a blind spot in Android performance monitoring: Firebase tracks frame rates per Activity, but what about the Fragments inside them?

Airbnb Apr 14, 2020

Making Airbnb's Android App More Accessible

Airbnb's Android app serves millions of travelers daily. But how many users were being left behind due to accessibility barriers?

Adobe Apr 7, 2020

Bank of America Amps Up In-App Experiences

Bank of America cut their mobile app response time in half. Here's how they did it with a simple API consolidation strategy.

Airbnb Apr 7, 2020

Better Android Testing at Airbnb (Part 6)

Airbnb's Android tests take 2 hours to run but finish in minutes. Here's the CI infrastructure that makes it possible.

Flipkart Apr 1, 2020

Madman: An Open-Source Ads Framework for Android

Anirudh Ramanan from Flipkart reveals how Google's IMA library was causing 15% of users to bail before videos even started. Their solution? Build their own ads framework from scratch.

Expedia Mar 31, 2020

How Apollo Android Client Cache Works at Vrbo

Vrbo eliminated loading screens in their Android app entirely. Here's how they used Apollo GraphQL's normalized cache to make navigation feel instant.

Airbnb Mar 31, 2020

Better Android Testing at Airbnb (Part 5)

Airbnb automated screenshot testing across thousands of Android screens to catch UI regressions that manual QA kept missing. Here's how they built it.

React Native Blog Mar 26, 2020

React Native 0.62 Release

React Native 0.62 just shipped with Flipper debugging built in by default. This release fundamentally changes how mobile developers debug cross-platform apps.

Airbnb Mar 24, 2020

Better Android Testing at Airbnb (Part 4)

Airbnb's Android tests were failing randomly. The culprit? Everything from cached drawables to delayed runnables creating unpredictable test behavior.

Google Play Mar 24, 2020

How to Fix App Quality Issues with Android Vitals (Part 2)

Your Android app's crash rate could be killing your Play Store rankings without you realizing it. Google's Android Vitals dashboard now has powerful new features to help you catch issues before users do.

Airbnb Mar 17, 2020

Better Android Testing at Airbnb (Part 3)

Airbnb's Android team built a custom testing framework that runs thousands of automated tests across fragments without writing repetitive test code. Here's the architecture that makes it possible.

Google Play Mar 17, 2020

How to Fix App Quality Issues with Android Vitals (Part 1)

Over 40% of one-star reviews on Google Play mention app stability issues. Google's Android Vitals can help you fix them before users bail.

Pinterest Mar 15, 2020

How a One-line Change Decreased Our Build Times by 99%

Pinterest found a single tweak that slashed their build times by a jaw-dropping 99%.

Gojek Mar 15, 2020

Reducing Our Build Time by 50%

Gojek's iOS team was bleeding 11 minutes per build. 100 engineers, 350 daily CI pipelines, and a productivity crisis that demanded action.

Airbnb Mar 10, 2020

Better Android Testing at Airbnb (Part 2)

Airbnb's Android team was drowning in manual QA and flaky Espresso tests. Then they built a testing framework that changed everything.

Headspace Mar 3, 2020

Our Android testing process

Headspace went from <20% test coverage to 80%+ during a complete app rewrite. Here's how they built a testing strategy that actually works.

Airbnb Mar 3, 2020

Better Android Testing at Airbnb (Part 1)

Airbnb built a system that automatically tests every click in their Android app without writing a single Espresso test. Here's how they turned interaction testing from tedious to automatic.

Netflix Feb 5, 2020

Bringing AV1 Streaming to Netflix Members’ TVs | by Netflix Technology Blog | Netflix TechBlog

Netflix just brought AV1 streaming to TVs, marking a major milestone for the royalty-free codec. The result? Measurably better streaming for millions of members.

Lyft Jan 21, 2020

Lyft's Journey Through Mobile Networking

Michael Rebello from Lyft reveals how they scaled from hand-written APIs to a unified networking architecture serving 500+ endpoints. The journey involved killing technical debt, slashing payload sizes by 50%, ...

Dropbox Jan 15, 2020

Store Grand Re-opening: Loading Android Data with Coroutines

Dropbox just took over Store, the popular Android data loading library, and rewrote it from scratch in Kotlin. The reason? RxJava was making it too easy for developers to leak memory.

Grab Dec 26, 2019

Journey to a Faster Everyday Super App: Where Every Millisecond Counts

Grab reduced their super app's startup time by 60% while shipping dozens of new features. Here's how they saved users 59,582 hours per day.

Grab Dec 26, 2019

Journey to a Faster Everyday Super App

Grab cut app startup time by 60% while shipping dozens of new features. Here's how they did it without compromising velocity.

Airbnb Dec 13, 2019

Better Android Testing at Airbnb (Part 4: Testing ViewModels)

Airbnb built a testing framework so elegant that their ViewModels tests read like plain English. Here's how they made testing actually enjoyable.

Thumbtack Dec 2, 2019

Targeted Code Coverage Reports For Android Continuous Builds

Brian Terczynski from Thumbtack reveals how their Android team solved a critical problem: developers couldn't see which specific lines in their code changes lacked test coverage. The solution? Two custom report...

Revolut Nov 29, 2019

Reactive Data Flow in Revolut Android App

Roman Iatcyna from Revolut reveals how they built a reactive data layer that handles offline-first architecture at scale. Their solution? A custom DataObservableDelegate that abstracts away the complexity of mu...

AWS Nov 21, 2019

Improving GraphQL API performance and consistency with AWS AppSync Caching and DynamoDB Transactions support

AWS just shipped two features that solve opposite problems: making GraphQL APIs blazing fast and keeping DynamoDB writes bulletproof. Here's how they change the game for mobile backends.

React Native Blog Nov 18, 2019

React Native Doctor Diagnostic Tool

How much time does your team waste debugging React Native environment setup? The React Native Community just shipped a solution that auto-fixes your dev environment issues.

Dropbox Oct 30, 2019

Modernizing Our Android Build System Part I: The Planning

Dropbox's Android build system was so painful that engineers 6+ months in still couldn't create new modules. Time for a rebuild.

Dropbox Oct 30, 2019

Modernizing Our Android Build System Part II: The Execution

Dropbox migrated 75 Android modules from a custom build system to Gradle without breaking their engineering team's workflow. Here's how they pulled it off.

Strava Oct 25, 2019

A Summer of Android at Strava

Artem Sharypov from Strava's Experience team rebuilt their entire Android upload service from scratch. Why throw away working code? Because sometimes technical debt costs more than a rewrite.

Netflix Oct 10, 2019

Building High-Performance Mobile Applications at Netflix

Netflix hosted their first mobile engineering event to tackle a problem every mobile team faces: building performant apps on resource-constrained devices.

React Native Blog Sep 18, 2019

React Native 0.61 Release

React Native's hot reloading was so broken that most developers just turned it off. The 0.61 release completely reimagined it from scratch.

Traveloka Sep 9, 2019

Dagger and Multi-Module Architecture in Traveloka Android App

Alifa Nurani Putri and Yusuf Cahyo Nugroho from Traveloka reveal how their single Dagger component ballooned to 17,705 lines of code across 25+ products. Their refactoring journey cut initialization time and bu...

Grindr Sep 7, 2019

OOM Bitmap Resource Analysis and Optimization

Ansgar Lin from Grindr Engineering found a single placeholder image consuming 8.3MB of memory at runtime. On devices with only 16-32MB Java heap, that's a recipe for constant crashes.

Callstack Sep 6, 2019

Integrating React Native into Existing Android Applications

Callstack explores how to add React Native to existing Android apps without a full rewrite. This brownfield approach lets teams ship cross-platform features while keeping their native codebase intact.

Slack Sep 1, 2019

A Day in the Life of a Mobile Product Engineer at Slack

Kevin, a Staff Engineer at Slack, shares how a distributed mobile team ships features across Vancouver and San Francisco without stepping on each other's toes. His secret? Strategic work separation and dogfoodi...

SoundCloud Aug 30, 2019

Gradle Remote Build Cache Optimization

Nelson Osacky from SoundCloud reveals how simply turning on Gradle's remote build cache got them almost zero cache hits. The real work was hunting down why.

Connected2.me Aug 26, 2019

Running Android Instrumentation Tests on Circle CI Without a Third Party Service

Doğu Deniz Uğur challenges CircleCI's own documentation. While the official docs say Android emulator tests aren't supported on their Linux VMs, he found a workaround that eliminates the need for Firebase Test ...

Dropbox Aug 14, 2019

The Not-So-Hidden Cost of Sharing Code Between iOS and Android

Eyal Guthmann from Dropbox shares a hard truth: writing code once in C++ cost them more than writing it twice in native languages. Here's why their cross-platform strategy backfired.

Thumbtack Aug 5, 2019

Transitioning to Android

Bianca Gandolfo spent 7 years mastering JavaScript—then faced an identity crisis when asked to switch to Android. Her internal debate reveals a tension every specialist faces: go deeper or go broader?

Pinterest Aug 5, 2019

Ad Metrics Quality And Testing On Mobile

Maya Reddy from Pinterest reveals how their team eliminated last-minute P1 bugs by automating ad metrics testing. The shift from bi-weekly manual QA to continuous integration transformed their release confidenc...

Uber Jul 25, 2019

Introducing Nanoscope: An Extremely Accurate Method Tracing Tool for Android Development

Uber's Android team hit a wall: their profiling tools were either too slow or too inaccurate to debug real performance issues.

Robinhood Jul 22, 2019

Android Inter-Module Navigation with Dagger

Robinhood's Android team cracked a tough modularization puzzle: how do you navigate between completely decoupled feature modules without creating dependencies?

React Native Blog Jul 17, 2019

Hermes JavaScript Engine for React Native

Facebook just open-sourced Hermes, a JavaScript engine built specifically for React Native on Android. This isn't just another optimization tweak. It's a ground-up rethink of how JS should run on mobile.

Grindr Jul 4, 2019

Handling WebP OutOfMemoryError in Android

Ansgar Lin from Grindr Engineering discovered their app was crashing with OutOfMemoryErrors, and the culprit wasn't bad code. It was a tiny WebP image causing massive runtime memory allocation.

React Native Blog Jul 3, 2019

React Native Version 0.60 Release

React Native 0.60 just dropped with changes so significant, they're calling it a migration milestone. If you're still manually linking native modules, this changes everything.

Cash App Jun 26, 2019

OkHttp 4 Goes Kotlin

Jesse Wilson from Square just rewrote 25,000 lines of Java code in Kotlin without changing a single feature or fixing a single bug. Here's why that matters for your Android app.

OLX Jun 24, 2019

Android Jetpack Benchmark: JSON Parser Performance

Mootaz Ltaief from OLX Engineering put four popular Android JSON parsers head-to-head using Jetpack Benchmark. The results reveal a brutal tradeoff: the fastest parser costs you 1.1 MB of app size.

Rakuten Viki May 28, 2019

Best Practices for Video Playback in Android

Saurabh Arora from Viki reveals the video playback mistakes that shock users and kill engagement. Most Android apps get at least 3 of these wrong.

Shopify May 17, 2019

Mobile Release Engineering at Scale: ShipIt Mobile

Alejandro Rodriguez Salamanca from Shopify reveals how manual mobile releases were killing their velocity. The solution? A platform that cut release cycles from 3 weeks to 1 week.

Uber May 14, 2019

Employing QUIC Protocol to Optimize Uber’s App Performance

Uber operates across 600+ cities on 4,500+ mobile carriers. Their HTTP/2 stack was failing users in lossy wireless networks.

Blibli.com May 12, 2019

Blibli x Android Room

Andrew Winata from Blibli shows how ditching raw SQLite queries for Room cut boilerplate code and made database operations type-safe at compile time. The migration took just a few strategic refactoring steps.

Gojek Apr 25, 2019

The Story of Our Big Android App Rewrite

Gojek's driver app serves 2 million+ partners who depend on it for their daily income. When the app goes down for even an hour, drivers lose significant earnings—so a rewrite was high stakes.

Google Apr 11, 2019

Optimizing App Subscriptions with New Tools

Daniel Schramm from Google Play just dropped new analytics tools that could transform how you think about subscription revenue. If you're leaving money on the table with failed payments, this matters.

SoundCloud Apr 3, 2019

Quality Assurance and Testing for Mobile Applications

Julio Zynger from SoundCloud reveals how they ship mobile releases every two weeks without breaking things. Their secret? A release train model that turns chaos into predictability.

Walmart Apr 2, 2019

Implementing Infinite Scrolling Efficiently

Phong Lam from Walmart Global Tech tackles a problem every mobile dev faces: infinite scroll that doesn't tank performance. His solution? Stop rendering everything and start being strategic.

Uber Apr 2, 2019

Measuring Kotlin Build Performance

Uber ran 129 experiments across 354 projects to answer one question: What's the real cost of adopting Kotlin at scale?

Robinhood Mar 29, 2019

Breaking up the App Module Monolith: The Story of Robinhood's Android App

Robinhood's Android app hit a wall: 100k+ dex count, skyrocketing build times, and features breaking each other. Sound familiar?

AWS Mar 14, 2019

Amplify Framework adds authentication features and enhancements for iOS and Android Mobile SDKs

AWS Amplify just made mobile authentication dramatically simpler. Device tracking, OAuth 2.0, and SAML federation now work out of the box for iOS and Android developers.

React Native Blog Mar 12, 2019

React Native 0.59 Release

React Native 0.59 just dropped with the biggest Android performance upgrade in years. If your app still feels sluggish compared to iOS, this changes everything.

Carousell Mar 4, 2019

Building a Dynamic UI System at Carousell (Part 1)

Siaw Young from Carousell reveals how they built a system that lets them update thousands of product categories without pushing app updates. The secret? A cross-platform markup language that operates at a highe...

Carousell Feb 26, 2019

Building a Dynamic UI System at Carousell (Part 2)

Siaw Young from Carousell reveals how they built a server-driven UI system that lets them ship features without app releases. Think HTML for mobile apps—but way more powerful.

Thumbtack Feb 21, 2019

Android Development with GraphQL

Efe Karasabun from Thumbtack reveals how GraphQL solved their biggest mobile API headaches. No more over-fetching data or coordinating breaking changes across teams.

Cash App Feb 5, 2019

OkHttp 3.13 Requires Android 5+

Jesse Wilson explains why Square is cutting off 11% of Android devices with OkHttp 3.13. Spoiler: your web servers might break too.

LINE Jan 29, 2019

AIR GO and APK Signing

Seunghoon Kim from LINE's AIR GO team breaks down Android's APK signing evolution. If you're still using v1 signing, you're leaving security holes wide open.

Pinterest Jan 25, 2019

Introducing Inclusive Beauty Searches for Mobile

Pinterest just shipped a feature that 60% of their top beauty searches were literally asking for. Yanis Markin walks through how they combined ML with inclusive design to solve it.

Uber Jan 1, 2019

Engineering Uber Lite

Uber's main app hit 60MB and struggled on older Android devices in emerging markets. So they built something radically different.

Coupang Dec 30, 2018

Coupang Android Architecture Part 3

Seongchul Park from Coupang reveals how their Android team escaped the 'big ball of mud' by rethinking how they organize code. Spoiler: it wasn't just about modules.

Groupon Dec 19, 2018

How To Maximize Android's UI Reusability: 5 Common Mistakes

Carlos Palacin Rubio from Groupon's Android team reveals why your "optimized" UI code is actually killing reusability. Spoiler: that single ConstraintLayout you're so proud of? It's a maintenance nightmare.

N26 Dec 17, 2018

Mastering Kotlin Conventions: Get, Set, and Range Operations

Gopinath Langote from N26 shows how Kotlin's operator overloading can transform verbose getter/setter code into elegant, readable syntax. Instead of date.getMonth() or date.setMonth(6), what if you could just w...

Netflix Dec 13, 2018

Performance comparison of video coding standards: an adaptive streaming perspective

Joel Sole and the Netflix encoding team reveal why codec comparison studies often contradict each other—and how they're fixing the problem. Their findings challenge conventional wisdom about H.264, H.265, and V...

N26 Dec 5, 2018

Mastering Kotlin Conventions: Operators and Arithmetic Operations

Gopinath Langote from N26 shows how Kotlin's operator overloading turns verbose code like Number(1).plus(Number(2)) into elegant Number(1) + Number(2). This isn't just syntactic sugar—it's a fundamental shift i...

Skyscanner Nov 20, 2018

Hate to Wait: How Skyscanner Used Module Caching to Cut App Build Speed in Half

Skyscanner's iOS developers were waiting hours for builds to complete. Their CI/CD team cut that time in half with a clever caching strategy.

Netflix Nov 13, 2018

Consistent Caching Mechanism in Titus Gateway

Netflix's Titus container platform hit a wall: their singleton leader couldn't handle the API query load. Here's how they scaled horizontally without breaking consistency guarantees.

Coupang Oct 30, 2018

Coupang Android Architecture Part 2

Seongchul Park from Coupang reveals how they tackled a monolithic Android codebase with hundreds of thousands of lines of code. The solution? Strategic modularization that transformed both build times and code ...

N26 Oct 25, 2018

What We've Learned at KotlinConf 2018

Rares Musina from N26 shares how their mobile bank went all-in on Kotlin—and what they learned at KotlinConf 2018. Spoiler: coroutines, DSLs, and faster backends are changing everything.

Meta Oct 19, 2018

MobileLab: Prevent Mobile Performance Regressions

Facebook ships thousands of commits daily to their mobile apps. How do you catch a 1% performance regression before millions of users feel it?

Instacart Oct 16, 2018

Using Kotlin extensions to make the Android SDK friendlier

The Android SDK's rough edges force developers into verbose workarounds. Kotlin extensions offer a cleaner path forward.

Badoo Oct 10, 2018

Building Reactive Component Systems with Kotlin

Zsolt Kocsi from Bumble reveals how his team tamed the chaos of reactive Android components. The secret? Two minimal interfaces and a powerful abstraction that makes subscription management disappear.

Uber Oct 1, 2018

Why We Decided to Rewrite Uber's Driver App

Uber rewrote their entire driver app with hundreds of engineers over 18 months. Joel Spolsky once called rewrites 'the single worst strategic mistake' a software company can make.

Blibli.com Sep 28, 2018

Blibli.com Android Evolution

Cesario Putera from Blibli.com shares a brutally honest story: their Android app went through 4 complete rewrites, each time drowning in technical debt. The fourth attempt? They couldn't afford to stop and rebu...

Shopify Sep 11, 2018

Mobile Tophatting at Shopify

Pedro Piñera from Shopify reveals how they turned a 15-minute context switch into a single command. No QA team? No problem when developers can test each other's work this fast.

Discord Sep 10, 2018

How Discord Handles Two and Half Million Concurrent Voice Users Using WebRTC

Discord handles 2.6 million concurrent voice users with just 850 servers across 13 regions. Here's how they built a custom WebRTC architecture that scales.

Badoo Aug 23, 2018

Universal Links for Android and iOS

Konstantin Yakushev from Bumble Tech reveals the brutal truth about universal links: Apple and Google's 'simple' solution is riddled with undocumented bugs that break user experience in shocking ways.

Bumble Aug 23, 2018

Universal Links for Android and iOS

Konstantin Yakushev from Bumble reveals the brutal truth about universal links: Apple and Google's 'simple' solution is riddled with undocumented bugs that break user experience. Here's how Badoo's team catalog...

Bumble Aug 15, 2018

Guide to Mobile App Autotesting Tools

Arseny Batyrov from Badoo's QA team built the mobile testing guide he couldn't find anywhere else. After combing the internet for tool comparisons and finding nothing comprehensive, he created this definitive b...

Badoo Aug 15, 2018

Guide to Mobile App Autotesting Tools

Arseny Batyrov from Badoo's QA team built the mobile testing guide he couldn't find anywhere else. His comprehensive breakdown of autotesting tools reveals which ones actually matter in 2018.

Badoo Aug 8, 2018

MVI Beyond State Reducers: A Modern Kotlin-Based MVI Architecture

Zsolt Kocsi from Bumble reveals how their chat module had bugs so elusive that QA could record them happening but developers could never reproduce them. The culprit? Uncontrolled state management in a massively...

Badoo Aug 8, 2018

A Modern Kotlin-Based MVI Architecture

Zsolt Kocsi from Badoo reveals how their chat module kept losing first messages despite a full Clean Architecture rewrite. The culprit? Uncontrolled state mutations in a massively asynchronous app.

Slack Jul 31, 2018

Unified Cross-Platform Performance Metrics

Slack's engineering team faced a classic scale problem: three platforms, three definitions of 'app launch,' and zero ability to compare performance meaningfully.

Blibli.com Jul 29, 2018

Android Face Detection Using ML Kit

Cesario Putera from Blibli.com shows how Google's ML Kit brings powerful face detection to Android apps with surprisingly little code. No PhD required.

Google Jul 9, 2018

Android Emulator AMD Processor Hyper-V Support

Jamal Eason from Google just opened up hardware-accelerated Android emulation to thousands of developers who were stuck with slow software emulation. If you've been running AMD processors or Hyper-V, this chang...

Freeletics Jul 4, 2018

Android App Bundle: Distribution and Size Optimization

Dmytro Khmelenko breaks down how Android App Bundle reduced their app size by 20% without changing a single line of code. Here's how Google's 2018 feature actually works under the hood.

Traveloka Jun 28, 2018

3 Years of Android Development at Traveloka

Ahmad Fadli Basyari from Traveloka watched build times balloon from 3 minutes to 10 minutes as the app grew from 3 products to 20+. His team's solution? Rewrite the entire app twice in three years.

Google Play Jun 17, 2018

A New Era of Launching Mobile Games

Emily Putze from Google Play reveals why your mobile game launch strategy is probably outdated. The old playbook that worked in 2014's gold rush era is now a recipe for expensive failure.

Zalando Jun 11, 2018

Loading Time Matters

Zalando proved that every 100ms of loading time equals real money: a 0.7% revenue lift per session. When 75% of your traffic is mobile, milliseconds become millions.

Freeletics May 22, 2018

Reducing APK Size: A Journey to Smaller Android Apps

Dmytro Khmelenko shares how a job candidate's pointed question about their 63 MB APK sparked a complete optimization overhaul. The results? A 62% size reduction that every Android team should study.

Coupang May 21, 2018

Coupang Android Architecture Part 1

Joris Abale from Coupang reveals how they rescued a massive Android app drowning in God Activities and Fragment chaos. Their journey from architectural debt to 80% test coverage is a masterclass in pragmatic re...

Yelp May 17, 2018

Android Search Performance Improvements (Part 2)

Yelp's Android team cut search render time nearly in half while slashing dropped frames by 48%. Here's how they did it.

Teamweek May 15, 2018

Improved Mobile Performance

Teamweek just made a bold move: they killed their native mobile apps. Instead of maintaining separate iOS and Android codebases, they bet everything on a mobile-optimized web experience.

N26 May 3, 2018

5 Reasons Why N26 Is Moving to Kotlin

Pat Kua from N26 shares how the fintech company moved from Java to Kotlin for backend services. Their pragmatic, incremental approach turned a language migration into a productivity win.

Yelp May 2, 2018

Android Search Performance Improvements (Part 1)

Yelp users were literally grunting while waiting for search results to load. That's when the Android team knew they had a performance problem.

Strava Apr 30, 2018

Android Guild Week at Strava

Todd Santaniello from Strava reveals what happened when their entire Android team stopped shipping features for a week. The goal? Break apart a 6.5-year-old monolithic codebase that was crushing build times and...

LinkedIn Apr 20, 2018

The Mobile Crash Reporting Pipeline at LinkedIn

LinkedIn processes massive volumes of mobile crash data to keep their app stable for millions of users. Here's how they built the pipeline.

Square Apr 12, 2018

A Massively Multi-User Datastore Synced with Mobile Clients

Tad Book from Square reveals how they built a datastore that handles massive merchant catalogs while keeping mobile devices in sync, even when offline for days. The secret? An append-only architecture that make...

BlaBlaCar Mar 28, 2018

Android O Migration: Lessons Learned

Alizée Camarasa from BlaBlaCar shares hard-won lessons from migrating to Android O. Spoiler: their first solution caused app-wide deadlocks.

Instacart Mar 13, 2018

Smarter ToDos With Kotlin

Kotlin's built-in TODO() is great, except it crashes your app in production. Kaushik Gopal built something smarter.

Meta Mar 13, 2018

Profilo: Understanding App Performance in the Wild

Meta's engineers were spending days or months debugging performance issues they couldn't reproduce in their device labs. Sound familiar?

LINE Mar 13, 2018

Using Docker to build a testing infrastructure for web UI and mobile

LINE Engineering ditched expensive cloud testing services and built their own Docker-based infrastructure. The result? Flexible, cost-effective testing for both web and mobile.

Flipkart Feb 21, 2018

Optimising Flipkart Android App size to sub 10 MB

Flipkart slashed their Android app size by 40% in 21 months. The result? A 34% drop in uninstall rates and massive gains in emerging markets.

Badoo Feb 13, 2018

Enhancing Appium Android Tests with Advanced Techniques

Raj Varma from Bumble's engineering team reveals how to give your Appium tests superpowers. His solution lets test code directly call methods inside your Android app—solving problems that seemed impossible.

Freeletics Feb 5, 2018

Automating Mobile App Localization

Dmytro Khmelenko reveals how Freeletics turned localization from a bottleneck into a fully automated pipeline. The results? Measurable revenue spikes in newly localized markets and zero manual translation work.

Atlassian Jan 30, 2018

Kotlin at Trello: Mobile Development Best Practices

Vishnu Rajeevan from Trello shares how his team went from 0% to 30.8% Kotlin in just over a year. Their strategy? Start with tests, then make every new feature Kotlin-only.

Groupon Jan 30, 2018

Developing Android Studio Plugins With Gradle

Mihaly Nagy from Groupon reveals you don't need IntelliJ IDEA to build Android Studio plugins—just Gradle and a text editor. If you've automated tasks 3 times, it's time to build a custom IDE tool.

React Native Blog Jan 18, 2018

Implementing Twitter's App Loading Animation In React Native

Ever wonder how Twitter's delightful logo-to-app loading animation actually works? Eli White reverse-engineered it and the solution is counterintuitive.

Rakuten Viki Jan 13, 2018

Optimise Because Performance Matters

Saurabh Arora from Viki cut their Android app's memory footprint by 27% while preparing for the Next Billion Users. His team's optimization work landed them as an Android GO launch partner.

Google Play Nov 20, 2017

Shrinking APKs, Growing Installs

Sam Tolomei from Google Play reveals a brutal truth: every 6MB you add to your Android app kills 1% of potential installs. And in emerging markets, the impact is even worse.

Google Play Nov 2, 2017

Why the First Ten Minutes Are Crucial for Mobile Game Retention

Adam Carpenter from Google reveals that most mobile games lose over half their new players in the first 10 minutes. The data shows exactly where retention breaks down and how top performers avoid it.

Instagram Nov 2, 2017

Improving Performance with Background Data Prefetching

Instagram serves 800 million monthly users, 80% outside the US. How do you make the app feel instant for everyone, regardless of network quality?

TripAdvisor Oct 30, 2017

High-Performance App Development: Common Bottlenecks and How TripAdvisor Measured Its Way to a Faster App

TripAdvisor ships a 100MB app every two weeks to millions of users. One regression could tank performance for their entire user base.

Meta Oct 30, 2017

Battery Instrumentation at Facebook

Facebook was flying blind on battery drain across a billion devices. User-facing battery percentage? Too noisy, too coarse, and deliberately inaccurate by design.

Google Oct 18, 2017

The future of multi-modal interfaces

Meta has been quietly building the foundation for interfaces that understand speech, vision, touch, and text simultaneously. The future of mobile isn't single-mode anymore.

Meta Oct 18, 2017

Multi-threaded rendering on Android (with Litho & Infer)

Facebook's mobile team tackled one of Android's toughest performance challenges: keeping UI rendering smooth without blocking the main thread.

Meta Oct 18, 2017

Efficient and healthy background data prefetching at Instagram

Instagram's background prefetching could easily drain batteries and waste data. Here's how they built a system that's both fast and responsible.

Meta Sep 26, 2017

Multithreaded Rendering on Android with Litho and Infer

Meta's News Feed team solved what many thought impossible: smooth multithreaded rendering on Android at massive scale.

BBC Sep 11, 2017

Kotlin: An Exploration of Sealed Classes

James Shephard from BBC explores how Kotlin's sealed classes can fundamentally reshape your Android architecture. What if callbacks aren't the answer to async operations?

BBC Sep 8, 2017

Mobile Apps: iPlayer Tech On The Move

Ross Harper from BBC's iPlayer team reveals how they ship to 45+ million downloads across thousands of device variants. Their secret? A shared codebase that builds two distinct products.

N26 Sep 5, 2017

Reactive Clean Architecture with Android Architecture Components

Lucia Payo from N26 reveals how combining RxJava, Clean Architecture, and Android Architecture Components created a system where code writes itself faster over time. The secret? Infinite data streams that never...

Callstack Aug 21, 2017

Color Your Apps in React Native Using Material Palette

Want your React Native app to automatically match its UI colors to any image? There's now a library that taps into Android's Material Design color extraction magic.

React Native Blog Aug 7, 2017

React Native Performance In Marketplace

Facebook cut React Native Time to Interaction in half on low-end Android devices. The secret? They stopped trusting their testing tools and went straight to production data.

Badoo Aug 7, 2017

Map Performance Comparison and Judy Data Structure Alternatives

Marko Kevac from Bumble's Platform team benchmarked 6 associative array implementations to replace their aging Judy data structure. The winner? Not what you'd expect when memory matters.

Badoo Aug 1, 2017

Mind Maps for Fast and Effective Testing

Kateryna Sprynsian from Bumble's iOS team ditched traditional test cases for something faster. With weekly releases shipping multiple features, her team needed a testing approach that could actually keep up.

Thumbtack Jul 25, 2017

Android Instant Apps at Thumbtack

Francis Kam from Thumbtack reveals how they partnered with Google pre-launch to build one of the first Android Instant Apps. The results? Instant app messages now equal their full installed app.

Strava Jul 11, 2017

Strava Mobile App Versions

Jeff Remer from Strava explains why their mobile app jumped from version 5.14 to 14.0 in just four months. Spoiler: it wasn't feature bloat.

Badoo Jul 4, 2017

Integrating React Native in an Existing Application

Guillermo Orellana from Bumble's tech team walks through the real-world pain of integrating React Native into an existing Android app. Spoiler: the official docs won't save you.

Freeletics Jul 4, 2017

Android Tech Stack Overview

Wahib-Ul-Haq from Freeletics opens the vault on the complete Android tech stack powering four production fitness apps. This is the kind of transparency engineering teams rarely share publicly.

Instacart Jun 21, 2017

RxJava 1 -> RxJava 2 (Understanding the Changes)

RxJava 2 was a complete rewrite with breaking APIs. If you're still on version 1, here's what changed and why it matters.

Instacart Jun 21, 2017

RxJava 1 -> RxJava 2 (Disposing Subscriptions)

Migrating from RxJava 1 to RxJava 2? The biggest gotcha isn't what you think—it's how you dispose of subscriptions.

Badoo Jun 8, 2017

Reactive Camera Implementation with Camera2 API on Android - Part 1

Arkady Gamza from Bumble Tech tackles Android's notoriously complex Camera2 API by wrapping it in RxJava2 observables. The result? A reactive camera implementation that turns callback hell into elegant, readabl...

Vinted May 29, 2017

Kotlin for Mobile Development

Martynas Jurkus from Vinted reveals how his team bet on Kotlin two years before Google officially backed it. The result? A complete transformation of their Android development workflow.

Zalando May 10, 2017

Detecting List Items Observed by User

Zalando's engineering team faced a tricky challenge: how do you know if a user actually *saw* an item in a scrolling list, not just flew past it?

LinkedIn May 4, 2017

Mobile Crash Reporting at LinkedIn

LinkedIn built their own crash reporting system instead of using third-party tools. Here's why that decision paid off.

Airbnb May 1, 2017

Messaging Sync: Scaling Mobile Messaging at Airbnb

Zhiyao Wang and the Airbnb team tackled a massive problem: their mobile inbox was loading like a 2001 webmail client. With 100k+ messages per hour, every tap meant a network request, killing UX on slow connecti...

Badoo Apr 24, 2017

Writing a Custom Android Component for React Native

Guillermo Orellana from Bumble's tech team tackles React Native's biggest question: Can you actually integrate complex native Android components without losing your mind?

Shopify Apr 13, 2017

Building a Dynamic Mobile CI System

Shopify slashed their mobile CI deploy times from 2.5 hours to 15 minutes. Here's how they built a system that scales horizontally without breaking a sweat.

Bumble Apr 5, 2017

Breaking the Limitations of Calabash Android

Rajdeep Varma from Badoo cracked a problem that's plagued Android test automation for years. His solution lets Calabash test anything on the device, not just your app's UI.

Badoo Apr 5, 2017

Breaking the Limitations of Calabash Android

Rajdeep Varma from Badoo cracked a problem that's plagued mobile test automation for years: Calabash could only test what's inside your app, while Appium couldn't use backdoor methods. His solution? Merge the b...

Callstack Mar 24, 2017

Implementing Android Navigation Drawer and Status Bar in React Native

Callstack tackles one of React Native's most frustrating Android UX challenges: making the navigation drawer and status bar play nicely together. Spoiler: the default behavior is broken.

React Native Blog Mar 13, 2017

Better List Views

React Native just killed ListView. The new list components solve memory leaks, stale rows, and ignored bugs that plagued mobile developers for years.

Badoo Feb 28, 2017

Android Handler Memory Leaks

Dima Voronkevych from Bumble's Android team reveals how a simple Handler.postDelayed() call created 7 Activity instances in memory when only 1 should exist. The garbage collector couldn't save them.

Bumble Feb 28, 2017

Android Handler Memory Leaks

Dima Voronkevych from Bumble's Android team reveals how a simple postDelayed() call can silently keep 7 Activity instances alive in memory. Even with garbage collection, your app might be one rotation away from...

React Native Blog Feb 14, 2017

Using Native Driver For Animated

Your React Native animations are probably running on the wrong thread. Here's how one config flag can eliminate frame drops when JavaScript gets blocked.

Badoo Feb 13, 2017

Mobile App Testing Tips and Tricks

Alexander Khozya from Bumble's mobile QA team shares battle-tested strategies that caught critical bugs before millions of users did. His team's approach to testing saved them from costly re-submissions and use...

Badoo Feb 9, 2017

Dockerizing Calabash Android Testing on macOS

Rajdeep Varma from Badoo (now Bumble) tackled a problem that sounds impossible: running Android device tests inside Docker on macOS when Docker can't even see USB devices. The workaround? Brilliantly hacky.

Freeletics Feb 7, 2017

Motion Recognition for Fitness on Android Wear

Edward Dale from Freeletics shows how a simple peak detection algorithm can count pushup reps on Android Wear with surprising accuracy. The secret? Freeletics-style pushups include a hand lift that creates a pe...

Twitch Jan 12, 2017

A/B Testing using Google’s Staged Rollouts

Twitch discovered that Google Play's staged rollouts create biased user groups, breaking standard A/B testing assumptions. Here's how they adapted.

Klarna Jan 12, 2017

Four Load Testing Mistakes Developers Love to Make

Klarna Engineering found that developers' optimism about their own code creates predictable load testing blind spots. Here are the four mistakes that keep biting teams before Black Friday.

React Native Blog Dec 5, 2016

Easier Upgrades

React Native upgrades used to be a nightmare of merge conflicts and lost changes. The React Native team just changed that with a clever Git-based solution.

Adevinta Germany Dec 5, 2016

Checkstyle on Changed Files with Gradle

Marc Prengemann from mobile.de faced 30,000+ Checkstyle violations in their Android codebase. Instead of grinding to a halt, his team found a smarter way forward.

Airbnb Dec 1, 2016

Epoxy: Airbnb's View Architecture on Android

Eli Hart from Airbnb reveals how they eliminated RecyclerView boilerplate while building complex screens with 8+ view types. Their solution handles diffing, animations, and state management automatically.

Uber Dec 1, 2016

Engineering the Architecture Behind Uber’s New Rider App

Uber completely rewrote their rider app from scratch. Here's why they threw away years of code and started over.

Etsy Nov 4, 2016

Crashcan: Building a Better Mobile Crash Analytics Platform

Etsy built Crashcan, their own mobile crash analytics layer on top of a third-party provider. Why not just use the vendor's dashboard?

React Native Blog Oct 25, 2016

React Native 0.36: Headless JS, Keyboard API, and More

React Native 0.36 just dropped with game-changing background task support. If you've been waiting to run JavaScript while your app sleeps, this is your moment.

Instacart Sep 12, 2016

Offline First: Introducing TrueTime for Swift and Android

Instacart shoppers were losing minutes in grocery store dead zones. The culprit? You can't trust device clocks when every second counts.

Hootsuite Sep 6, 2016

Mobile Compose Refresh Architecture

Madeleine Chercover from Hootsuite tackled a 3,500-line Android activity that had become a maintenance nightmare. Her solution? A modular MVVM architecture that makes features easy to add and hard to break.

Atlassian Aug 16, 2016

Android Schemas for Mobile Development

Dan Lew from Atlassian reveals how Trello Android went from dropping the entire database on every schema change to implementing proper upgrades. The reason? They were secretly building offline mode.

Twitch Aug 8, 2016

Improving Chat Rendering Performance

Twitch was dropping frames like crazy. Chat messages were taking 200ms to render when they had just 16.667ms to work with for smooth 60fps video.

Zalando Jul 15, 2016

Dynamic App Content: An Introduction to Truly Native Apps

Zalando faced an impossible triangle: daily content updates, premium native UX, and distributed teams without native experience. Their solution? Server-driven UI before it was cool.

Meta Jul 13, 2016

The Mobile Device Lab at the Prineville Data Center

Facebook built a 2,000-device testing lab inside a data center. The journey from tangled cables to custom EMI racks is a masterclass in scaling mobile performance testing.

Slack Jul 5, 2016

Getting to Slack Faster with Incremental Boot

Slack was making 4.2 million users wait through loading screens every single day. Time to fix that.

Walmart Jun 30, 2016

Android Testing with Mocking

Abha Gupta from Walmart Global Tech tackles one of Android testing's toughest challenges: running mock servers inside your APK for reliable device farm testing. No external dependencies, no flaky tests.

Groupon Jun 2, 2016

Better Android Intents With Dart Henson

Daniel Molinero Reguera from Groupon reveals how traditional Android Intent creation is silently breaking apps at runtime. His team built a solution that catches errors at compile time instead.

Airbnb May 11, 2016

Android: An Exercise in "Ship It"

Airbnb rebuilt their entire Android app in weeks to meet a hard Google I/O deadline. The catch? They couldn't throw away the old codebase.

Meta Apr 13, 2016

React Native: A Year in Review

Martin Konicek reveals how a 2013 hackathon project became a framework that changed mobile development forever. One year after open-sourcing, React Native hit 30,000 GitHub stars and attracted 650+ contributors...

React Native Blog Apr 13, 2016

React Native: A Year in Review

One year after open sourcing React Native, Facebook dropped a bombshell at F8: Microsoft and Samsung are bringing the framework to Windows, Xbox, and SmartTVs. The mobile-first framework just became platform-ag...

Signal Mar 31, 2016

Reproducible Android Builds

Signal just made their Android builds reproducible, and they're practically begging you not to send them panicked encrypted emails about it. This is transparency done right.

React Native Blog Mar 28, 2016

Dive Into React Native Performance

The React Native team made their app startup twice as fast. Here's how they tackled one of mobile's most critical performance challenges.

React Native Blog Mar 24, 2016

Introducing Hot Reloading

React Native just solved one of mobile development's most frustrating problems: losing your app state every time you make a code change. Their new Hot Reloading feature keeps your app running while injecting up...

SoundCloud Mar 21, 2016

Open Sourcing LightCycle: Android Lifecycle Management

Guillaume Lung from SoundCloud just open-sourced LightCycle, a library that tackles one of Android's messiest problems: lifecycle management sprawl in Activities and Fragments.

Allegro Mar 2, 2016

Integrating Android Projects with Codecov for Coverage Tracking

Still manually checking code coverage on Android PRs? There's a better way that turns coverage tracking into an automated gatekeeper for your codebase.

LinkedIn Mar 2, 2016

The LinkedIn Android Data Pipeline

LinkedIn rebuilt their Android data pipeline from scratch for their flagship app. The result? A system that handles everything from feed updates to messaging while keeping data consistent across screens.

Skyscanner Feb 24, 2016

Failing Fast with Reliable and Actionable System-Level Tests

Skyscanner's test suite had a 99% pass rate. Sounds great, right? Wrong. Those false failures were costing hours of productivity and masking real production issues.

Skyscanner Feb 23, 2016

Solving the Problem of One Billion Computations

Skyscanner needed to store 1.6 billion weights to rank hotel prices. Their in-memory approach couldn't scale, so they turned to AWS.

LinkedIn Feb 3, 2016

3x3: Speeding Up Mobile Releases

LinkedIn went from monthly releases to shipping mobile code 3x per day. Here's how they automated their way out of a month-long release cycle.

Quora Feb 1, 2016

Mobile A/B Testing at Quora

Tommy MacWilliam from Quora reveals how they A/B test mobile UX without waiting weeks for App Store approval. The secret? A hybrid architecture that lets them iterate at web speed.

Groupon Dec 17, 2015

Android's Multidex Slows Down App Startup

Michael Ma from Groupon discovered that enabling multidex increased their Android app startup time by 15% on pre-Lollipop devices. Here's how his team clawed that performance back.

React Native Blog Nov 23, 2015

Making React Native Apps Accessible

Facebook's Ads Manager app demonstrates how React Native's Accessibility API makes mobile apps usable for everyone, including people with vision loss. Here's how they built it.

Squarespace Nov 1, 2015

Functional Reactive Programming On Mobile: A Rosetta Stone

Nick Tinsley from Squarespace shows how the same reactive programming patterns work across iOS, Android, and React Native. Think Excel formulas, but for your entire mobile app.

React Native Blog Sep 14, 2015

React Native for Android

Facebook just dropped React Native for Android, completing the cross-platform puzzle that started with iOS earlier in 2015. Their first test? Building a production app used by millions of advertisers.

Hootsuite Sep 3, 2015

Handling Orientation Changes on Android

Android orientation changes are one of the most frustrating challenges for mobile engineers. When users rotate their device, Android destroys and recreates your Activities and Fragments, wiping out all member v...

Kotlin Blog Aug 5, 2015

Gradle Daemon Support for Faster Build Compilation

Andrey Breslav from JetBrains tackles one of mobile development's biggest pain points: slow build times that kill developer productivity.

Pinterest Jul 10, 2015

Discover Pinterest Mobile Engineering and Design

Pinterest engineers rebuilt their mobile onboarding experience and saw engagement metrics jump across the board. With 80% of users on mobile, they had to get this right.

Meta Apr 10, 2015

Mobile Performance: Tooling Infrastructure at Facebook

Facebook processes thousands of mobile code changes weekly. How do they catch performance regressions before users feel the pain?

React Native Blog Mar 26, 2015

React Native: Bringing Modern Web Techniques to Mobile

Facebook reveals why React Native emerged from a simple realization: the principles that made React successful on web could transform mobile development. This 2015 post captures the pivotal moment when declarat...

AWS Mar 24, 2015

Crittercism: Solving Mobile Performance Issues for One Billion Users | AWS Startups Blog

Crittercism handles more traffic than Google Search (50K vs 40K requests/second) with just 3 DevOps engineers. How do they pull this off?

Zillow Feb 9, 2015

High Performance WebViews

John Bito from Zillow reveals how they cut home listing load times in half while making it easier to ship features across iOS, Android, and web. The secret? Rethinking how WebViews work in native apps.

Allegro Nov 19, 2014

Preserving User Context During Android App Installation

Ever lose a user the moment they install your app? That frustrating context loss between web and app has a surprisingly simple fix.

Dropbox Oct 27, 2014

Building Carousel Part III: Drawing Images on Screen

Tina Wen from Dropbox tackles a deceptively hard problem: how do you render tens of thousands of photos at 60fps without turning your app into a slideshow of gray squares?

Dropbox Aug 20, 2014

The Tech Behind Dropbox's New User Experience on Mobile - Part 2

Viraj Mody from Dropbox reveals how they built a mobile-to-desktop onboarding flow so seamless that users in testing didn't even notice the magic happening. Zero password typing required.

Dropbox Aug 12, 2014

Building Dropbox's New User Experience for Mobile Part 1

Kat from Dropbox discovered that slowing down their signup flow actually increased conversions. Counter-intuitive? Here's why it worked.

Dropbox Aug 6, 2014

Building Carousel Part II: Speeding Up the Data Model

Dropbox engineers faced a brutal reality: reading 5,000 photos from SQLite took a full second on a Nexus 5. For users with 100,000+ photos, the standard approach would be unusable.

Google Jul 2, 2014

Google Play Services 5 Release

Google just dropped Play Services 5.0 with a game-changing lineup. From wearable APIs to dynamic security patches, this release touches nearly every part of the Android ecosystem.

Google Jun 26, 2014

Android L Developer Preview Release

Google just dropped the Android L Developer Preview months before launch, giving developers unprecedented early access to test the next major Android release. This is a game-changer for app readiness.

Google Jun 25, 2014

Building Successful Global Apps

Purnima Kochikar from Google Play reveals how Android developers earned over $5 billion in payouts. With 1 billion active Android users, the platform just rolled out a suite of tools to help developers scale gl...

Google Jun 25, 2014

Developer Preview and Play Services 5

Jamal Eason just announced something unprecedented: Android's first-ever public developer preview before launch. Google is opening up the L release early, fundamentally changing how developers prepare for major...

Google Jun 18, 2014

Cloud Integration and Android Studio Development

The article content failed to load due to a blocked page error. Without access to the actual article text about Cloud Integration and Android Studio Development, I cannot provide an accurate summary.

Google Jun 17, 2014

FlatBuffers: Memory-Efficient Serialization

Wouter van Oortmerssen from Google's Fun Propulsion Labs just open-sourced FlatBuffers, a serialization library that reads data without unpacking or allocating extra memory. Game developers struggling with perf...

Google Jun 3, 2014

Android Wear Design Story

Roman Nurik and Timothy Jordan from Google's Android team designed their first Android Wear app and discovered something surprising: adapting square UIs to round screens took under an hour.

Google May 23, 2014

Notification Implementation Best Practices

Wayne Piekarski shows how Android Wear notification pages require just ONE extra line of code. Seriously, that's it.

Google May 16, 2014

Stacking Notifications for Android Wear

Wayne Piekarski from Google shows how Android Wear notification stacking takes just a few lines of code. This 2014 developer preview tutorial remains a masterclass in API simplicity.

Google May 7, 2014

Google Play Services 4.4 Release

Google just rolled out Play Services 4.4 globally, and it's bringing Street View to Android apps for the first time. If you've been waiting to embed 360-degree panoramic imagery into your activities, this is yo...

Dropbox Apr 14, 2014

Building Carousel Part I: How We Made Our Networked Mobile App Feel Fast and Local

Dropbox's Carousel team faced a brutal truth: their photo app was slower than local galleries, and users noticed. No one wants to wait for network requests just to delete a photo.

LinkedIn Apr 8, 2014

Garbage Collection Optimization: High Throughput and Low Latency Java Applications

LinkedIn Engineering cut their tail latency by 75% through systematic garbage collection tuning. Here's their playbook for high-performance Java apps.

Google Mar 18, 2014

Android Wear Developer Preview

Austin Robison from the Android Wear team just opened the door to wrist-based computing. Google's betting that notifications on your wrist will change how users interact with their phones.

Google Mar 17, 2014

Google Play Services 4.3 Release

Google just rolled out Play Services 4.3 globally, and it's bringing some heavy hitters into the fold. Analytics and Tag Manager are now first-class citizens alongside game-changing updates to Drive and Games A...

Google Feb 13, 2014

New Client API Model in Google Play Services

Magnus Hyttsten from Google Developer Relations reveals a major shift in how Android developers connect to Google Play services. The old multi-client approach? Deprecated.

Google Feb 3, 2014

Google Play Services 4.2 Release

Google just unified its entire Android services SDK model. If you've been juggling multiple client classes across Maps, Drive, and Cast APIs, this changes everything.

Google Jan 31, 2014

Process Stats: Understanding How Your App Uses Memory

Dianne Hackborn from the Android framework team reveals a hidden tool that exposes exactly how your app behaves when users aren't looking. Most developers are flying blind on background memory usage.

LinkedIn Jan 27, 2014

Mobile A/B Testing at LinkedIn: How Members Shape Our Apps

LinkedIn ships a single mobile binary but runs dozens of A/B tests simultaneously. Here's how they pulled it off without constant app releases.

Etsy Jan 13, 2014

Android Staggered Grid Implementation

Deniz Veli from Etsy tackled a problem every Android dev knows: GridView and ListView just don't cut it for complex layouts. So they built their own.

Google Jan 9, 2014

Google Play Services 4.1 Release

Google just dropped a game-changing update to Play Services that fundamentally shifts how mobile games handle multiplayer and how apps integrate with Drive. This isn't just another SDK update.

Twitch Dec 13, 2013

Service Update Major Video System Update and Prague is Online

Twitch rebuilt their entire video infrastructure while serving millions of concurrent viewers. Here's how they pulled off a zero-downtime migration.

Google Dec 12, 2013

Changes to SecretKeyFactory API in Android

Trevor Johns from Android Developer Relations reveals a breaking change that could silently corrupt encrypted data for apps using Unicode passphrases. If your app uses PBKDF2 key derivation, this affects you.

Google Dec 11, 2013

New Tools for Game Development on Android

Google just open-sourced a physics engine with fluid simulation and made Unity integration dead simple. If you're building mobile games, December 2013 brought some serious firepower to your toolkit.

Google Oct 31, 2013

Android 4.4 KitKat and Updated Developer Tools

Dave Burke, Engineering Director for Android Platform, just dropped Android 4.4 KitKat with a game-changing focus: making flagship Android experiences run smoothly on entry-level hardware. Project Svelte proves...

Google Oct 31, 2013

Google Play Services 4.0 Release

Google just dropped Android 2.2 support to unlock more powerful APIs. Google Play Services 4.0 brings major changes that will affect how you monetize and track users.

Google Oct 14, 2013

Getting Your SMS Apps Ready for Android 4.4 KitKat

Scott Main and David Braun from Android just changed the rules for SMS apps. If you're using hidden APIs, your messaging app will silently fail on KitKat.

Google Oct 8, 2013

New Developer Features in Google Play Services

Greg Hartrell from Google's Play Games team just dropped three major updates that give game developers unprecedented visibility into player behavior and double their cloud storage capacity.

Kotlin Blog Oct 7, 2013

How To Configure Kotlin In Your Project

Natalia Ukhorskaya from JetBrains shows how Kotlin's seamless Java interop makes adoption frictionless. Just create a .kt file and let IntelliJ do the heavy lifting.

Kotlin Blog Aug 26, 2013

Working With Kotlin In Android Studio

JetBrains made history in 2013 by bringing Kotlin to Android Studio for the first time. This walkthrough from the early days shows just how far Android development has come.

Etsy Aug 9, 2013

Etsy's Device Lab

When mobile traffic jumped from 25% to 40% in six months, Etsy knew they had a problem. Their engineers were testing on personal iPhones while users browsed on dozens of different devices.

X (formerly Twitter) Aug 6, 2013

Login Verification On Twitter For iPhone And Android

Twitter built a 2FA system where your private keys never leave your phone and the server stores no persistent secrets. Here's the engineering behind it:

X (formerly Twitter) May 30, 2013

Mobile App Development: Catching Crashers

Twitter's iOS team shipped beta builds to employees and discovered crashes that would never show up in testing. The culprit? Jailbroken devices and unprefixed Objective-C categories.

Dropbox Feb 6, 2013

Introducing the Dropbox Sync API for Mobile Developers

Brian Smith from Dropbox introduced an API in 2013 that promised to make cloud sync feel like working with local files. Developers loved it, but there's a twist.

Signal Jan 31, 2013

Low Latency Switching in Signal

Signal's team discovered that building encrypted voice calls was easy. Building a VoIP system that actually worked well? That was the hard part.

X (formerly Twitter) Dec 21, 2012

Right To Left Support For Twitter Mobile

Christine Tieu from Twitter's Mobile Web Team reveals how they flipped their entire mobile UI for Arabic and Farsi without drowning in duplicate CSS rules.

Instagram Apr 10, 2012

Keeping Instagram Up with Over a Million New Users in Twelve Hours

Instagram's Android launch brought 1 million new users in 12 hours. Here's how their infrastructure team kept the lights on during hypergrowth.

LinkedIn Dec 1, 2011

Blazing Fast Node.js: 10 Performance Tips for LinkedIn Mobile

LinkedIn Engineering discovered that one synchronous file write operation tanked their Node.js throughput from thousands of requests per second to just dozens.

Shopify Oct 14, 2011

Most Memory Leaks Are Good

Shopify Engineering shares a war story: their app servers were hitting 16GB+ memory usage, crashing with ENOMEM errors, and requiring constant restarts. The culprit? Not where they expected.

SoundCloud Aug 22, 2011

Mobile Proxy Architecture at SoundCloud

SoundCloud's mobile team hit a wall: their API-first approach broke down when browsers couldn't handle CORS redirects properly. Their solution? A proxy architecture that evolved from nginx to Node.js.