Mod note: new “tag” added for “Engineering” jobs. Past engineering roles can generally be found under the “tech” tag. Search by all tags here
The ACLU’s Product Development team is looking for a full-time junior to mid-level software engineer to join our Product Development team and contribute to public facing products in support of the organization’s mission. We’re a multidisciplinary team working with stakeholder groups across the organization and within the broader Product & Technology department. In close collaboration with stakeholders, the team brainstorms, builds, and refines web and mobile software products that both educate constituents about their rights, and provide direct opportunities for meaningful political action. The team is introducing new interactive tools and experiences, as well as improving the user experience of existing systems.
The Software Engineer reports to the Head of Product Development, and will play an important role on our small team.
ROLES AND RESPONSIBILITIES
- Contribute to server-side development on multiple projects; evaluate and select tools and frameworks for web and mobile applications
- Help refine the workflow for designing, writing, reviewing, testing, and deploying systems that promotes intra- and inter-team communication and enables reusability, flexibility, and frequent iteration
- Work with other engineers and product designers to create and maintain a toolbox of code libraries, microservices, page templates, and interaction patterns that supports long-running apps, but can also be quickly remixed in response to current events
- Collaborate with engineers across the Product & Technology department to integrate with existing content management and data systems
- Work with stakeholders to tease out goals and product requirements through a user-centric mindset, propose alternate and multistep solutions, and balance development speed and scope
- Provide a knowledgeable viewpoint on development discussions and decisions, while remaining open-minded to new technologies and approaches
- Play a lead role on some projects and a supporting one on others; contribute to multiple areas where needed, including product and project management
- Educate members inside and outside of the team to improve understanding of current industry standard development practices and technologies