I'm a full stack developer currently living in Toronto.
I create modern interactive web applications that serve millions of users a month with and Next.js, , , and of course .
I also build and maintain scalable APIs with , or . Occasionally I work on , build , and publish .
I <3 , so I tend to tinker with open source projects in my spare time, building fun little tools, games, or even just websites that make me laugh.
I've also got experience leading teams and love to mentor junior developers.
View my full work history
A presentation I did with my friend Adam Dawson on hacks and attacks in the rapidly growing NLP and LLM space, as well as common API use-cases for these AI technologies and how security is evolving within the space.
I'm a senior full stack software developer on the team behind the Cohere Platform. My responsibilities are divided between three key products: web applications (, , & ), API & endpoints (, ) and SDKs (, ). In combination, these products provide Cohere users with unprecedented access to AI and Natural Language Processing, allowing them to build software that can understand the meaning, sentiment, and intent of the words humans use.
I worked as a technical lead on the web team at TunnelBear. The TunnelBear suite of websites served millions of users a month, so it was important for them to be fast, lightweight, accessible and scalable. Through my time at TunnelBear I spearheaded the adoption of and offloaded DNS and network complexity to Cloudflare’s edge. I transformed our frontend to a place where it was efficiently distributed globally as tiny bundles of static code using a fully serverless architecture. I integrated automated deployment and testing, so my team and I could focus all of our effort into coding new features instead of struggling with environments or deploys. I’m really proud of what I built there, and I’ve learned a lot by testing the limits of JavaScript frameworks, , serverless architecture, automation, and testing.
I was the core developer for the TunnelBear browser client, A that runs in Chrome, Firefox and Opera and serves hundreds of thousands of users globally. It's built with , and , with a focus on security, privacy and accessibility.
A with support for the Cohere API. This SDK allows Node.js users to interact easily with the Cohere API in their own applications.
The Good Winds is a website and app that helps users plan their sessions despite changing weather conditions. Built with Vue.js and Python.
Fantasy Falcon is an analytics tool that organizes and displays data to fantasy sports fans. It's an ongoing project I'm working on with some friends. It's built with and .
This is an that generates a typing animation. I decided to turn the animated title of this website into an open sourced npm package so other people can use it. It's a tiny little JavaScript API that generates a typing animation through a callback function. It's a framework agnostic typing animation package built with vanilla JavaScript. Works with Vue.js, React, and everything else.
This website is a little project that transforms user inputs into funny and nonsensical sentences. Initially I used the Merriam-Webster API to translate inputs, but after tweeting about it I found the requests were surpassing their daily usage limits, so I used to generate chunked thesaurus files and lazy load them with . Even though this project is ridiculous, I learned a lot about how to efficiently serve data.
I built and designed this website with and because I feel like it's weird when web developers don't have... websites. It's hosted, served and continuously deployed as a static bundle through . It's scalable so if it ever gets popular, I'll be ready. The background animation something I whipped up with . I care about privacy so this website doesnt track you or set cookies, it doesn't request any third party assets or libraries, it makes no API requests, and it's fully functional with or without JavaScript.
Vue.js,
React & Next.js,
Svelte & Sveltekit,
Angular,
Backbone,
Drupal,
WebPack,
Babel,
Unix,
Git,
RVM,
npm,
Bower,
Gulp,
Grunt,
MAMP,
HTML5,
SASS/LESS/SCSS/Stylus,
TypeScript,
WordPress,
jQuery,
Tailwind,
Bootstrap,
Foundation,
Go,
Python,
SQL & Postgres,
Node.js,
Express,
PHP,
Netlify,
Cloudflare,
Cloud SQL,
AWS,
Ghost,
Shopify,
Sketch,
Figma,
Photoshop,
Zeplin,
I love boardgames so much that I play them solo in addition to playing with friends. My favourites are and . I write reviews of games on Instagram.
I really enjoy indie and alt comics, stuff like , , or .
I'm a . I love to take candid and documentary photos. I've got a portfolio of my work up at kravse.com.
I travel whenever I can. I've visited 33 countries (and counting!). Some of my favourite destinations have been Morocco, China, Sweden, and India.
I really enjoy back-country camping and hiking. This year I've been exploring Tommy Thompson Park, Algonquin Park, and the Bruce Trail.