Senior Data Engineer
Thorn is a non-profit focused on building technology to defend children from sexual abuse. Working at Thorn gives you the opportunity to apply your skills, expertise and passions to directly impact the lives of vulnerable and abused children. Our staff solves dynamic, quickly evolving problems with our network of partners from tech companies, NGOs, and law enforcement agencies. If you are able to bring clarity to complexity and lightness to heavy problems, you could be a great fit for our team.
Earlier this year, we took the stage at TED and shared ourof eliminating child sexual abuse material from the internet. A key aspect of our work is partnering with the National Center for Missing & Exploited Children and building technology to optimize the broader ecosystem combating online child sexual abuse.
What You'll Do
- Collaborate with other engineers on your team to build a data pipeline and client application from end-to-end.
- Prototype, implement, test, deploy, and maintain stable data engineering solutions.
- Work closely with the product manager and engineers to define product requirements.
- Present possible technical solutions to various stakeholders, clearly explaining your decisions and how they address real user needs, incorporating feedback in subsequent iterations.
What We're Looking For
- You have a commitment to putting the children we serve at the center of everything you do.
- You have proficient software development knowledge, with experience building, growing, maintaining a variety of products, and a love for creating elegant applications using modern technologies.
- You’re experienced with devops (Docker, AWS, microservices) and can launch and maintain new services.
- You are experienced with distributed data storage systems/formats such as MemSQL, Snowflake, Redshift, Druid, Cassandra, Parquet, etc.
- You have worked with real-time systems using various open source technologies like Spark, MapReduce, NoSQL, Hive, etc.
- You have knowledge in data modeling, data access, and data storage techniques for big data platforms.
- You have an ability and interest in learning new technologies quickly.
- You can work with shifting requirements and collaborate with internal and external stakeholders.
- You have experience prototyping, implementing, testing, and deploying code to production.
- You have a passion for product engineering and an aptitude to work in a collaborative environment, can demonstrate empathy and strong advocacy for our users, while balancing the vision and constraints of engineering.
- You communicate clearly, efficiently, and thoughtfully. We’re a highly-distributed team, so written communication is crucial, from Slack to pull requests to code reviews.
Technologies We Use
You should have experience with at least a few of these, and a desire and ability to learn the rest.
- Elasticsearch / PostgreSQL
- AWS / Terraform
- Docker / Kubernetes
- Node / Typescript