Around the web
Articles I’ve written, stories about my work, conversations I’ve joined, and slides I’ve shared over the years, from building Android apps to scaling teams and making AI useful.
Podcasts and videos · Articles and features · Presentations
Podcasts and videos
How to Stop Your AI Agents From Breaking
A conversation about context rot, work slop, and what it takes to make agents reliable. We discuss why giving a model more information can make its answers worse, how Dash uses indexed content, and why familiar software engineering practices still matter when building with AI.
Production-grade Evals
Treating evaluations like production code: datasets, LLM judges, and automated gates for Dropbox Dash. Braintrust’s accompanying customer story describes the move from public datasets to representative internal examples, with pre-merge smoke tests, a larger evaluation suite, and production scoring to catch regressions.
Context Engineering, Multiplayer AI and Effective Search
We talk about Dropbox Dash, search across work apps, and making AI useful in a shared team context. The conversation covers context rot, retrieval, and why building side projects helps me stay sharp as an engineering leader. We also discuss when to trust data and when a decision needs conviction.
Watch the interview · Episode and transcript
Jump to context engineering (22:17), side projects and leadership (37:51), or data versus intuition (48:39).
How Dropbox Is Rethinking Work With AI
Finding useful information across scattered work apps, building context-aware AI, and moving toward tools that help teams work together. We also discuss engineering lessons from LinkedIn and Uber, including the Krispy Kreme promotion that overwhelmed Uber Eats, and why leaders need hands-on experience with AI.
Tip of the Spear With Data and AI
I joined a panel with leaders from Robinhood, ThredUp, and Databricks, representing Dropbox’s AI engineering and Dash work. The forum explores data platforms, analytics, governance, and AI products. My panel starts at 10:44 in the recording, which also includes other speakers’ keynotes.
Articles and features
Technical writing I’ve published elsewhere, plus features about me and the teams I’ve led.

How we're training a Figma-fluent editing model (2026)
Training a model for design edits with supervised fine-tuning, reinforcement learning, and design-specific evaluations.
Knowledge graphs, MCP, and DSPy in Dash (2026)
How Dash retrieves workplace context, connects knowledge, and improves prompts and relevance.
A Brief History of Scaling Uber (2024)
The engineering milestones and architecture changes behind Uber's global growth.
A Brief History of Scaling LinkedIn (2015)
From a monolith to services, Kafka, and multiple data centers, including the engineering culture behind that evolution.
Engineering the New LinkedIn Profile (2013)
Rebuilding the profile page with a new frontend architecture, client-side templates, and JSON.
How Dropbox built an evaluation pipeline for AI search (2025)
Moving from public datasets and spreadsheets to automated evaluations and production feedback.
Building Dash: How RAG and AI agents help us meet the needs of businesses (2025)
A look inside our team's work on retrieval, multi-step agents, and safe code execution for business users.
More press and engineering stories from my Uber Eats teams
Presentations

Uber Eats Mobile Tech Talk
Mobile apps for a three-sided marketplace, including React Native for restaurants.
The Wisdom of David Henke
Lessons on measurement, feedback, teamwork, and blameless post-mortems.
Scaling LinkedIn: A Brief History
From the Leo monolith to services, Kafka, and multiple data centers.
Analyzing Performance Problems
Finding the skills, feedback, or obstacles behind performance gaps.
Engineering the New LinkedIn Profile
Building a faster, more interactive profile with JSON, Fizzy, and Dust.js.
Mobile App Development Using Android SDK
An introduction to Android apps, Java, and Dalvik from 2010.



