Job Description

At NationBuilder we create software for leaders. We work with advocacy groups, nonprofit organizations, political candidates and parties, community organizers, and anyone else trying to make something happen in the world. Our customers come in all shapes and sizes, from small town organizers trying to win their school board election, to the largest political parties, candidates, and NGOs around the world. To learn more about NationBuilder, read about our mission, beliefs and values.

As a Software Engineer you will build and maintain the software powering NationBuilder. You contribute to the effectiveness of the team through constant collaboration, efficient use of available resources, and writing software that is easy to reason about and modify in the future. You think critically to find the best solutions, technologies, and processes. You are capable of implementing well defined features and helping to better understand complex features that are less well defined. You are able to take ownership of smaller projects, break them into milestones and execute them to completion while identifying and resolving problems that arise.  

We believe the best products are built by teams rich in diversity and aligned in mission and values. That means creating an authentic culture where diversity thrives everyday. It means building a team where different perspectives are valued through real listening, and assumptions are challenged through healthy and necessary conflict. It means building a team diverse across race and gender.  It means constantly striving to build the best and to be the best. 

Our engineering team dedicates itself to continuous learning and improvement. We optimize for rapid, agile development with engineers deploying to production many times a day. To find and build the best solutions, we expect our teams to iterate. From the introduction of minimum viable products to the release of more mature features, Engineers must actively seek feedback from customers and internal stakeholders, gather data, and continually improve both the product and development process.

You:

  • are always interested in learning new things.
  • get excited when you have the chance to pair with other engineers.
  • practice test-driven development and judicious refactoring.
  • enjoy being responsive to customer feedback.
  • are a pragmatic problem solver, knowing how to find the middle ground between “perfect, but takes forever to code” and “fixes it now, but nobody will ever be able to understand what I did.”
  • clearly communicate about technical solutions with both engineering and non-engineering stakeholders.
  • work well in small teams with a clear mission.
  • have the insight to know what’s important and the dedication to get it done.

Skills required:

Parts of our technology stack are written in Ruby on Rails and parts are in C#. The ideal candidate is enthusiastic about working with one (or both) and brings professional Rails or C# experience. We value the willingness to learn our technologies and our environment. An open and disciplined approach to your work is as important to us as years of experience with any of the technologies in our stack. 

We use Ruby, Rails, C#, PostgreSQL, MongoDB, Redis, HTML/CSS/SCSS, and JavaScript (React/Redux/Bootstrap).

NationBuilder is an equal opportunity employer and we value inclusion. We are committed to finding talent that is not determined on the basis of race, religion, color, national origin, gender, sexual orientation, age, marital status, veteran status, or disability status. If you are someone who is in search of a place to thrive and grow, we really want to hear from you!

To apply, tell us why you’re a good fit for the job! Include contact details, resume, that sort of thing; sites you’ve worked on recently; Github account (or other online code) if you have it.