Thinking
I'm a Traditional PM Learning AI by Building an AI Product
Part 1 of building CoachOS: what I learned about scoping, grounding and trusting LLMs
I decided to stop learning AI from the sidelines
I've spent 14 years building products, but most of that experience predates the current wave of generative AI.
I could read about RAG, agents, evaluations and LLMs all day. But I had a nagging problem: I didn't have the experience of actually making product decisions around them.
So, I decided to build one product from scratch and use it as my AI PM learning laboratory.
Meet CoachOS
I'm training to become an ICF ACC coach myself. During my coaching training, I kept running into a number of operational problems:
- capturing and summarizing sessions
- preparing for back-to-back sessions
- tracking client commitments and progress
- managing the administrative work around coaching
So, I decided to build an app to solve for these problems. And thus, was born…CoachOS.
CoachOS — an AI-powered coaching copilot for professional/life/executive coaches. The product helps a human coach prepare for sessions, capture insights, maintain client context, generate follow-ups and use their own coaching methodology — while keeping the coach firmly in control. This will free up time from admin and transactional tasks so the coach can focus on their clients and do what they do best — Coach.
Initial MVP
There were plenty of things I could build. But for Week 1, I deliberately chose one.
One user problem. One AI capability. One vertical slice.
My goal wasn't to demonstrate everything an LLM could do. It was to understand one AI capability end-to-end.
User Problem (Product Discovery/Problem framing)
Coaches often need to review previous session notes before a coaching session. Important themes can be buried in unstructured notes, making it difficult to quickly understand what the client has been working on, recurring concerns, and important observations.
CoachOS aims to reduce the cognitive and administrative effort involved in reviewing session notes while keeping the coach in control of interpretation.
Task/Solution
We believe solo independent coaches spend unnecessary time reviewing and synthesizing previous session notes because important themes are difficult to identify consistently from unstructured notes.
If CoachOS provides AI-generated, evidence-grounded candidate themes from session notes, which the coach can review, edit, approve, or reject, coaches will be able to prepare for subsequent sessions more efficiently and with better continuity.
We will eventually evaluate this hypothesis through:
- coach-reported preparation time
- AI suggestion approval rate
- AI suggestion rejection rate
- amount of editing required
- groundedness of suggestions
- usefulness of suggestions for session preparation
One principle I learnt and used in week 1: Use probabilistic AI where interpretation is valuable, and deterministic application logic where correctness can be verified.
Not all problems need an LLM or an agent. The ability to recognize when to apply probabilistic vs deterministic layer is what separates a good PM from a great one.
The first thing I learned: prompting is product design
Before building, I tested the summary use case with a couple of LLMs. I noticed that the output varied across models and changed significantly depending on how I structured the prompt. If I wanted a consistent product experience, I couldn't treat the prompt as an afterthought. I realized the prompt was part of my product design.
- Context → What does CoachOS know?
- Task → What exactly should the model produce?
- Constraints → What must it not infer?
- Output structure → What fields should it return?
- Validation → How will we determine whether the output is acceptable?
A prompt isn't just an instruction to an LLM. It is part of the product contract.
The evidence that wasn't in plain sight
I initially thought: if the model identifies a theme, I'll simply ask it to provide evidence from the notes. Then I realized the flaw. The model is generating both the conclusion and the supporting evidence. That's not independent verification. The model is probabilistic. If I do not have a system to check for groundedness, I would be showing coaches summaries and themes that were never in the notes to start with. Hence the deterministic validation for the AI-generated content.
Human-in-the-loop as a product decision
Imagine the session notes say:
“I'm questioning whether I'm capable of leading this team.”
The model returns:
Theme: Leadership confidence
Evidence: “I'm questioning whether I'm capable of leading this team.”
Looks fine.
But what if the model had generated an evidence quote that sounded plausible but didn't actually exist in the notes?
The coach isn't there to compensate for a badly designed AI system. The human review exists because some decisions are inherently contextual and cannot be deterministically validated by the application.
AI → Find potentially useful information
System → Check what can be deterministically verified
Coach → Decide what becomes trusted client context
What Part 1 actually shipped
- Session note entry
- AI-generated summary
- AI-generated candidate themes
- Evidence attached to candidate themes
- Deterministic evidence validation
- Individual theme review
- Edit / approve / reject workflow
- Approved information persisted to the client record
What I deliberately didn't build
- Cross-session pattern detection
- Long-term memory
- RAG
- Agents
- Autonomous client-record updates
- Event-triggered workflows
These are all things I expect CoachOS to eventually explore. I deliberately left them out because I wanted to learn the fundamentals of one AI capability before adding complexity.
5 things I learned in my first week building AI
- Start with the user problem, not the AI capability.
- Not everything needs to be probabilistic.
- Define what the model is — and isn't — responsible for.
- A plausible LLM response isn't necessarily a grounded response.
- Human-in-the-loop is a product decision about accountability, not just a UX pattern.
What's Next?
This taught me how to build the first AI capability.
But building something that works isn't the same as building something that works well.
So, next comes:
- evaluating whether CoachOS's summaries are actually grounded
- testing whether the themes are useful to a coach in real preparation work
- comparing how often the coach approves, edits or rejects generated suggestions
- designing signals for quality beyond a plausible-sounding answer
How do I evaluate whether CoachOS's summaries and themes are actually good?