← All work

04Productivity · 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

Smartphone and notebook on a leather desk surface

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

  1. 01

    Local-first notes

    Edits persisted instantly offline; background sync merged changes with explicit conflict UI when needed.

  2. 02

    Thin, testable API

    Versioned REST with contract tests; mobile client generated types from OpenAPI.

  3. 03

    Release discipline

    EAS builds, staged rollouts, and feature flags for risky editor changes.

How we shipped it

  1. 01

    Prototype

    Validated capture flow and editor feel with a throwaway Expo build and five user tests.

  2. 02

    Sync core

    Locked storage format and sync semantics before polish—avoided rework later.

  3. 03

    Beta

    TestFlight cohort, crash reporting, and billing. Iterated on onboarding from funnel data.

  4. 04

    Launch

    App Store submission, marketing site, and post-launch monitoring playbook.