the record
work
What he builds, where he has built it, and the four ways the same history gets introduced...
reach
what he works on
Grouped by where the code runs, and deliberately unranked; A percentage beside a technology is a number its author chose about himself...
mobile
Cross-platform applications and the widgets underneath them — including the platform-channel work when a plugin has to talk to Android and iOS directly...
Flutter · Dart · Android · iOS
web
Vue and Nuxt front ends, static and server-rendered, built as design systems rather than as pages — this site is four of them sharing one layer...
Vue 3 · Nuxt 4 · TypeScript · SCSS
backend & data
The services behind the interface, and the scripting around them, in whichever runtime the rest of the system already speaks...
Node · C# · Python · PostgreSQL
developer tooling
Git hooks, CLIs, upgrade paths and release hygiene; Most of the published catalogue lives here, which is not an accident — it is where the same problem keeps recurring across projects...
Dart CLI · Node CLI · GitHub Actions · Biome
framings
resume
Four framings of the same person; A team hiring for Flutter and a team hiring for product want the same facts in a different order, so they get the same facts in a different order; Nothing is added or removed between them — the work does not change because the reader did...
The PDFs are not on this build yet; LinkedIn carries the same history in the meantime, and any of the four can be sent on request...
reach him
get in touch
A resume exists to start a conversation; These are the places to have one...
- email
Roles, contract work, or a question about a package...
- linkedin (opens in a new tab)
The full history, and the fastest way to reach him about a role...
- github (opens in a new tab)
Bugs and feature requests belong in the relevant repository's issues, not in an inbox...