• I kept hitting Claude Code rate limits way earlier than made sense. Not because I was doing anything at scale. I wasn’t running massive jobs or processing huge datasets. I was just using it — normally — and somehow burning through tokens faster than I expected. Turns out most of the inefficiency wasn’t from what I was doing. It was how I was doing it. Specifically: unnecessary context. Claude was doing a lot of work that had nothing to do with the actual task. Spent a few weeks paying closer attention and cleaning things up. Sharing what I found in…

    Read more…

  • The biggest learning as a PM transitioning into AI: “𝗪𝗼𝗿𝗸𝗶𝗻𝗴” 𝗶𝘀 𝗻𝗼 𝗹𝗼𝗻𝗴𝗲𝗿 𝗯𝗶𝗻𝗮𝗿𝘆. In traditional software, PRDs define requirements, engineering writes test cases, and you validate against clear pass/fail criteria. That works when “does it work?” has a yes or no answer. AI doesn’t behave that way. It can pass predefined test cases and still fail in production because inputs are unpredictable and “correct” is often a spectrum, not a checkbox. That’s when I realized evals aren’t the AI version of QA. They’re not something you bolt on after building the product. They become the foundation – the thing…

    Read more…

  • The $28 billion business model hiding inside your boarding pass — and what it means if you’re building in this space. Here’s a fact that took me a full minute to process. During COVID, when Delta Air Lines needed emergency cash, they didn’t pledge their planes. Not their gates. Not their routes. Not their slots at JFK. They pledged their loyalty program. Delta borrowed $9 billion against SkyMiles. United raised $6.8 billion by securitizing MileagePlus. American got $10 billion using AAdvantage as collateral — the largest airline-backed financing in history. Now here’s the kicker. United’s MileagePlus, at the time, was…

    Read more…

  • And learned the most important lesson about vibe coding along the way.  I believe in learning at least a little bit of the local language of wherever I live – even if it means suffering through embarrassingly broken conversations. To my surprise, people have usually been super supportive of my attempts rather than laughing at my faults.  So, when my move to Germany became certain, I started learning Deutsch. I racked up a 500+ day Duolingo streak and thought I could clear the A1 exam with no sweat.  Then I tried a mock test. Failed miserably.  Turns out, I’d gotten…

    Read more…

  • Ten days into my job search, I was spending hours scrolling and still applying to the same eight roles. The problem wasn’t effort. It was signal. So I built a small AI tool to handle discovery. It scans multiple platforms, filters and deduplicates listings, and surfaces only roles worth my time. In one run, 127 listings became 43 real options. But I deliberately broke the Apply button. No auto-apply. No auto-fill. Because a job application isn’t a workflow. It’s a choice. I automated the noise and kept the decisions human.

    Read more…