Staff Engineer
Software Engineering
United States · Remote
USD 150k-207k / year
At Thorn, our cause is our code. We are a nonprofit whose mission of defending children from sexual exploitation and abuse is deeply embedded within our core—a shared code that drives us to do challenging work with resilience and determination.
Here, you’ll work and grow among the best hearts and the best minds in tech, data, and business alongside our network of independent partners, NGOs, and law enforcement agencies. Together, we’re focused on building technology that protects children’s futures. We are looking for dynamic problem solvers with the desire to help address some of today’s toughest issues. You'll collaborate with a diverse group of peers in a remote environment centered on wellness, care, and compassion.
In 2019, we took the stage at TED and shared our audacious goal of eliminating child sexual abuse material from the internet. Come join us to help make this goal a reality and build a world where every child can be safe, curious, and happy.
About the Role
Our Safer team develops and operates backend services, APIs, and high-volume data-processing pipelines that help technology companies detect and respond to child sexual abuse material on their platforms. As a Staff Engineer, you will lead high-impact initiatives within the Safer product area, shaping how our systems are designed, built, scaled, and maintained.
In this role, you will drive the design and delivery of complex, multi-system projects, anticipate technical risks, and make sound architectural and implementation decisions that improve reliability, performance, and long-term sustainability in service of Thorn’s mission. You partner closely with Product and Engineering to translate broad goals into actionable technical plans and ensure successful delivery. Through technical leadership, proactive collaboration, and strong ownership, you elevate the quality and maintainability of our products and strengthen how your team and the broader Build organization builds and operates our systems.
What You’ll Do
- Collaborate with engineers across multiple areas of ownership to build and maintain scalable systems and applications from end-to-end.
- Take on large, complex initiatives independently. You identify unknowns, gather input from teammates, break down ambiguous problems, and communicate progress clearly to stakeholders.
- Lead technical discussions across teams, partnering closely with Build and Product to define requirements and arrive together at practical, high-quality approaches.
- Develop solutions to problems faced by our users, clearly articulating tradeoffs and decisions to stakeholders across technical and non-technical audiences, and incorporating feedback into iterative improvements.
- Take ownership of architectural direction, making sound implementation decisions that strengthen system reliability, scalability, and sustainability over the long term.
- Play a critical role in day-to-day coding, code reviews, and troubleshooting production issues, including participating in on-call rotations to support system reliability and incident response.
- Anticipate technical risks and proactively address them, including identifying and prioritizing technical debt before it becomes a larger constraint.
- Strengthen teams by sharing expertise, offering thoughtful feedback, mentoring teammates within your domain, and stepping in to help when needed, even outside your primary area of expertise.
- Drive technical innovation by researching and deliberately incorporating new tools, technologies, or patterns where they meaningfully improve our products and workflows.
What We’re Looking For
Required qualifications and capabilities:
- You have a commitment to putting the children we serve at the center of everything you do.
- You have substantial experience building and operating backend services in production, including experience with Python.
- You have hands-on experience deploying or supporting production applications in Kubernetes. You can work with common Kubernetes resources and troubleshoot application-level issues; deep cluster or platform expertise is not required.
- You have experience building and operating services in a production cloud environment.
- You are comfortable contributing across unfamiliar parts of a codebase or technical domain, learning quickly and adapting as the team’s priorities change. You consider the impact of your decisions within your team and Thorn as a whole.
- You demonstrate strong architectural judgment and consider the broader system impact of your decisions.
- You are nimble and comfortable operating in ambiguous problem spaces and bringing clarity to complex technical challenges as requirements evolve.
- You act with autonomy and demonstrate sound judgment in knowing when to seek input from others.
- You make pragmatic technical tradeoffs, deliver useful increments quickly, and balance immediate needs with long-term maintainability and system health.
- You influence technical decisions through clear articulation of tradeoffs and thoughtful collaboration.
- You elevate the engineers around you through mentorship, feedback, and shared technical standards, and remain open to learning from your teammates.
- You can demonstrate empathy and advocate for our users, while balancing product vision and engineering constraints.
- You communicate clearly, efficiently, and thoughtfully. We’re a highly-distributed team, and effective written communication is crucial for everything from Slack to code reviews.
Experience that would be especially helpful:
- Building, scaling, and monitoring high-volume systems or data-processing pipelines.
- Building software, platforms, APIs, or tooling for other developers.
- Experience with AWS, Terraform, PostgreSQL, or Elasticsearch.
Technologies We Use
Beyond the required Python and Kubernetes experience described above, you do not need experience with every technology listed below.
- Python
- Typescript / Express
- AWS / Terraform
- Docker / Kubernetes
- PostgreSQL / Elasticsearch
Compensation and Benefits
A reasonable estimate of the compensation range for this role is $150,000-$207,000/year. This range takes into account the wide range of factors that are considered in making compensation decisions, including but not limited to location; skill sets; experience and training; licensure, and certifications.
Our remote-first work model is structured around working from home most of the time. But, there will be times that employees are expected to travel. For example, Thorn may host company-wide gatherings, and smaller teams may hold in-person meetings and team-building events, or require attendance at specific conferences.
At Thorn, we know that great people make a great organization. We value our people and offer employees a broad range of benefits. Learn more about what working at Thorn can mean for you.
Thorn is strengthened by the wide range of experiences and perspectives on our team. We value the diversity of our professional backgrounds, subject matter expertise, cultures, and perspectives because they help us solve complex problems and serve our mission more effectively. We hire based on merit, qualifications, and organizational need, and we are committed to fostering an inclusive environment where all employees can thrive.
All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, disability, or status as a protected veteran.
Thorn is committed to the full inclusion of all qualified individuals. We provide reasonable accommodations to ensure candidates and employees with disabilities can fully participate in the application process, perform essential job functions, and access all the benefits and privileges of employment. If you need an accommodation, please contact us at hiring@wearethorn.org