Singapore · Open to work

Eric San

Senior full-stack engineer by day. In my spare time I go deep on low-level systems — building language tooling and network stacks from scratch, mostly in Zig, because the best way to understand a system is to rebuild it.

The TypeScript toolchain

A complete JS/TS toolchain in Zig — each piece a standalone library you can use on its own.

Networking

Modern transport protocols, sans-I/O.

zquic

Sans-I/O QUIC library. TLS 1.3 handshake, loss recovery, CUBIC + BBRv3, 0-RTT, path migration.

RFC 9000/9001/9002 · zero deps
quictlszig

zhttp3

HTTP/3 framing, QPACK header compression, and an opinionated server layer built on zquic.

HTTP/3 · QPACK
http3qpackzig

Static analysis

Catching bugs the compiler can't — statically.

san

Deep static analyzer for unsafe Rust. Plugs into rustc as a MIR driver — dataflow + typestate analysis, 132 checkers across the stdlib and ecosystem.

132 checkers · 183-fixture corpus
rustmirunsafedataflow

zbc

Static analyzer that infers Zig lifetime, ownership and cleanup bugs — no annotations, no runtime instrumentation.

ziglifetimesownership

Languages & tools

TypeScript JavaScript React Node.js Zig Rust Go

Interests: parsers, type systems, network protocols, performance engineering, low-level systems.