Summary
My passion as software engineer is to make complex problems disappear as they are transformed into understandable pieces. I have had the delight of writing near exclusively Rust for the last 8 years. While I have experience across the entire stack I tend to focus on backend work. Professionally I have trained other engineers and advised leadership. In my spare time I help out a number of open source projects. I also bake really nice bread and I am trying my hand at woodworking.
Experience
Zed Industries — Senior Engineer (developing performance)
- Sped up the Zed editor by a factor 1000 when under high load.
- Build a priority scheduler for a unique async runtime which replaced the need for complex code in other areas while improving responsiveness.
- Rebuild Zed’s real-time voip audio pipeline.
- Held meetups with open source contributors and users.
- Onboarded new personnel and increased productivity by overhauling the onboarding process.
SolidSands — Senior Engineer (advising, developing, training)
- Trained their software engineers in Rust.
- Designed and coordinated the development of a Rust std test harness to integrate with their existing product.
- Advised CTO & CPO on technical decisions and product opportunities.
Rust-audio — Project lead (ecosystem unification) Working with major crate authors and users (such as Bevy) to unify the audio ecosystem.
Rust-audio — Maintainer (rodio crate) Responsible for the largest audio crate in the rust ecosystem (5 million+ downloads). Expanded team from one to three devs, landed major features and improved maintainability.
Leiden University — Council Chair (Faculty Council) As chair I led the council meetings and successfully negotiated curricula improvements.
Contributions
Leiden University — Guest Lecturer (Consensus algorithms) Gave a guest lecture on invitation of dr. Alexandru Uta. I introduced the students to consensus and explained Paxos and Raft.
Rust-lang — Contributor (standard library) Wrote a proposal for a sleep function, got it accepted and implemented, specialized different platforms/OS’s and added a shim to MIRI.
Zigpy — Contributor (Ziggurat) Helping build an open Zigbee stack. Enhancing maintainability through refactors and replacing thousands of lines of hand written serialization code with code generation.
I provide fixes to projects instead of bug reports whenever possible, these are a few of the projects I have helped out that way:
- google/tarpc
- zigpy/ziggurat
- containers/storage
- embassy-rs/embassy
- instant-acme
- knurling-rs/defmt
- spacejam/sled
- probe-rs/probe-rs
Personal projects
- Renewc (
renewc): A runtime dependency-free certificate renewal with advanced helpful diagnostics - Service-install (
service): Easily provide users an install method on Linux systems - Dbstruct (
dbstruct): Build a typed database by defining a struct - Abstract-bits (
bits): Turn combinations of bit and byte fields into a structs, even if earlier bitfields encode the presence or length of later fields - Home automation (
ha): An efficient sensor and control system. Every part is custom made and tuned for performance, contains: time series storage, telemetry system, data broker, control system and much more
Skills
Programming languages
- Rust: primary language, #years_since(start_rust) years of experience. Experience across the entire stack: UIs in Iced & GPUI, distributed async systems with Tokio, power sipping RTOS-free embedded systems with embassy. Comfortable writing unsafe thanks to MIRI. Enjoys APIs that are (near) impossible to misuse.
- C: ~1 years. Comfortable reading, academic experience writing. Preferred to C++.
- C++: ~4 years. Strong proponent of running the std in debug mode, abolishing raw pointers, and running address sanitizer.
- Python: ~5 years. Used academically for large scale Data Science within Astronomy and Physics. Familiar with numpy, scipy, limited AI work (reinforcement learning with keras).
- Bash / Unix CLI: Large scale data editing or exploration using GNU tools and pipelines.
DevOps
- Linux: Used exclusively as development platform for #years_since(start_linux) years. Recently enjoying NixOS.
- Sandboxing: Containers (Podman, Docker), preference for statically built binaries with systemd sandboxing.
- Architecture: Experience with well-partitioned monoliths and sensible (micro-)services. Favors dependency injection and separation of concerns.
- Other: Using git since 2016, prefers rebasing over merging. Recently started enjoying jj. Uses typst when Markdown does not suffice.
Education
-
2019–2022 — MSc Computer Science, Leiden University, Cum Laude Focused on cloud and distributed computing; explored AI, robotics, and CS theory. Thesis: GovFS, a highly scalable consistent distributed file system
-
2014–2019 — BSc Physics, Leiden University
-
2014–2019 — BSc Astronomy, Leiden University