Senior Software Engineer, Full-Stack (Backend Focus)
Description
About Oath
Oath is the strategic giving platform designed to help donors maximize the impact of their contributions by guiding them to the races and causes where their dollars can make the greatest impact. Oath has directed over $150M while protecting donors' data and avoiding the spam and spin of other giving platforms. As the one stop shop for a generation of donors who want to make a difference, Oath is building the future of philanthropy.
The Opportunity
We are seeking driven and experienced fullstack software engineers to join our team - bonus points for experience with SaaS dashboards, authentication (e.g., Auth0), and managing varying levels of user permissions.
This role will involve leading the development of key fundraising tools and admin capabilities to support our partner organizations as they fundraise for critical candidates and organizations.
As a mission-driven company dedicated to making progressive change, we are committed to expanding our impact through your expertise in building and shipping incredible applications. We are also committed to developing a strong team culture anchored in transparency, empowerment, and a bias for optimistic action.
Key Responsibilities
- Own major areas end to end: Take partner fundraising tools, admin dashboards, and the services behind them from technical design through launch and iteration.
- Design and build our Python APIs: Build secure, well-tested FastAPI services, data models, and integrations that are easy for others to build on.
- Own data ingestion: Run the pipelines that pull election and campaign data from vendors, APIs, flat files, and scraping jobs, and keep the data accurate.
- Build reliable payment and vendor integrations: Work across Stripe, Chariot, and other partners, and lead or support integration migrations as the platform changes.
- Evolve our data layer for scale and reliability: Help Postgres, Redis, and our background jobs hold up ahead of high-traffic election moments.
- Keep production healthy: Monitor what you ship, take part in on-call, and lead incident response and blameless follow-ups for your areas.
- Partner with product and design: Shape what we build, not just how. Surface tradeoffs early and suggest simpler ways to the same outcome.
- Raise the team's quality bar: Do thoughtful code review, mentor other engineers, and improve our conventions, including for AI-assisted development.
- Experience: 7+ years of professional software engineering, much of it on full-stack web applications, with depth on the back end.
- Python APIs: Strong Python, with production experience building and running APIs. FastAPI is a plus; Django or Flask experience carries over.
- PostgreSQL: Solid data modeling, query tuning, and migrations. Experience scaling Postgres in production (connection pooling, replicas, high availability) is a strong plus.
- Background jobs: Experience with job queues and async processing, such as Celery and Redis, including retries, idempotency, and debugging failed jobs.
- Payments and integrations: Production experience with payment APIs, ideally Stripe. Comfortable building reliable third-party integrations: webhooks, reconciliation, and graceful handling of vendor outages.
- Auth and permissions: Hands-on experience with authentication and role-based access control. Auth0 or a similar identity provider is a plus.
- Front end: Working proficiency in TypeScript and React, enough to ship full-stack features on your own. Next.js and Vercel are a plus.
- Observability: Experience monitoring and debugging production systems with tools like Datadog. Comfortable taking part in on-call.
- Ownership: A track record of owning features end to end on a small team and shipping iteratively.
- AI-assisted development: Uses AI coding tools effectively while fully understanding and owning what ships.
- Communication: Communicates clearly with non-engineers, and gives and asks for direct feedback.
Nice to Have
- Integrations with charitable giving or political ecosystem technologies such as Chariot, NGP Van
- Building features on LLM APIs, such as the Anthropic Claude API
- Transactional email at scale, such as SendGrid
- Redux Toolkit, including migrating off older Redux patterns
- Rate limiting and abuse prevention
- Experience in political tech, fundraising, or fintech, especially with traffic spikes around deadlines
- Base Salary: $120-150K
- Equity package
- Health Insurance: Comprehensive medical, dental, and vision coverage
- Retirement: 401(k) matching
- Time Off: Flexible PTO
