Writing

On infrastructure, systems, and strategy

Technical writing from James Westover. No buzzwords. Concrete examples. Respect for the reader's time.

Stop Testing, Start Trying: Why Berlin's Hiring Process is Broken
Coding tests were always a bad signal. AI made it undeniable. Every engineer I hired at HERE Technologies and Uber is still there — not through LeetCode, but through hiring for judgment and investing in people after the hire. A manifesto on what is broken, why the Berlin comp gap is about to close, and what a saner process looks like.
Autovacuum for Knowledge
One entity in my knowledge graph had 282,950 observations. The fix: a PostgreSQL-native compaction queue where any LLM can claim work, fan out to all available models, and let the data decide which one compresses best. Along the way, I noticed this pattern is exactly what scientific distributed computing has always needed.
Production Scientific Software in 48 Hours
A Finnish astronomer needed a pipeline to find minimoon candidates in LSST alert data. We built 21,000 lines of production-ready scientific software in two days. The numbers are real. So is the argument about what AI-augmented development changes for research software economics.
Data Sovereignty Is Not a Compliance Problem
European companies treat data sovereignty as a GDPR checkbox. It is a competitive strategy. The economic and engineering case for owning your AI inference pipeline, with a real production architecture to prove it.