All work

Swipey

A consumer platform where people create AI characters, chat with them and browse a personalized feed of what others made.

Role
Full-stack engineer
Team
About 10 engineers
Years
2025 – now
Live
swipey.ai
Chat with the Memories panel

What I built

Content feed and ranking

Sole author. Replaced a per-request MongoDB aggregation that could not use an index with a scored Redis cache rebuilt on schedule. A request now reads a ranked slice and touches Mongo once, by id.

Pagination without duplicates

Rank-based cursors over the cache, per-user seen-sets and attribute filters on cached metadata. No offset scans, and no repeats when the cache rebuilds mid-scroll.

Chat Memories, end to end

Schema, API and UI in one slice. Partial unique indexes keep it correct under four concurrent workers instead of relying on application checks.

Creator leaderboard

Backend, web and admin: daily rollups, cursor-batched rank assignment and an index that keeps the largest collection off a full scan.

Web client

Quests, daily rewards and level-ups, the character-creation wizard and the chat UI. Part of the pass that cut chat-page LCP in half.

Stack

  • TypeScript
  • NestJS
  • MongoDB
  • Redis
  • BullMQ
  • Socket.IO
  • Next.js
  • React