Selected work

Product engineering projects with real constraints, clear outcomes, and production-minded trade-offs.

I work across web, mobile, browser extensions, APIs, and product architecture. These projects show how I think through user context, technical boundaries, performance, and shipping quality.

Pean project visual

Primary mobile product / Private maps

Pean

The main Pean app: a private map product for saving meaningful places, organizing personal discoveries, and sharing selected spots with people you trust.

Problem

Traditional map products are built around public places, search, and navigation. They are awkward for private spots that matter only to you.

Outcome

A product direction centered on one-tap saving, privacy by default, outdoor use cases, and low-friction capture from iPhone and Apple Watch.

  • Expo
  • React Native
  • Swift
  • Next.js
  • Product UX
Crowra project visual

Chrome extension / SEO tooling

Crowra

A focused Chrome side-panel inspector for reviewing SEO, technical health, schema, links, accessibility, and AI readiness without leaving the page.

Problem

SEO review workflows often force people into dashboards, extra tabs, and disconnected checklists right when they need a fast pre-launch pass.

Outcome

A local-first browser tool that keeps the audit beside the page, turns hidden technical checks into clear review sections, and supports faster launch decisions.

  • Chrome Extensions
  • React
  • TypeScript
  • SEO
  • Schema
Reliable mobile sync architecture project visual

Architecture / Offline-first systems

Reliable mobile sync architecture

A practical Expo, NestJS, and PostgreSQL architecture for capturing GPS places on mobile, handling unreliable networks, and rendering data later on the web.

Problem

Real mobile products face weak signal, duplicate writes, app interruptions, and delayed web visibility. Clean diagrams rarely survive those constraints.

Outcome

A resilient sync model with server-side validation, idempotent writes, backend ownership, and clearer boundaries between mobile capture and web rendering.

  • Expo
  • NestJS
  • PostgreSQL
  • Next.js
  • Sync Design
pean.dev project visual

Personal brand / Performance

pean.dev

A personal site and writing system built around fast pages, careful metadata, native CSS motion, and practical engineering articles.

Problem

A personal site should prove taste, performance discipline, and technical judgment instead of becoming a heavy animated portfolio shell.

Outcome

A lightweight Next.js surface with structured writing, dynamic metadata, open graph images, sitemap coverage, and CSS-first interaction polish.

  • Next.js
  • React
  • TypeScript
  • SEO
  • CSS Motion