Work / Personal Data / Quantified Self

24/7 background data capture on iOS

Platform
iOS
SwiftHealthKitCoreLocationAVFoundationSQLiteBGTaskScheduler

24/7 background data capture on iOS

Personal Data / Quantified Self

Industry: Personal Data / Quantified Self

Platform: iOS

Stack: Swift · HealthKit · CoreLocation · AVFoundation · SQLite · BGTaskScheduler

Description: Always-on iOS pipeline streaming three sensor streams to a user backend on a fixed power budget.


The engineering surface was iOS background-execution against an adversarial platform: three concurrent sensor streams, fixed-cadence uploads, and a strict battery ceiling. SQLite became the single source of truth — every sample writes to disk before any upload attempt. Multiple keep-alive vectors layered on top of one another (location background, audio session, background-processing tasks, a custom DispatchSourceTimer-based reliable timer). Audio interruptions wired into four distinct notification channels for sub-second recovery. Low-power mode required explicit detection and queue-flush coordination to avoid unbounded backlog.

We owned the refactor of the data pipeline, the protocol-based dependency injection layer, the upload coordinator, and the App Store-compliance hardening. The client owned the product concept and the user-controlled backend.

Engagement: ~3-month hardening engagement · single iOS specialist · 2025.

Engineering signal: upload reliability above 95%; daily battery drain inside a 15-25% ceiling; audio-interruption recovery under one second.

Talk to us

Working on something similar in personal data / quantified self?

Free first conversation. Written discovery report either way.