I'm Liam, a Software Engineer based in Canada, I'm currently working as a Lead Developer at EducationPlannerBC, During the day I work primarily in Go and TypeScript, but I've been wrestling with Rust lately and loving it.
A real-time collaborative markdown editor for teams with automatic merge handling, live presence, threaded review comments, and offline-first sync.
Tech Stack: TypeScript, Next.js, Automerge
A Rust CLI daemon that syncs local files with a remote Automerge document over WebSockets using the full automerge-repo handshake and CBOR message protocol.
Tech Stack: Rust, Automerge, WebSockets, CBOR
A high-throughput rules engine that evaluates complex user-defined schemas using Common Expression Language. Achieves ~7k requests per second per instance through in-memory caching and precomputed evaluation environments.
Tech Stack: Go, PostgreSQL
A distributed tracing backend for OpenTelemetry that correlates out-of-order spans across services using TraceID grouping and parent–child resolution. Implements bounded trace completion with inactivity and max-age limits (30s / 5m) to balance completeness with memory constraints.
Tech Stack: Go, Kafka, OpenTelemetry