Work
Written as pattern studies rather than product tours: the constraint that shaped each decision, what it cost, and what I would do differently now.
2 case studies
Employer systems are described in general terms throughout — the patterns are mine to write about, the systems are not.
A token the browser never holds
Frontend Engineer · frontend architecture ownerOct 2022 — present4 min read
Auth, RBAC and the data layer for a multi-tenant support platform, designed so the browser holds no credential and navigation cannot disagree with its guards.- Next.js App Router
- TypeScript
- TanStack Query
- Go gateway
A phone that lives in the browser
Frontend Engineer · softphone and real-timeOct 2022 — present3 min read
A SIP.js softphone inside a support console: registration lifecycle, call state and teardown handled in the browser, with no desktop client to install.- SIP.js
- WebRTC
- React
- TypeScript