Summary
Join GiveDirectly as a Senior Software Engineer and play a central role in scaling our impact by building reliable systems for our core operations. You will design and build scalable systems for donor platforms, payment delivery, and crisis response tools. This hands-on role involves owning end-to-end development, improving developer workflows, and collaborating with cross-functional teams. You will also debug production issues, advocate for sustainable engineering practices, and help shape our tech roadmap. The role is fully remote with occasional travel and requires strong alignment with GiveDirectly's values.
Requirements
- Exceptional alignment with GiveDirectly Values and active demonstration of our core competencies: emotional intelligence, problem solving, project management, follow-through, and fostering inclusivity
- We welcome and strongly encourage applications from candidates who have personal or professional experience in the low-income and/or historically marginalized communities that we serve
- Language Requirement: English
- 4+ years of industry experience creating production-caliber software and systems
- Experience with backend architecture: databases, cloud services, APIs
- Experience building infrastructure to deploy software
- Experience with strongly-typed, object-oriented programming such as Java, C#, Go, etc. and scripting languages such as Python, Ruby, etc
- High degree of ownership and autonomy - you proactively advocate for ways to improve systems and constantly leave our codebase in a better state than you found it
- Strong analytical skills and communication - able to break down complex problems, describe technical trade-offs, and collaborate with cross-functional partners (e.g. technical program managers, product managers)
Responsibilities
- Design and build scalable, reliable systems that power our core operations—whether that’s donor platforms, systems that deliver payments directly to recipients, or crisis response tools reaching hundreds of thousands of people globally
- Own end-to-end development of new features and services, from architecture through deployment and monitoring
- Improve our developer workflows by strengthening CI/CD pipelines, reducing manual steps, and increasing test coverage
- Collaborate with cross-functional teams (product, ops, data) to understand real-world needs and ship tools that directly support program delivery in the field
- Debug and resolve production issues across our stack, with a focus on root cause analysis and long-term fixes
- Advocate for sustainable engineering practices, including testing, documentation, and monitoring
- Help shape our tech roadmap with an eye toward scale, maintainability, and recipient experience
Preferred Qualifications
- Experience using Python and AWS in a production environment
- Experience with payments/financial software and/or experience with microservice/serverless architecture
Benefits
- A positive and supportive team with opportunities for advancement
- A demonstrated commitment to helping all staff develop and grow
- A competitive salary, including bonus
- A robust health benefits plan (exact details will vary by country)
- Unlimited PTO (that we encourage staff to take!)
- Desk allowance and flexible work location
Disclaimer: Please check that the job is real before you apply. Applying might take you to another website that we don't own. Please be aware that any actions taken during the application process are solely your responsibility, and we bear no responsibility for any outcomes.