Senior Software Engineer
Date Posted
12/19/24
Job Role
Organization Type
Technology Provider, Vendor or Service Provider
Location
Remote
Salary Range
$121,000+
Position Summary
The Democratic Data Exchange (DDx) is looking for a Senior Engineer to support the development of our data exchange platform that expands the Democratic and progressive data ecosystem by facilitating the real time, blind exchange of proprietary data with organizations, parties, committees, and campaigns.
Reporting to the Engineering Manager for the Exchange Engineering team, the Senior Engineer will directly contribute to the culture and success of DDx by collaborating on the architecture and design of DDx software, writing, testing, refactoring, and delivering quality code, serving as tech lead for Exchange team software development projects from inception to delivery, and contributing to the support and maintenance of Exchange tech.
This is a hands-on role that requires direct technical contributions and occasional on-call availability (which will be scheduled in advance).
Please know that job candidates do not always meet 100% of the preferred qualifications. If much of this job description resonates with you, we encourage you to apply.
At DDx, we believe:
- Empathy is the most important part of being a team member
- Inclusivity builds stronger, more supportive teams
- Thoughtfulness is good for business and good for teamwork
- Mentorship is something everyone should be involved in
- A bias toward action is better than delaying for a perfect solution
Responsibilities:
These responsibilities are core areas of work that this role may have, but this role may also have additional duties as assigned and determined by business needs.
Implementation of Product Build and Documentation:
- Writes software projects that span multiple architectural components, with a focus on maintainability, and reviews code to that standard.
- Approaches all engineering with a security lens, actively looking for vulnerabilities in code and peer reviews.
- Understands interaction points and innovates new architectural solutions for assigned projects, using established patterns.
- Helps set and proactively manage project priorities and dependencies, resolving issues before they arise, ensuring understanding across the team.
- Contributes to the engineering support process to ensure timely resolution of support requests
- Communicates clearly, ensures team documentation is updated with all new system additions and changes, and actively listens to colleagues.
Team Collaboration:
- Respectfully seeks to help teammates, gives and receives feedback constructively, and builds strong relationships.
- Provides technical guidance and support to less experienced team members. Leads by example through technical excellence and professional conduct. May take on informal mentorship roles.
- Participates in the hiring process, interviewing and reviewing engineering candidates
Shared Team Responsibilities
- Serve on the on-call schedule for the product’s support for users (which may require availability outside of the standard Monday-Friday 9:00 am-5:00 pm general working hours, determined in advance)
- Join and participate in team retreats and collaborative opportunities
Job requirements
Required Qualifications:
- Act autonomously but thrive in a strong team environment
- Have led development on critical system features
- Be able to work with, clarify and find creative solutions for ambiguous requirements
- Have some experience working with data warehousing or analytics-focused databases
- Have some experience building performant data orchestration pipelines and ETL applications
- Have some experience writing and refactoring code into organized, maintainable, and flexible systems
- Have some experience managing infrastructure and deployments in cloud environments
- Have some experience with continuous integration and delivery systems and pipelines
- Prefer open source solutions over commercial solutions
- Have experience or be familiar with some of the following technologies and systems or similar equivalents:
- Python, Typescript, React
- SQL, Snowflake Data Cloud, Google BigQuery
- Dagster, Airflow, dbt
- AWS: S3, EC2, Lambda, IAM, KMS, SQS, SNS
- Terraform
- OIDC Authentication
Desired Qualifications:
- Strong experience with political data or equivalent experience is a plus.
- Excellent written and verbal communication skills.
- Experience setting and monitoring key metrics for a team.
- Adept at client management, stakeholder management, and political navigation.
- Proven ability to create accurate, effective, and polished client-facing deliverables.
Additional Requirement:
Must be authorized to work in the U.S. without restriction.
Location:
- Remote position; anywhere in the US. DDx is a remote-first organization.
- While this position is remote, this role may require 10% travel. Expected travel may include in-person team gathering in one location in the United States for retreats or in-depth collaborative opportunities. This would likely require travel and overnight stays in a location outside of one’s home location, though would be scheduled in advance to account for planning.
Physical Demands:
The physical demands here are representative of those that must be met by an employee to successfully perform the essential functions of this job. Reasonable accommodations may be made to enable individuals with disabilities to perform the essential functions:
- Ability to sit at a computer monitor for extended periods of time
- Ability to lift up to 20 pounds occasionally
Salary and Benefits:
DDx offers a competitive compensation salary and benefits package, including:
- Company-paid healthcare, dental, and vision insurance for full-time employees
- Matching 401(k) contributions up to 3% after three months of employment
- Unlimited paid time off (PTO) policy
- 16 weeks of paid leave for new parents
- Generous holiday schedule and monthly team wellness days
The salary range for this position is $140,000 to $155,000.
Hiring Process:
While there may be shifts to the hiring process, this is the anticipated hiring process’s steps for any candidates who advance from the application stage onwards:
- Phone Screening: A 30-minute audio-only initial interview with a team member
- First Round Interview: A 45-60-minute audio and video interview with a team member or multiple team members
- Second Round Interview/Written Prompt: A written prompt followed by a second round interview.
- Final Round Interview: A 30-60 minute audio and video interview with a leadership team member.
- Request for References: This will be a request for 3 professional references, one of which should be a previous direct supervisor.