➡️ I'm Jon Kurinsky, a product-minded, client-focused developer with a specialization in rich media experiences
I am a product-minded software engineer with specialization in interactive, complex, and highly-stateful user interfaces. I prefer to work with high-performing cross-functional product teams that make decisions using data and experimentation. I have a record of driving change via advocacy and education around software quality through a disciplined approach to unit testing and test-driven continuous refactoring. I have experience with adaptive bitrate video playback and the use of browser APIs to build performant multimedia experiences on both desktop and low-power OTT devices. I've been called a super-communicator, and I am an experienced speaker and educator.
I currently work at Airbnb. I used to work on the video player at Tubi. I spent two years before that working on 🎥a browser-based multitrack video editor. 🔷Find me on LinkedIn
Much of my recent and most interesting output is closed-source, but here are some assorted projects which I can share:
- modeload is a small, partly-vibecoded CLI tool to back-up and restore Cursor IDE custom agent mode configs-- a stopgap until Cursor supports this feature natively built to help my team share config (
typescript,Cursor IDE; on NPM here)
- callback-batcher is a small library for isomorphic rate-limiting of events; won 2nd place at tubitv.com 2023 company hackathon (
typescript,vitest; on NPM [here](https://www.npmjs.com/package/callback-batcher - gcull is a small, well-tested CLI tool for interactively deleting merged and stale local git branches (
typescript,vitest; on NPM here) - gchk is a small, well-tested CLI tool for interactively checking out git branches (
typescript,vitest; on NPM here) - prettier-inittier is a one-line command that installs and configures Prettier in a repository (
node,vitest; on NPM here)
- krnsk0.dev is my infrequently-updated dev blog (
astro, deployed here) - planetfall is a browser game with a complex data model built to explore some possibilities and constraints around
mobxandmobx-keystone(deployed here)
- guser is a small, well-tested CLI tool for git user switching (Node, shelljs; on NPM here)
- ng-draw is a canvas-based shape-drawing toy built to learn HTML canvas and Angular (deployed here)
- sort_buddy visualizes sorting algorithms commonly taught in intro algorithms courses (
react/redux; deployed here) - snek_io is a multiplayer websocket game built for a hackathon (no client framework,
expressandsocket.iobackend; deployed here) - pixalive is a multiplayer editor for animated pixel art built by a small team for a hackathon (
react, HTML5 canvas,node,postgres; deployed here; desktop only!)
Most of my writing for the last several years is in private RFCs and ADRs; here are some blog posts:
- A Thorough Introduction to Git's Interactive Patch Mode
- Solving Every Skyscraper Puzzle, parts one and two




