I’m Yonatan, a Senior Software Engineer on the Campaign Empowerment team at ActBlue Technical Services! ActBlue Technical Services (ATS) is the team of people who build and maintain the technology that powers ActBlue’s fundraising platform. Using Ruby, Javascript, and other languages, we create the software that Democratic campaigns, progressive-aligned causes, and people trying to make an impact use to connect with small-dollar donors and build people-powered change.
On the Campaign Empowerment (CE) team, we support this mission by building reliable, frictionless, and insightful solutions that enable progressive organizers to engage their communities sustainably and ethically. During my time on CE, we’ve built supporter forms, which allow donors to easily fundraise for causes they believe in, and improved our signup flow so organizations can get started fundraising faster than ever.
I’ve been a software engineer for nine years, working at startups and nonprofit organizations. Outside of work, I enjoy cooking, biking, sci-fi, watching Jeopardy, and working to improve my community!
I have a Computer Science degree, but not everything that has been useful in my career is from college! I learned the skills below on the job, and they’ve been incredibly valuable in my career and at ActBlue:
Curiosity
Any knowledge gap can be filled by curiosity. Digging deep into the why of things, especially if you ran into something particularly surprising, can help you build knowledge incredibly rapidly. Investigating how things work beyond what’s required to fix a problem (sometimes even going to a package’s source code!) can provide you with building-block knowledge that allows you to learn other things more quickly. And since we’re constantly testing and improving ActBlue’s tools, this skill takes on even more importance. The huge breadth of our product means we’re always learning new libraries and patterns to help us refine the variety of tools we offer.
Empathy
Whether it’s empathy for your users or your colleagues, empathy is a critical skill for building great products. It will lead you to the highest impact opportunities at your job, be that identifying frustrating interactions for your users, developing processes to help with cross-team collaboration, or supporting a colleague who is struggling.
Here’s one recent example from our work on CE: We know getting started quickly with fundraising is of critical importance, so we improved the signup flow for ActBlue to make it easier to use and to allow our dedicated political operations team to get accounts set up even more rapidly than before.
Future-minded-ness
Anticipating how code will evolve and building in such a way that allows for that evolution is as much art as science. I’ve made mistakes burdening a code base with future-proofing that never got used. I’ve also jumped into projects too fast and shipped brittle solutions that couldn’t be changed without a bunch of work. Everyone makes mistakes! Someday I’ll write a blog post about this…
When to ask for help
While there’s certainly value in powering through a problem, it can be a slow way to learn if it doesn’t build on existing knowledge. If you’re finding yourself lost or frustrated, it can be fruitful to get some guidance from someone more experienced in the domain. This might be a colleague, a (former) classmate, a mentor, or someone else. They can often steer you toward the information you need and away from other information that, while useful, may be a distraction from the problem at hand. Here at ATS, we have over 65 team members who all bring a variety of experience and insight! In case it’s helpful, here’s a template I use when asking for help.
CE is just one team on ATS — we have teams of engineers who improve the experience of donors, help build our payment universe, and maintain the software that powers our platform. If you value the skills above and are passionate about helping build people-powered change, take a look at our jobs page! We’re always hiring engineers to help scale and maintain our platform. And if you want to keep up with future feature launches, check out the “What’s New on ActBlue” category on our blog!