Job Post: Full Stack Software Developer (Mid-Level)

At Software for Good, we bring people and technology together to solve complex world problems like climate change, housing, health care, human rights, renewable energy, and education. And we’re hiring!

We’re looking for new skills and perspectives to add to our team.

Software for Good is a fully remote digital agency founded in Minneapolis, and we develop web and mobile applications for clients including social enterprises, nonprofits, startups, and educational and government entities. We are searching for a full stack software engineer who is eager to build inclusive, ethical technology that has a positive social impact. The ideal candidate is a curious collaborator who is willing to learn and experiment with new technology and is thoughtful about the impact of technology and the biases of people who create it.

Software for Good is an equal opportunity employer, and we welcome people from all communities and identities. We strive to include people from underrepresented backgrounds, and would love to know what specific talents and perspectives you could bring to our team and work.

We’re looking for a developer with full stack experience who is motivated to collaborate on mission-driven software.

Our ideal team member is skilled in communicating with clients and colleagues, and is driven to build excellent software.

Candidates should have experience in one or more of the following stacks: Ruby on Rails, Python/Flask, Node.js/Express, or React.

Ideally, you’d also have experience with — or opinions about — some of the other technologies and tools we’re using, though we’re always open to new ideas.

• JavaScript/front-end testing libraries: Testing Library, Enzyme, Jest, or similar

• Development strategies: Behavior-driven development, test-driven development, Agile workflows, version control

• Design patterns, architectural and deployment patterns

• Continuous Integration and Continuous Delivery

• Databases: MySQL, Postgres, Mongo, Redis

• Events and messaging: Rabbit, Kafka, Resque, Sidekiq

• Automation/DevOps: Ansible, Capistrano

• Server infrastructure: AWS, Azure, Heroku, Docker, Linux

• Headless CMSes: Strapi, Netlify, or similar


Wondering if Software for Good is a good fit for you? We think we have a lot to offer:

• The chance to work on engaging projects you can feel good about

• A fully remote team, and open to working with employees beyond our home base of Minneapolis

• Flexible schedule with standard core team hours and the ability to work when you’re most productive

• 40-hour work week (for real)

• Unlimited PTO, which you will be encouraged to take

• 401k and match

• Healthcare and dental coverage for you and your family

• Family-friendly policies including fully paid parental leave

• Education and training budget

• Home office setup budget (including providing devices to meet people’s needs and preferences)

• Potential for bonuses based on company performance

• A bunch of other great work/life perks that don’t fit neatly into a bulleted list


Software for Good’s company values are:

• Open & honest communication

• Holding ourselves & others accountable for high-integrity work

• High employee quality of life

• Collaboration

• Social justice & inclusion


Salary range: starting at $95,000

Note: For payment and tax reasons, employees must be based in and authorized to work in the United States.

We are also looking for contract support with full-stack development, and are open to working with contractors long-term or as contract-to-hire.


Sound like a good fit? We’d love to hear from you! Send us an email us at with:

• Your resume

• Some background on yourself and your interest in the position

• The earliest you could start working