YAEL Engineering Blog
Field notes from shipping production software.
We've taken 20+ posts, dozens of features, and five production products through real customers. These are the patterns that survived contact with reality — and the ones that didn't.
Featured
SaaS
How to build a SaaS MVP in 6 weeks (without a rewrite later)
A six-week SaaS MVP plan that doesn't trade speed for technical debt — auth, billing, multi-tenancy, and a real operator dashboard from day one.
01 May 202610 min
PaymentsStripe Billing vs Paddle vs LemonSqueezy for SaaS in 2026
An opinionated comparison of the three default billing platforms for B2B SaaS — pricing model coverage, MoR vs not, dev DX, and where each one breaks at scale.
22 Apr 20268 min
AI & AgentsBuilding AI agents with Claude tool use in production
What changes when an AI agent moves from demo to production — tool-call loops, error recovery, observability, cost controls, and the failure modes that only appear at scale.
02 Apr 20269 min
SaaS
All saas →AI & Agents
All ai & agents →- Building AI agents with Claude tool use in productionWhat changes when an AI agent moves from demo to production — tool-call loops, error recovery, observability, cost controls, and the failure modes that only appear at scale.·9 min
- RAG vs fine-tuning: when to pick each (and when to pick both)A practical decision framework for retrieval-augmented generation vs fine-tuning vs prompt engineering — with cost, latency, and update-frequency trade-offs.·9 min
- Self-hosting Llama vs Claude API: the real cost breakdownWhen self-hosting an open-weight LLM beats the Claude API, when it doesn't, and the operational costs nobody includes in their comparison.·8 min
- Choosing a vector database: pgvector vs Pinecone vs QdrantAn honest comparison of the three serious choices for production vector search in 2026 — what each one is good at, what they're not, and why pgvector wins more often than the marketing suggests.·9 min
Payments
All payments →- Stripe Billing vs Paddle vs LemonSqueezy for SaaS in 2026An opinionated comparison of the three default billing platforms for B2B SaaS — pricing model coverage, MoR vs not, dev DX, and where each one breaks at scale.·8 min
- Stripe Connect marketplace architecture: a deep diveHow to architect a multi-sided marketplace on Stripe Connect — Express vs Standard accounts, fund flows, the fee model, and the parts most teams build wrong.·9 min
Bots & Messaging
All bots & messaging →- Telegram bot payments with Stripe: the production integration guideHow to wire Stripe into a Telegram bot the right way — invoice flows, webhook idempotency, refund handling, and the parts the docs don't tell you.·8 min
- WhatsApp Business API: direct vs BSP — the real cost in 2026Direct Cloud API vs a Business Solution Provider — the actual cost breakdown, the parts BSPs hide, and when each model wins.·9 min
- Discord bot + Stripe paid roles: the full architectureHow to grant Discord roles based on Stripe subscriptions — webhook flow, role syncing, churn handling, and the patterns that survive Discord's rate limits.·8 min
Scraping & Automation
All scraping & automation →- Headless browser scraping: Playwright vs Puppeteer in 2026An opinionated comparison — Playwright vs Puppeteer vs newer alternatives. When each one wins, the bot-detection gap, and what production scraping infra actually looks like.·8 min
- Anti-bot defences: Cloudflare, DataDome, Akamai explainedWhat each of the major anti-bot platforms actually does, the signals they read, and which one is hardest to defeat in 2026.·9 min
Mobile & Games
All mobile & games →- React Native vs native: the honest decision frameworkWhen to pick React Native, when to go fully native, and when to do both — written by a team that has shipped both for real customers.·8 min
- Mobile app store rejection checklist (iOS + Android, 2026)Every rejection reason we've debugged across customer apps, ranked by frequency — and what to do about each before you hit submit.·9 min
- Telegram Mini Apps vs Discord Activities vs web game — picking the platformThree near-identical-sounding ways to ship a game inside a chat app. Each has very different reach, distribution, and monetization.·8 min
Architecture
All architecture →- Multi-tenant Postgres: row-level security explained (with real code)How RLS actually works in production multi-tenant SaaS — set policies, set the session variable, handle bypass, and avoid the three failure modes that bite teams at scale.·9 min
- Webhook idempotency: the bug most teams shipWhy webhook handlers double-charge, double-grant, and double-cancel — and the three-line database pattern that fixes all of it.·8 min
- Next.js App Router: server actions vs API routes — when to pick eachWhen server actions are the right call, when API routes still win, and the production patterns we use on every Next.js build.·8 min
Tooling
All tooling →- TypeScript monorepo: pnpm + Turborepo tradeoffs in 2026When a monorepo helps, when it hurts, and the pnpm + Turborepo + Changesets stack we ship by default — including the parts that hurt at scale.·7 min
- Building an internal tool instead of buying RetoolWhen the build-your-own internal tool is the right call — the cost comparison most teams skip, and the surprisingly small Next.js + Postgres scaffold that replaces Retool for many use cases.·8 min