Staff Software Engineer, Design Systems and Front-End Platforms

I build software for people and organizations doing good work.

I help people ship fast, accessible, reliable software. Engineering teams bring me in to lead design systems, front-end platforms, and CI/CD work, and small businesses and nonprofits bring me in to build or fix their websites. Over 21 years, I've built for Mozilla, NASA, and the Humanitarian OpenStreetMap Team, and my code has been run around the world, from Antarctica to the International Space Station.

Jo Sprague smiling, wearing a patterned shirt

Featured clients

  • Mozilla
  • NASA
  • Climate Central
  • Humanitarian OpenStreetMap Team
  • Pinto

Project highlights

See more projects

The work I care about

  • Climate and environment
  • Civic tech and open source
  • Humanitarian and nonprofit work
  • LGBTQ+ rights
  • Women's and reproductive health
  • Consent and sex education
  • Communication
  • Travel and culture
  • Diversity
  • Accessibility and inclusivity
  • Open web and privacy

Work with me

I'm open to staff and senior roles in design systems and front-end platform, and to contract engagements. I also help small businesses and nonprofits with their websites.

About

I'm a multinational and endlessly curious person who speaks three languages and has traveled to more than 40 countries. I'm queer, I care about how people connect and communicate, and I have experience mentoring and facilitating consent workshops. When I step away from the keyboard, you'll find me outside in the sun, surrounded by trees and good people.

More about me

Blog

September 2026

Before you replace your dev team with AI, read this

Writing code stopped being the constraint. Knowing what to build and verifying what comes back is the work now, and that's what experience buys.

August 2026

The CSS Zen Garden dream, finally shipped

Rebuilding Firefox.com with Mozilla and Lincoln Loop on modern, native CSS with no preprocessors, and what that means for design systems today.

Get in touch

Tell me about your project, role, or website problem.

Contact me