mobile-analytics-architect
Architect-level mobile analytics and experimentation — event taxonomy and naming, identity and session semantics, feature flags and remote config, experiment assignment and exposure logging, and the consent and retention rules that keep the data lawful. Use when product decisions depend on what users do in the app.
- License 许可
- MIT
- 最近更新
- 2026-11-13
- Stars
- ★ 0
- Forks
- 0
01 前言 Front Matter
- name
- mobile-analytics-architect
- license
- MIT
- metadata
- { "crusor-path": "mobile-architect/quality-architect/mobile-analytics-architect", "crusor-domain": "mobile-architect", "crusor-origin": "original", "crusor-sources": "segment.com/docs; launchdarkly.com/blog; amplitude.com/docs/data-taxonomy; firebase.google.com/docs/remote-config", "crusor-triggers": "mobile analytics, event tracking, feature flags, remote config, a/b test, experiment exposure, event taxonomy, session tracking", "crusor-verified-on": "2026-10-30" }
- description
- Architect-level mobile analytics and experimentation — event taxonomy and naming, identity and session semantics, feature flags and remote config, experiment assignment and exposure logging, and the consent and retention rules that keep the data lawful. Use when product decisions depend on what users do in the app.
- compatibility
- Amplitude, Mixpanel, Firebase, Segment, LaunchDarkly, Statsig
03 SKILL.md 正文
Mobile Analytics Architect
Analytics is a schema you ship. Bad event names are technical debt you cannot refactor — the history is already written.
When to use
- Product decisions rely on in-app behaviour.
- Feature flags or experiments run on device.
- Existing analytics has duplicate events and unanswerable questions.
When NOT to use
- A feature with no measurable decision attached.
- Pre-product-market-fit where the data set is too small to be useful.
Decision 1 — Taxonomy
Object Action → e.g. Checkout Completed, Video Played, Search Performed
properties → namespaced, typed, documented (plan, duration_ms, source)
- Past tense for things that happened; one event per user intent.
- No free-form strings; enums with a documented value list.
- Properties are typed and bounded: no raw search queries unless deliberately.
- A tracking plan in the repo, reviewed like an API contract.
Decision 2 — Identity
- Anonymous device id until login; then merge identities through the vendor's identify call.
- Define session semantics: platform timeout, background behaviour, and what counts as new.
- Account-level and device-level properties are different things; do not conflate.
- Logout must reset identity without losing pre-login events.
Decision 3 — Flags and config
- Flags for release control (kill switch) are separate from experiment flags.
- Remote config defaults ship in the binary; a config outage must not break the app.
- Flag evaluation cached; a failed fetch falls back, never blocks startup.
- Flag lifecycle: created → rolled out → archived. Stale flags accumulate and confuse.
Decision 4 — Experiments
- Assignment at a stable unit (device or account) via the flagging tool, not random in code.
- Log exposure when the user actually sees the variant — analysis on assignment alone is biased.
- One primary metric and guardrails, decided before launch.
- Sample size calculated in advance; peeking at results invalidates them.
Decision 5 — Privacy
- Consent before collection in regulated regions; analytics SDKs initialise after consent.
- No PII in event properties; hashed ids where correlation is needed.
- Retention per policy; cohort data ages out.
- Deletion requests must reach the analytics vendor, not just your backend.
Failure modes at scale
- Three spellings of the same event; the funnel is unbuildable.
- Experiment analysed on assignment, not exposure; result is wrong.
- Remote config fetched before first paint; cold start blocked by a network call.
- Flags never cleaned up; 90 flags, nobody knows what is live.
- Consent banner ignored by the analytics SDK initialised in
Application.onCreate.
Verification receipts
- Tracking plan with event names, properties, and owners.
- Identity merge test from anonymous to logged-in.
- Flag inventory with lifecycle state and owner.
- One experiment with exposure logging and a pre-registered metric.
- Consent flow verified: no events before opt-in.
04 同仓库更多 Skills
interaction-patterns-architect
Architect-level interaction design in code — choosing established patterns over invented ones, feedback and latency behaviour, destructive-action safeguards, navigation and overlay conventions, and the state model behind every interactive surface. Use when a screen has to behave, not just look.
design-system-ops-architect
Architect-level operation of a design system in code — token pipelines and versioning, component API and variant policy, the catalogue as the contract, adoption metrics, and the governance that stops a system from forking into three. Use when a component library must survive several teams.
design-handoff-architect
Architect-level design handoff — what must be specified before implementation starts, tokens over raw values, responsive and content-limit contracts, state matrices, and the review loop that catches drift between design and code. Use when a design is about to become code.
content-microcopy-architect
Architect-level UI content — where strings live, voice and terminology consistency, error and empty-state copy as part of the interface, translation-ready authoring, and the content model a product needs before it multiplies screens. Use when the words in the interface matter as much as the pixels.
ui-ux-implementation-architect
Architect-level direction for turning a design into working UI — the handoff contract, component ownership versus screen-level layout, interaction and state conventions, design QA gates, and the review habits that keep an implementation faithful without frozen pixels. Use before any specific UI implementation skill.
test-strategy-architect
Architect-level test strategy — allocating assertions across unit, integration, contract and end-to-end layers, designing for testability through dependency boundaries, fixture and data strategy, and the flake and coverage policies that keep a suite trustworthy. Use when defining how a codebase is tested.