About Me

I’m a full stack web developer, leaning toward frontend, user experience (UX) development. With 14+ years in the game, I specialize in the following.

  • Incremental, continuous delivery. Don’t see progress for weeks? Doesn’t turn out how you imagined? I spot bottlenecks to help you connect faster to what you’re creating. Your team will love the momentum from showing, not telling.

  • Stuck with a UX mess? Didn’t bake in UX from the start? That’s okay. It happens to everyone.

    • Improve incrementally, without rewriting from scratch. Delivering frequently actually reduces risk. Rewriting is a risky shock to your codebase and customers. Nobody wants to get shocked.

    • Use design systems to rethink your designer-developer handoff. No designer? Stay lean with open frameworks.

  • Stuck with legacy, buggy, or unfinished code? I have a knack for debugging. I love to strategize how to evolve a system from current point A to desired point B. Then change the plane’s engines during flight.

  • Automated tests. Haven’t been testing your frontend? Certain changes collapse the house of cards? I’ve worked on teams with 0% test coverage and 100% test coverage. I teach the happy medium.

  • Web tech stack. You wanted buzzword bingo, you got it. I excel at JavaScript, TypeScript, Node.js, Python, JVM, CI/CD, Unix, and Git.

  • Overcommunication. I’ve been on both sides of the consultant vs. hiring in-house debate. If I’m unable to integrate well, I’ll be the squeaky wheel. I want our collaboration to be efficient and a good experience for all.

Even More About Me

Experience

Self

UX Engineering Consultant

Remote, Portland, OR

Helped clients adopt the latest frontend tooling, component libraries, test coverage, and code review guidelines. Maintained OSS libraries tldextract to parse URLs and music CLI to publish my music. Angular, Ember.js, Python, React, Ruby on Rails, Storybook, Tailwind, Vue.js.

CrowdStrike

Senior Software Developer

Remote, Portland, OR

UX team tech lead. Built single page applications for enterprise customers to triage and hunt advanced threats. Drove adoption of cross-team component library and microservice API spec. Grew team from 10 customers to 1,000s, from 2 developers to 20. Lead a culture of quality: continuous peer code review, checklists, and automated tests. Obsessed over efficiency: increased deploys from 1x/month to 10x/day. Ember.js, Node.js, Python, Elasticsearch, Swagger.

Gravity

Senior Software Developer

Santa Monica, CA

Developed a Scala web platform and 3rd party JavaScript partner integrations for serving realtime, personalized, article recommendations, embedded in top U.S. publishers’ sites. Ingested social data for analytics visualizations and browser extension. Built internal web APIs for tuning ontology, across non/relational and graph databases. Hosted Scala meetups, demonstrating company leadership in this niche.

Quantcast

Software Developer

San Francisco, CA

Implemented new features and optimizations, from front to back, for an audience measurement web app reaching over 2 million people per month. Reported service adoption in an internal dashboard, fed by batch jobs. Spearheaded projects, new technologies, and workflows in company tech talks. Java, Spring, GWT, Hadoop, Django.

Education

University of Washington

B.S. Computer Science, B.A. Linguistics

Seattle, WA

Colophon

This site is coded and written in iTerm2 and vim. It is built around the framework GatsbyJS. The site’s preferred display font is the humanist Open Sans. The preferred body font is the modern serif Lora. The site is hosted on Netlify. Its source is available on GitHub.