Candidates can work from our New York or San Francisco offices when they reopen, or as a permanently remote employee in the following states: NY, NJ, FL, GA, IN, WI, MI, TX, CA, or OR. (Many of our employees are still working remotely due to COVID-19 safety protocols.)
DonorsChoose is looking for an energetic, collaborative, and self-motivated Senior DevOps Engineer to improve our unique philanthropic marketplace. You will play a central role in an agile nonprofit organization that is serious about technology.
DonorsChoose engages the public in public schools by giving people a simple, accountable, and personal way to address educational inequity. In this clip, board member Stephen Colbert tells our story.
To date, teachers at 83% of all the public schools in America have posted classroom project requests on our site. Projects range from paper and markers for a poetry writing unit to violins for a school recital. More than 4 million “citizen philanthropists” have supported such projects, channeling books, field trips, technology, and other resources to more than 40 million students nationwide. In all, we’ve generated $1 billion for learning experiences designed by our country’s most dedicated public school teachers.
GOOD Magazine highlighted us as one of 30 Places We Want to Work, while Fast Company named DonorsChoose one of the 50 Most Innovative Companies in the World—the first time a charity has made this list. Through its dedicated team and culture, DonorsChoose earned recognition as the #1 "Best Nonprofit to Work For" by the Nonprofit Times.
About the Team
The Product, Engineering, and Data team at DonorsChoose does important mission-driven work, helping to address educational inequity in US public schools, but we operate more like a fast-paced startup than a traditional nonprofit. The Senior DevOps Engineer will join our team (12 Engineering, 6 Product, 4 Data), which builds features for our user base of donors, public school teachers, and our staff, directly impacting the educational outcomes for students across the US.
About the Role
Our entire engineering team is responsible for operations, uptime, and monitoring. We aspire, through this position, to make “DevOps” an explicit part of our engineering culture, and we’d love for you to help us do that. You’ll help build and scale the infrastructure on which our platform runs, as well as the development tools our team uses.
In this position at DonorsChoose, you will…
- Design, maintain and improve automation code in Python, Bash, and Yaml
- Build and maintain AWS and Kubernetes infrastructure with Cloudformation and other Infrastructure as Code tools—and enhance our ecosystem in this regard (Help us get to something like full GitOps!)
- Collaborate with our senior engineers to maintain the security of our systems and processes.
- Write code and tests, build prototypes, tackle problems with no clear solution, and collaborate with other engineers to make using our stack a better experience.
- Diagnose and debug production incidents and then improve systems to prevent them from recurring
- Build CI/CD orchestration (for both the web ecosystem and infrastructure)
- Set up monitoring and alerts for infrastructure (CPU, memory spikes) and performance (page load speed), and help engineers with feature-level monitoring
- Communicate the roadmap, scope, and risks of your projects
- Work with, not apart from, our software development team. Help educate engineers through code reviews, talks, and documentation
- Able to build consensus on complex issues
- Able to work with an existing codebase and improve its architecture through small, planned interventions
- Thorough, systematic, and communicative in the way you plan and deploy changes, with minimal disruption to our system, team, and colleagues
- Excited to create a modern, scalable, secure infrastructure and to bring automation to work that’s routine or risky
- Familiarity with tools such as Terraform, Helm, Cloudformation, Ansible, or Puppet
- Experience with Docker and Kubernetes
- Experience managing and securing services on a cloud platform (AWS, GCP, Azure)
- Experience writing reliable code in at least one language (e.g. Python, Ruby, Go, Java)
- Experience doing the work associated with SREs, Platform Engineers, or DevOps Engineers
- Experience maintaining, securing, and building these systems and tools in a production environment. Ideally, you are able to use your expertise to teach other engineers on our team.
Compensation and Benefits
Compensation for this role is competitive with equivalent technical roles at other nonprofits of our size. In addition, we offer full-time staff 25 paid vacation days per year and 11 paid holidays, a rich employer-paid individual and family health plan, annual professional development stipend, and casual and flexible work environment. To learn more about what it is like to work for DonorsChoose, visit our careers page
Submit your application online. In your application, tell us a little bit about your favorite teacher or subject in school! Applications will be accepted on a rolling basis until this position is filled.
A Final Note
The DonorsChoose team works toward a nation where students in every community have the resources needed for an excellent education. To do this, we hire and support a diverse team of the best and the brightest talent available.
We are an organization increasingly representative of the varied races and ethnicities, genders and sexual orientations, religious and political beliefs, and abilities that comprise our nation. DonorsChoose focuses on attracting, retaining, and advancing diverse talent because it makes us more effective, high-performing, creative, and resilient.
If you are passionate about our mission, highly skilled in your field, and looking for a place where you can bring all of yourself to work, we want you.