Developer for Journalism/Transparency Non-Profit - remote

MuckRock Foundation
Posted 3 years ago
The MuckRock Foundation is seeking a lead developer for DocumentCloud, our open source document processing, hosting, and analysis platform that’s now home to over 125 million pages of primary source documents. We’re looking for a software developer interested in building open source, public-interest technology with experience with Python and Svelte, React, Vue, or other major JavaScript frontend frameworks. (DocumentCloud is built with Django and Svelte, hosted on Heroku and AWS). 

The role offers an opportunity to power more informed communities around the world, with your code reaching 40 to 80 million people each month and powering both national investigative reporting as well as helping cover the nuts and bolts of local town councils. There will also be opportunities to experiment with new approaches to journalism, ranging from tapping the power of artificial intelligence, crowdsourcing document dumps, and features that will power the next generation of journalism and public accountability.

The Role

As DocumentCloud’s lead developer, you’ll be charged with shepherding one of journalism’s most widely-used reporting platforms into the era of artificial intelligence, and reinvented news gathering techniques. You will also help us meet a broadening mandate to serve a wide variety of organizations informing the public, from libraries and archives to volunteer civic hackers and educational institutions.

You will work closely with MuckRock’s chief technology officer and the rest of our team to plan and execute a road map for the platform’s continued development while helping ensure it continues to work smoothly and consistently for our existing users. You’ll get to work in every part of the stack, from AWS Lambda functions that allow us to scale up to process tens of thousands of pages in a minute to figuring out how to make a complicated set of overlapping permissions intuitive to reporters on a deadline.

We’re also keenly interested in taking the solid platform we’ve built — and the 125 million pages it hosts — and aiming it at some of the trickiest problems facing democracy and informing the public out there. Can we help keep an eye on legislatures across the world when there’s fewer state house reporters? Aid in examining local budgets, ordinances, and public notices in tens of thousands of communities at once? Connect the dots in massive email dumps? And do this all in a way that considers and mitigates potential harms to the public?

It’s a big challenge, but one we’re excited to tackle with you. Your day-to-day will be focused on building and maintaining the DocumentCloud platform itself — primarily feature scoping, development, and deployment, along with troubleshooting bugs and edge cases when our users stretch the limits of what our platforms can do. There will also be opportunities to collaborate with partners in the journalism and civic technology space on projects, including potentially editorial projects that showcase and help us think through where we want to focus our efforts.

You may also occasionally contribute development to our other properties, depending on bandwidth and interest, particularly as we work to integrate our tool suite. You’ll also be an active participant in helping shape our editorial culture, with weekly all hands meetings that let departments share what they’re working on, open board meetings where staff can understand the organization strategy and present their work, and opportunities to be an ambassador for a better way of doing journalism through conferences, meetups, and internal collaborations.

Much of DocumentCloud’s financial support is grant-dependent, so you’ll also be involved with discussing potential projects that are good fits for funding while also helping us broaden our financial base through thinking through premium paid features to help support our ongoing development and financial independence.

A “typical” week could potentially involve running through our plans at a weekly project status standup, working on long-term development efforts, sitting in on an onboarding with a new user to learn how they’re hoping to use the service and what questions they have, presenting some of your design mockups and incorporating feedback, quashing an old bug, and then showing off your week’s work to the rest of the team.

Who we’re looking for

We’re looking for someone who is comfortable diving into the worlds of both Django and Svelte, even if you don’t have specific prior experience in either (Python and JavaScript experience, however, are prerequisites). You need to be able and willing to roll up your sleeves to dig into bugs at the intersection of PDF processing and serverless architectures while also being excited about working on what our tools can do once those low-level problems are solved.

Experience in open source, journalism or public-interest technology is a plus, but prior lead developers have come from a range of backgrounds so if this is a new field or a bit of a jump for you, please still apply! We’re also open to a broad range of ways to ultimately define this role’s core work, so if you’re weaker in some areas and are interested in building them up, this could still be a great opportunity (we have done a lot of learning on the job ourselves over the past decade).

Women and members of under-represented groups are strongly encouraged to apply, as well as those with relevant experience outside of journalism such as community organizing, non-profit and advocacy organizations, and other roles that require a high degree of clear communication and organizational skills.

You’re excited to be part of a close team

MuckRock lives at the intersections of journalism, open government, transparency, research, and technology, and while you’re focused on building software you recognize that your work touches on all aspects of our organization. You’re eager to learn from different roles and perspectives, and want to help others learn as well.

You can clearly communicate a plan, collegially discuss strategy, and ultimately work well in a team that’s dependent on coordination and collaboration to achieve our lofty goals. 

You want to build tools that strengthen democracy

There’s a lot of career paths for software developers, but few where that work can so directly help change policy, assist the public, and build up our democracy than the work you’ll be tackling. We will be relying not just on your software development and project management skills, but also your judgment to make sure that the work we’re doing is responsible and in the interest of the communities we serve.

You also understand the challenges and opportunities in building our tools so that they’re more accessible, inclusive, and intuitive, able to be fitted into complex technical workflows while also learned on the job during a breaking news event by a reporter on a deadline. You also want to make sure that advanced analytical capabilities, from network analysis to machine learning classification, are widely available and in the hands of reporters, researchers, and community activists.

You want to take ownership of your work

We have a small but mighty team to back you, but you’ll be the lead on DocumentCloud. Every day, millions of people read documents hosted there around the world, and journalists trust it to work consistently when breaking news happens (Mueller Day still haunts us). This is a major responsibility, but one we hope excites you — the tools you build, the code you write, and the impact you have will all be very public, and we’re looking for someone excited to bring their sensibilities, vision, and ideas to continue helping DocumentCloud evolve.

This also means being involved in both strategic planning and developing the road map, being able to pitch and advocate for the ideas and direction you think will work best. It also means getting a chance to discuss your work, whether in developer notes to the public, internal and external presentations, and showcasing new ways of doing journalism at conferences and meetups.

Responsibilities
  • In conjunction with CTO, plan and implement technical strategy and development roadmap that help grow the DocumentCloud usage and improve platform’s impact.
  • Understand and manage the DocumentCloud technical stack, including code base and infrastructure, and guide ongoing deployment decisions and execution to provide reliability while managing costs.
  • Accurately estimate task and project scopes to ensure on-time completion of internal and external commitments and a regular release cycle. Help properly scope projects, open issues, and tasks while helping push back when further clarity is required.
  • Ensure that DocumentCloud’s services remain secure from unauthorized access, including through technical implementations as well as good security hygiene.
  • Provide oversight to technical aspects of external partnerships, including API usage, outside development contributions (including assigned editorial and grant collaborations, academic partnerships, and other external contributors)
  • Document and evangelize our work publicly, including through occasional release notes updates, editorial projects that build on our portfolio’s unique capabilities, and help manage external open source contributions and contribution policies.
Compensation

The salary for this role starts at $90,000 (not dependent upon location) and includes the following benefits:

  • Three weeks of paid vacation annually, plus ten holidays (US postal holidays), and week between Christmas and New Year’s Day off.
  • Health insurance with full premium for employees paid and 75% of premium for dependents.
  • Professional development, including covering costs for conference and event attendance.
  • All board meetings are open to all staff and include meaningful engagement.
  • Company dental, vision, life, 401k, and health flexible spending account plans.
  • Budget for a new laptop that you pick out and other home office purchases.
  • Distributed team with flexible scheduling.
To apply, please fill out the application form located here. You may also direct any questions to jobs@MuckRock.com (preferred) or email a resume, optional cover letter, and links to any public works or a portfolio to jobs@MuckRock.com.