I’m a full stack web developer, frontend-leaning. I’m obsessed with UX, DX, and raising team capability. 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
- Read my other themes in my article Credo.
- Read example UX issues I want to save the world from in my article Good Ideas From Mobile Design That Are Good Everywhere.
- When I’m not coding, I mix beats and cocktails. 🍸
Experience
Self
UX Engineering Consultant
–
Remote, Portland, ORHelped 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, ORUX team tech lead. Built SPAs 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. Championed efficiency: increased deploys from 1x/month to 10x/day. Ember.js, Node.js, Python, Elasticsearch, Swagger.
Gravity
Senior Software Developer
–
Santa Monica, CADeveloped 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, CAImplemented 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, WAColophon
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.