selahcourse.com
An AI PM interview prep platform that forces practice over passive reading — built on a pgvector RAG index of 200+ Lenny's Podcast episodes, with 19 modules live and paying students inside.
Most AI PM interview prep ends at content. Candidates read Lenny's Newsletter, watch YouTube frameworks, and absorb cohort courses — and then walk into the interview having never practiced under pressure. Passive consumption doesn't build the muscle. Rehearsing your actual thinking on a real PM scenario, hearing the gaps in your reasoning, and getting coached on what you missed — that's what converts reading into readiness. None of the existing tools did that end-to-end. Candidates were doing it in their heads, in Google Docs, alone.
Ship the minimum loop first. One module, one scenario, one evaluation — enough to test whether grounding practice in real podcast content made the coaching feel different from generic question banks. It did. Then build the full system: 19 modules with authored content, a 5-step learning loop per module that forces sequential progress, and a retrieval layer that pulls from 200+ indexed Lenny's Podcast episodes so every scenario and every coaching note cites real source material. Plus a full instructor platform so other creators can run the same loop against their own content with no code changes.
- Upload a module, complete the Anchor step — Claude Haiku generates a fresh PM scenario grounded in 200+ indexed Lenny's Podcast episodes
- Record or type your answer — Whisper transcribes voice responses via ElevenLabs Scribe, text goes directly to evaluation
- Apply + Simulate evaluation — Claude Sonnet scores 1–10 with specific coaching notes and source citations, not generic feedback
- Spaced repetition — ts-fsrs v5.3.2 schedules concept reviews based on your confidence ratings; due cards surface in a dedicated Recall queue
- Instructor platform — block-based content editor, AI course generation from uploaded notes (upload → full structured course in seconds for $0.002), builder gap analysis
- Stripe payments — course enrollment via Checkout, webhook-verified enrollment writes; no free-trial roulette
- AI extras — visual course mindmap generated by Sonnet, certificates with LinkedIn sharing, streaming text-to-speech for Alma responses (audio starts in 2–3s, not 45s)
Live with paying students — 19 fully-authored modules, 180+ content blocks, 95 concept definitions.
Next.js App Router · Vercel
Supabase — Postgres, RLS, Google OAuth + email/password
Claude Sonnet — scenario evaluation, course mindmap
Claude Haiku — scenario generation, Alma lifeline, AI course generation
ElevenLabs Scribe — transcription · OpenAI TTS tts-1 — streamed playback
pgvector hybrid search — 200+ Lenny episodes, cosine similarity + full-text fallback
Stripe Checkout — enrollment + subscription
Bespoke CSS design system — no Tailwind
The most interesting decision wasn't technical — it was the architecture for the knowledge layer. The vector index is a separate Supabase project shared across products. Any new creator can route retrieval to their own indexed content by setting one field. No code changes, no new infrastructure, no migration. That's the kind of decision that looks obvious in hindsight and requires a systems lens to make in the moment. Selah is what happens when you hold product thinking and engineering execution in the same hand.