Jeti
Location-based social platform. People see posts from 6–12 miles away, post anonymously, and follow city leaderboards on iOS and Android.
Visit live siteWhat it covers
Tech stack
The challenge
Social feeds felt global and impersonal, disconnected from the community a person actually lives in. The product needed a realtime, location-bounded feed on mobile, plus the admin, notifications, and jobs behind it, without the codebase splitting into one-off screens.
Collaboration
I was a full-stack engineer across the iOS and Android apps, the admin portal, and the backend at Jeti. I was promoted to mobile team lead for technical leadership and ownership of the app. The feed, the notification server, the job scheduler, and the component system were my delivery, with the team shipping on top of that system.
From discovery to production
- A location feed limited to posts from people 6–12 miles away
- Anonymous posting and city leaderboards on iOS and Android
- The admin portal, REST and GraphQL APIs, push-notification server, and job scheduler
- Realtime feed updates with Socket.io
- An Atomic Design component system and Redux state so the small mobile team could keep shipping
How it was solved
The mobile apps are React Native and Redux. Socket.io pushes feed changes instead of making the client poll. A notification server and a job scheduler sit beside the API. Docker on GCP is the production path. The UI is Atomic Design, so new feed and profile surfaces reuse the same parts instead of copying screens. PostgreSQL is the store.
Key technical decisions
- 01Atomic Design so a small mobile team could add surfaces without forking components.
- 02Socket.io for the live feed, so nearby posts arrive without a refresh.
- 03Docker on GCP so the API, notifications, and jobs shared one deployment path.
Screenshots

Impact
- The feed is local — 6 to 12 miles — instead of a global stream.
- iOS, Android, admin, notifications, and background jobs shipped as one platform.
- The shared component system is what let a small mobile team keep the pace. That work led to the mobile team lead role.
What I learned
A shared component system is what made high-velocity delivery possible on a small mobile team.