Technical deep-dives on security, ESLint plugins, and AI-native development. Published across multiple platforms.
Deep-dive metrics from my technical writing
How to assess a new codebase in under 30 minutes using automated security linting. Perfect for acquisitions, new hires, or CTOs inheriting legacy code.
We benchmarked both plugins on 10,000 files. The no-cycle rule shows up to 100x improvement. Full reproducible methodology.
Landing a security-focused role? Here are the 15 JavaScript security concepts interviewers actually ask about—with code examples.
Linting 10k files dropped from 45s to 0.4s. Here is the performance gap in eslint-plugin-import and the fix.
A comprehensive head-to-head comparison of eslint-plugin-secure-coding vs eslint-plugin-security with full methodology, test files, and results.
50ms per insert × 1000 rows = 50 seconds. Here's how to detect and fix N+1 loop patterns in PostgreSQL.
One misconfiguration lets attackers forge any JWT. Here is the attack, the CVE, and the ESLint rule that catches it.
How to detect and prevent prompt injection in generateText, streamText, and other Vercel AI SDK functions using automated ESLint security rules
Prompt injection is the #1 vulnerability in AI apps. Here is how attackers exploit it and how ESLint catches it.
A dynamic search_path lets attackers hijack your SQL queries. Here's how this obscure attack works and how to prevent it.
A complete mapping of OWASP LLM Top 10 2025 categories to automated ESLint rules for the Vercel AI SDK
NestJS security in 60 seconds. 5 rules for guards, validation, and rate limiting.
I also publish deep-dives on Medium. Explore my profile for more technical content and engineering leadership insights.