Engineering
15 posts filed under Engineering.
- September 17, 2026How Session Replay Works Under Flutter (When There Is No DOM)
rrweb records the DOM. Flutter has no DOM. Here is how we rebuilt session replay for Flutter on top of the widget tree, and what the privacy trade-offs look like.
- September 12, 2026One Week of Real Traffic on SQLite: What Broke and What Didn't
The follow-up to our SQLite observability benchmark: a full week of production-shaped traffic against the single-binary stack, with the failure modes nobody benchmarks for.
- September 10, 2026Source Maps and Symbolication, Explained From First Principles
Minified stack traces are useless. Here is what actually happens between a browser stack trace and a readable one: VLQ mappings, debug IDs, and why symbolication is a cache problem.
- August 29, 2026Reliable Apps Crash: So Why Does net/http Recover Panics?
What separates good restaurants from bad ones is consistency. When you order the same meal twice, you expect the same meal twice. That predictability is what makes them reliable. A distributed system needs the same property.
- July 29, 2026How to build an AI SRE agent [Part 1]
A beginner-friendly walkthrough for building your first AI SRE agent. In this tutorial we'll catch a production error, open an issue, and set up an automatic workflow that runs Claude Code to investigate and fix the root cause. When it's done it will open a PR linked to the original bug, or leave a comment explaining why the issue could not be automatically addressed.
- July 21, 2026SQLite vs DuckDB on the same $16 box: every cliff moved 100x
Same $16.49/month server, same TracePath binary, two embedded databases. DuckDB writes 4x to 15x faster than SQLite, serves dashboards at 100x the row count, and stores a billion metric points in 10.8 GB. Full numbers and methodology inside.
- July 8, 2026The MCP server was the easy part
TracePath now speaks MCP: a remote server with OAuth login built in, and a local stdio one that rides the CLI session. How it works, the three ways to authenticate, and when I'd still reach for the CLI instead.
- June 20, 2026System Design: Building a world-class symbolicator
The shape of your data can make a service fast or slow. A walk from the slow version to the fast one, built on a real example: turning unreadable production crashes back into readable code.
- June 15, 2026Reading an obfuscated Flutter crash by hand
- June 9, 2026I tried to break SQLite. The reads broke first.
Post 1 only measured metrics writes. This time I ran spans, metrics, and logs against the same $16.49/month CCX13 box, and probed real dashboard queries at 100k, 1M, and 10M rows.
- June 6, 2026Deep dive into the JS/TS toolchain: How source maps fall short where it matters most
What actually happens between your TypeScript and a production stack trace, decoded entirely by hand.
- May 29, 2026I Ran My Entire Observability Stack on SQLite. You Probably Could Too.
Most observability stacks optimize for throughput your startup will never use. We optimized for accessibility instead, easy and cheap to run, and hit 58K metric points/sec anyway. Here is the full benchmark.
- May 4, 2026TracePath React Native SDK
- May 4, 2026TracePath Android SDK
- April 16, 2026Flutter Session Replay: See What the User Did
The missing layer of mobile observability. Open source session replay for Flutter: architecture, benchmarks, and everything I ruled out first.