Portfolio

ReCircle, a marketplace shipped in three sprints

For our CSUF senior project, five of us built a community marketplace for second-hand goods. I was the Scrum Master, and built the workflows behind the app.

Role
Scrum Master and workflow developer
When
Spring 2025 · ISDS 454 senior project
Team
Product Owner, Scrum Master, UI/UX developer, database developer, app tester
Built on
Bubble.io · Stripe · Trello
The ReCircle home page: Discover, Buy, and Sell, All in One Place, with buttons to check out listings or get started
A ReCircle listing for a window air conditioner with the seller's star rating and buttons to buy, add to a wishlist, or message the sellerAfter a purchase, a dialog asking the buyer to rate the transaction from one to five stars
The home page, a listing, and rating a purchase, at the end of Sprint 3.
  • 3 sprintseach ending in a working incrementfrom sign-up to a completed purchase
  • 100%of the sprint backlog deliveredon schedule, with nothing carried past Sprint 3

Three sprints, one product goal

The backlog was written as user stories: as a seller, I want to post and edit listings, so I can manage my items for sale. Each sprint took a focused slice of it.

  1. Sprint 1

    The foundation

    Accounts and login, listing creation, and search with filters. Real listings gave every later feature data to work with.

  2. Sprint 2

    Buying and talking

    Wishlists, Stripe payments, and messaging between buyers and sellers to coordinate a sale.

  3. Sprint 3

    Trust

    Seller ratings, editable listings, and a notification when an item sells so the seller can ship it.

Designed before it was built

The data flow diagram maps how search, login, payments, messages, and notifications move data between users, the system, and Stripe. The entity relationship diagram lays out the six tables behind it: users, products, payments, conversations, messages, and notifications.

ReCircle data flow diagram: the user sends search queries, credentials, payment details, and messages to the Search, Login, Payment, and Message processes, which read and write the Listings, User Data, Orders, and Messages stores; payments go through Stripe, and a Notifications process stores notifications and notifies the user. A seller manages their account and listings.ReCircle entity relationship diagram: a users table linked one-to-many to conversations, messages, notifications, payments, and products (through the shopping cart), with each table's fields and types.

Data flow diagram and entity relationship diagram. Open either full size.

The product

By Sprint 3, a buyer could go from sign-up to a completed purchase: browse, save to a wishlist, message the seller, pay with Stripe, and rate the transaction. Built on Bubble.io, using its AI tools to streamline the workflows behind ratings and notifications.

The messages tab: a buyer asking a seller whether a bookshelf is real wood and comes preassembled

How we ran it

Sprint planning, six daily scrums per sprint, a sprint review, and a retrospective, every sprint.

  • Everything visible

    Every artifact lived on a shared Trello board, and scheduling conflicts were raised the moment they came up.

  • A stricter Definition of Done

    Each sprint planning tightened what counted as done, so increments kept getting more reliable.

  • Scope held in check

    From Sprint 2, overlapping features were condensed into single user stories, and the plan was scaled down whenever scope crept.

  • The stakeholder in the loop

    Sprint reviews with our professor, the key stakeholder, fed changing requirements straight back into the backlog.

My role

  • Served as Scrum Master: led sprint planning, the daily scrums, sprint reviews, and retrospectives.
  • Built the app's workflows: API integrations and the create, read, update, and delete operations behind listings and accounts.
  • Pushed the team to use Bubble's AI tools, which shaped how ratings and notifications work.