# Swift IOS Performance Lead

> Principal iOS performance engineering for SwiftUI, HealthKit, websocket, and offline-first flows. Use when this capability is needed.

- Skill: `tomevault-io/swift-ios-performance-lead` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add tomevault-io/swift-ios-performance-lead`
- Raw SKILL.md: https://api.skillmd.com/api/skills/tomevault-io/swift-ios-performance-lead/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: tomevault-io (https://skillmd.com/u/tomevault-io)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/tomevault-io/swift-ios-performance-lead

---


# Principal Swift iOS Performance Engineering

Deliver resilient, low-latency iOS experiences under real network variability and high-frequency real-time updates.

## Decision Criteria

- Prefer architecture choices that preserve correctness under offline mode, delayed server updates, and websocket reconnects.
- Optimize for deterministic state transitions between API responses, local cache mutations, and live event updates.
- Any performance optimization must keep battery impact and memory growth within explicit limits.
- UI behavior must remain contract-consistent with backend score/rank semantics.

## Principal Practices

- Use structured state containers to avoid duplicate renders during rapid leaderboard updates.
- Implement adaptive update cadence for websocket-driven UI changes to prevent animation thrash.
- Keep SwiftData cache models schema-versioned with migration-safe defaults.
- Separate health data ingestion from score presentation to support anti-cheat and reconciliation updates.

## Failure Modes & Anti-Patterns

- UI depending on immediate server consistency for asynchronous workflows.
- Cache writes and websocket updates racing without conflict resolution policy.
- HealthKit queries triggered too frequently, causing battery drain and noisy data.
- Token refresh handling that fails silently and leaves stale authenticated state.

## Project-Specific Examples

- Leaderboard UI must gracefully handle rank updates arriving while offline-cached challenge data is displayed.
- Daily log submission UX should remain coherent when backend accepts log but scoring/notification arrives asynchronously.

## Related Skills

- `offline-sync-conflict-resolution-engineering`
- `real-time-client-experience-engineering`
- `mobile-security-privacy-engineering`

---
> Source: [HeadTDev/community-fitness-challenge](https://github.com/HeadTDev/community-fitness-challenge) — distributed by [TomeVault](https://tomevault.io).
<!-- tomevault:4.0:skill_md:2026-05-23 -->

