His mission

(he chose to accept it)
Seek, destroy and prevent tech debt

Recent Deployments

Hypermedia API architecture at MoveHQ
GraphQL API architecture at PGA
Legacy billing modernization at UPG of UVA
Developer tooling at GitHub
User Experience paper cuts at GitHub
Monkey wrench
Developer tooling at Shutterstock

Tools & Tradecraft

API architecture


devX tooling



Noteworthy Achievements

Architected a modern REST API in Rails for a legacy CRM system saddled with tech debt
Iteratively (ShapeUp) delivered GraphQL API and established an eventing pattern in Rails
Designed developer tooling for a/b testing, feature flagging, and beta rollouts
Built developer experience tooling and established practices for continuous deployment
Modernized a legacy healthcare billing system under tight deadlines
Reverse engineered binary network protocols and implemented Ruby libraries for them

Reports from the Field

  1. Supporting TypeScript in Lineman.js

    Lineman is a great tool for building client-side applications. Out of the box, it supports CoffeeScript, LESS, SASS, and (of course) JavaScript and CSS. But because Lineman is built on Grunt, it is easy to add any grunt task to the Lineman toolchain.
    Time An icon of a clock Publish Date
    June 5, 2013
    Person An icon of a human figure Authors
    Jason Karns
    Category An icon of a paper organzier Categories

Search An icon of a magnifying glass Search the Blog