04 — Productivity · 2023
Spiro
Greenfield notes product—offline-friendly mobile client, sync API, and marketing site—from prototype to App Store and production API.
Role
Solo full-stack engineer
Timeline
8 weeks
Team
Founder + contract designer
Status
Shipped
Crash-free sessions
99.6%
Sync success rate
99.2%
Cold start (p95)
1.1s
Beta to paid conversion
12%
The problem
The team needed a differentiated MVP in a crowded notes market: fast capture, reliable sync, and zero data loss when connectivity dropped.
The solution
React Native client with local-first storage, conflict-aware sync, and a slim Node API. Web landing and waitlist integrated with the same auth layer.
What I owned
- Product architecture, mobile app, API, and infra
- Designed sync protocol and migration strategy
- Implemented paywall, analytics, and release pipelines
- Wrote privacy policy flows and account deletion paths
Stack
- React Native
- Expo
- TypeScript
- Node.js
- SQLite
- PostgreSQL
- Redis
- RevenueCat
Engineering highlights
- 01
Local-first notes
Edits persisted instantly offline; background sync merged changes with explicit conflict UI when needed.
- 02
Thin, testable API
Versioned REST with contract tests; mobile client generated types from OpenAPI.
- 03
Release discipline
EAS builds, staged rollouts, and feature flags for risky editor changes.
How we shipped it
- 01
Prototype
Validated capture flow and editor feel with a throwaway Expo build and five user tests.
- 02
Sync core
Locked storage format and sync semantics before polish—avoided rework later.
- 03
Beta
TestFlight cohort, crash reporting, and billing. Iterated on onboarding from funnel data.
- 04
Launch
App Store submission, marketing site, and post-launch monitoring playbook.