Assemble Software Engineer
Politics Rewired is hiring a back-end engineer to help us build the next generation of grassroots organizing tools for the left. The ideal candidate will have experience with PostgreSQL and TypeScript as well as experience working on electoral campaigns or social movements.
Politics Rewired is a small worker-owned cooperative designing human and technological solutions for organizers. We work with organizers to streamline workflows, freeing them up to focus on what they do best: building relationships. We work with campaigns, unions, and movement organizations.
The Role and Team
As a back-end developer, you’ll be part of a small dev team of software engineers and will work closely with our product team and our clients. You will be building the back-end of our Assemble product suite: a powerful API for working with databases and a collection of front-end applications built on top.
This position is one for an individual contributor and does not require managing other developers.
We are 100% remote during COVID-19.
Full time employees — base rate of $5k/month with health, vision, and dental insurance.
Part time employees and contractors — $40/hour.
All employees and contractors are eligible for quarterly profit sharing.
Assemble is powerful way of interacting with organizer data. It exposes the power of Postgres to organizers through an intuitive web interface similar to Airtable.
What sets Assemble apart is its robust access control and easily extensible API. Combining row-level security with database views allows organizers to share a subset of data with specific teams, sharing access to data without copying back and forth between Google sheets. Imagine if a state-wide campaign could give full access to county data directors based on a voter’s address and never need to think about how to handle address changes again. Or if the P2P texting team could send follow up texts to voters canvassed that day in realtime without re-cutting any lists or shipping data back and forth.
Extending the API is as easy as writing a database migration. An add-on application can written in minutes with a new table or two, some conditional triggers, and a few functions to handle more complex logic.
Tech you’ll encounter at Rewired
The Assemble API core is written in PL/pgSQL right in Postgres. This is exposed as a GraphQL API by the Postgraphile NodeJS library. Additional server-side scripting is done in TypeScript.
As an engineer at Politics Rewired, you’ll encounter plenty of interesting technologies including but not limited to React, GraphQL, Postgres, NodeJS, Express, RabbitMQ, Kubernetes, Python, and more. Your primary responsibility will be web application development but, as a small team, you must be comfortable occasionally diving into something new.
For this position to be a good fit, you MUST:
- Have significant experience with SQL databases
- Have experience working with and designing GraphQL APIs
- Have strong git skills, e.g. understanding the value of branching and knowing when and where to rebase
- Have significant experience with the command line
- Have an interest in Rewired/grassroots organizing/building the progressive movement
- Have empathy (especially for teammates, organizers and volunteers)
For this position to be a good fit, you SHOULD:
- Have experience with TypeScript or other statically typed languages
- Have experience with (or at least a general understanding of) Docker, Kubernetes, and microservice architectures
- Have experience with agile development
- Have experience with continuous integration (Circle CI, Jenkins, Travis CI, etc.)
- Be located in New York (preferred)
How to Apply
To apply for this position, send a resume and short cover letter to email@example.com. This should include:
- A brief statement about yourself,
- Links to previous work (Github or other things you have built)
We highly encourage applications from all backgrounds, including, but not limited to: people of color, people from working class backgrounds, women, and LGBTQ people. We believe that the most impactful work—and the best work environments—include and foster a range of diverse perspectives.