Pulling Scattered Feedback Into One Board Is Where Real Product Ops Began

Today's problem: feedback was leaking

Running PawRelay's private test, the first thing that broke wasn't code—it was operations. Tester opinions arrived scattered across DM, KakaoTalk, and Telegram. I'd hear the same friction in two places, and when I wanted to say "fixed that," I had to dig back through which conversation it came from.

The issue wasn't the volume of opinions but tracking them. Whether a complaint had come in twice, was already addressed, or pushed to a later version—managing all of that in my head meant things slipped through. After using AI to build the app's skeleton quickly, I felt that the next gate is not losing the signals coming from people.

The choice: organize by board, not channel

The decision was simple. Leave the incoming channels alone, but copy every opinion into one feedback board. I dropped the idea of forcing channels to converge. The moment you tell testers "only send it here," the opinions themselves dry up. Keep the intake open; unify only the place where things get organized.

The board doesn't just collect opinions. I also log what got fixed in which version. That's the core. When the same friction resurfaces, I instantly have grounds to judge whether it's "already handled in version X" or "not yet addressed." Ops records are review material for a future me.

What actually got reflected: all daily-life details

Looking at what passed through the board, it wasn't flashy features but the details that decide how the app feels.

  • See today's tasks via widget — without opening the app
  • Make the tutorial more visible — so first-time users don't get lost
  • Distinguish a shared pet from my own — no confusion about whose info it is when used with family
  • Guidance on family-sync timing — clarity on when shared changes appear

Family sync especially—one line of guidance shifted the feel a lot. Shared changes are checked automatically, and you can also refresh manually to pull them again. I deliberately avoided making it look like instant realtime sync. When behavior and guidance diverge, that becomes its own friction, so I held to writing it honestly: "checked automatically, manual refresh available."

What I deferred

I intentionally postponed channel-integration automation. I could build connectors that auto-scrape messages from each channel into the board, but at this stage copying by hand actually gave higher classification accuracy. The act of moving an opinion filtered duplicates and set priority. When tester scale outgrows manual handling, I'll revisit automation then.

Next checkpoints

  • When the same friction comes up twice, can I find its "reflected
    ot-yet/deferred" status on the board within 5 seconds?
  • Can the per-version change log alone let me explain to testers what changed this version?
  • After fixing daily-life details (widget, tutorial, distinction labels), does the same point reappear in later feedback?

Building an app and operating it use different muscles—I relearned that here. PawRelay is still in private testing, and the ops records I'm building now will be the strongest asset when it moves toward a public stage.


🐦 Faster updates on X: @baegseungh7061
📚 More in this series: Code Build
💌 Subscribe: Follow on X or grab the RSS

댓글