About
A PM who
builds it too.
Who I am
I'm Arian Askarizad, a product manager in Toronto and the founder of Dapperico, a digital product studio. I spent seven years as a product manager before that.
In April 2026 I stopped waiting for an engineering team. Since then I have taken four AI products from a problem statement to a live URL on my own: the discovery, the product requirements, the design, the code, the tests, the billing, and the outreach. The case studies on this site are the record.
How I work with Claude Code
Claude Code is the implementation partner on every product here. It is not a shortcut around product work; it is what makes it possible for one person to do the product work and also ship. The division of labour is consistent across all four codebases.
What I own. The problem and who has it. The product requirements document, written before the first commit and revised after review. The decisions in every case study: what the machine may never do, what gets a physical gate instead of a prompt, what ships with billing on and what waits. Every commit is reviewed and driven by a product decision I made, and every ticket is written in acceptance criteria I can check.
What the model generates. Implementation against those tickets. First drafts of prompts, tests, migrations and marketing copy, always into a draft or a branch, never straight to a customer. Prototypes: the BossPal dashboard was mocked as twenty screens in Claude Design from a brief that pinned the design tokens already in code, then handed back to Claude Code to implement.
What keeps it honest. Tests that encode shipped bugs and rules real customers stated on real calls. An LLM evaluation harness that runs golden and red-team conversations against the real pipeline and blocks merge below threshold. A CLAUDE.md in each repo written from incidents rather than wishes, including migration rules that came from taking production down. And a working convention in the code itself: every non-obvious choice carries its rationale and the dated failure that produced it, so the next session, human or model, reads the reasoning instead of rediscovering the bug.
What I don't let it do. Send a DM. Submit an application. Change a price. Retry into a customer's wallet. Claim a number that isn't verified. Those lines are the product.