I work on the hard boundaries in open-source data systems—where query semantics meet storage formats, asynchronous state becomes durable, and index algorithms become production APIs.
- Correctness and durability: WAL generations and fencing, cache/object-store lifetimes, weak-memory concurrency, overflow, NULL semantics, and failure propagation.
- Query and index behavior: SQL compatibility, Parquet pruning, HNSW/IVF algorithm alignment, and vectorized Arrow execution.
- Lakehouse interoperability: Iceberg/Paimon/DuckLake metadata, time travel, delete and rewrite paths, plus safe cross-language APIs.
I mostly work in Rust and C++, following problems into Java, Python, Node.js, or C when the boundary requires it. I favor explicit invariants, compatibility-preserving changes, reproducible failures, and benchmarks that explain—not merely report—performance.
Recent contributions span Lance / LanceDB, DuckDB / DuckLake, and Apache DataFusion / Comet / Iceberg / Paimon / Doris.
Selected upstream contributions: 38 merged pull requests across 11 repositories.

