My story
Why, hello there. 👋
I'm a Senior Software Engineer at Recursion where I help a team of scientists and engineers discover promising new drug candidates using a combination of biology, chemistry, automation, data science and machine learning. It's easily the most worthy cause I've ever contributed code to and I feel super lucky to be part of this awesome team.
Before joining Recursion, I was a Senior Software Engineer on ecobee's ".com" team where I helped migrate ecobee's ecommerce website from a legacy WordPress codebase to a modern stack built with React, Gatsby, TypeScript, Netlify, Contentful and Shopify. I’m especially proud of leading the planning and development of ecobee’s shopping cart, which reliably facilitates $100K+ in sales per week.
Before joining ecobee, I built and maintained 25+ marketing websites for Coffeeshop Creative and initiated a number of new best practices, including a git-based workflow, continuous deployment with Netlify, and regular performance, SEO and accessibility audits with Lighthouse and similar tools.
Outside of work, I enjoy teaching web development to new coders and created a 10-video series that teaches beginners how to get started with React and Gatsby.
You can find me on Twitter where I chat about web development and share links to learning resources I've enjoyed, or on GitHub where I work on side projects in the open.
Projects
Where my time goes after work.
- Gatsby Tutorials
A community-updated list of 200+ Gatsby.js tutorials with 100+ stars on GitHub. The tutorials are searchable and filterable and include video, audio and written learning resources.
- Up and Running with Gatsby
10 beginner-friendly YouTube videos that teach the basics of React and how to get a Gatsby project up and running.
- Dotfiles
Configuration files for setting up a comfortable development experience on Mac that include my favourite settings for Neovim, Tmux, Alacritty, Zsh, Git, Homebrew and macOS, plus a script that sets them up on a new Mac with a single command.
Writing
Thoughts about coding.
- How ecobee Uses Slack to Report Data Entry Errors to Content Editors
How the ".com" team at ecobee uses Slack as an alert system.
Updated 2 years ago
- The filter(Boolean) trick
How to remove empty values from an array.
Updated 3 years ago
- Using GraphQL with Gatsby
How to write GraphQL queries in a Gatsby project.
Updated 4 years ago
- Adding Content to a Gatsby Project
The pros and cons of different approaches.
Updated 4 years ago
- Writing CSS-in-JS in a Gatsby Project
How CSS-in-JS libraries like CSS Modules and Styled Components make it easier to safely add and remove styles.
Updated 4 years ago