Back to jobs

Sr. Software Engineer

Unify AmericaRemote (United States)Posted 5d ago
Senior Frontend Engineer
USD 135000-150000 per annual
Full Time
Remote
Craft my tailored resume free

Free to start · No card

Job description

We are seeking a Senior Software Engineer to help build and maintain the platforms behind our programs. You'll ship features end to end, shape technical decisions, set a high bar for code quality, and mentor other engineers. You'll work closely with our CTO, product manager, and program teams to turn real-world civic engagement needs into reliable, thoughtfully designed software.


About Unify America

We’re on a mission to replace political fighting with collaborative problem-solving. Yeah, we know it sounds audacious. It is. But we’re doing it—by creating civic experiences that reduce polarization, teaching essential civic skills, and inviting Americans to use their differences to better solve common problems together.

Where we work:

  • Higher Education (Civic Gym): Over 50,000 college students have engaged in meaningful cross-partisan conversations. Think of it as training for democracy—reps, sweat, and all.

  • Cities (Democracy Leagues): We partner with communities to run Civic Assemblies, where residents—across the ideological spectrum—solve shared problems together. Our first pilot is in Akron, with more locations to come.

We're a small, mission-driven team of about 30 people, and our engineering team is small enough that every engineer has a real voice in how we build. Civic Gym has a more mature technical product that our existing Dev Team is in the process of re-factoring. Democracy Leagues is just at the beginning of building a product suite to prepare us to scale our deliberative democracy work in Ohio and beyond. This role will anchor the Democracy Leagues Dev Team under the guidance of our CTO.


About the Role

You'll ship features end to end, shape technical decisions, set a high bar for code quality, and mentor other engineers. You'll work closely with our CTO, product manager, and program teams to turn real-world civic engagement needs into reliable, thoughtfully designed software. More specifically, you’ll:

  • Design, build, and maintain full-stack features across our Django and TypeScript/Node.js backends and Vue.js front end

  • Design and evolve data models in both MongoDB and PostgreSQL, making sound tradeoffs about structure, indexing, and performance

  • Work with AWS services such as Lambda, S3, Aurora, DynamoDB, and IAM to build, deploy, and operate our applications

  • Contribute to the architecture of our new civic assembly platform, including a modular, plugin-based design

  • Write clean, well-tested, maintainable code, and hold a high bar in code review

  • Mentor mid-level and contract engineers through pairing, review, and clear technical guidance

  • Help keep our production systems reliable, especially during high-traffic program windows

  • Communicate clearly with non-technical colleagues about scope, tradeoffs, and timelines

Required Skills & Experience

  • 5+ years of professional software engineering experience, including time in medium- to large-sized engineering organizations

  • Deep expertise in the JavaScript ecosystem, including TypeScript and

  • Strong experience with Vue.js (preferred) or React

  • Hands-on experience in Python and Django

  • Hands-on experience with relational and NoSQL databases, specifically PostgreSQL and MongoDB, including the ability to design schemas and data models from first principles

  • Practical experience working with AWS services such as Lambda, S3, Aurora, DynamoDB, and IAM roles and policies

  • Experience using AI-assisted development tools (e.g., Claude, GitHub Copilot, ChatGPT) judiciously. You use them to move faster, but you understand, verify, and take ownership of every line you ship, and you're fully capable of designing, debugging, and reasoning through problems without them

  • Strong written and verbal communication skills, and comfort working with both technical and non-technical teammates

  • A track record of taking initiative, owning outcomes, and valuing quality over volume

  • A bachelor's degree in Computer Science, Software Engineering, or a related technical field is preferred. We also welcome candidates with equivalent professional experience and relevant certifications or credentials (e.g., AWS certifications, quality bootcamps).

Nice to Have

  • Experience with NestJS

  • Experience with infrastructure as code, especially Terraform

  • Experience with real-time or video-based applications

  • Experience in the nonprofit, civic tech, education technology, or public-interest sectors

  • Experience designing extensible systems (plugin architectures, module contracts, public APIs

We hire for character and collaboration as much as technical skill. We look for people who communicate openly, treat colleagues with respect, take initiative without waiting to be told, and care about doing things well rather than doing things fast. Given our mission, we especially value people who can engage respectfully with a wide range of perspectives.


Compensation & Benefits

  • Annual salary of $135,000 to $150,000 depending on relevant experience.

  • Medical, dental, and vision insurance.

  • 401k match up to 5%.

  • Internet and phone reimbursement.

  • A healthy, appreciative, feedback-driven workplace.

  • Flexible, self-managed PTO.


Ready to Apply?Great, we look forward to hearing from you! Your application materials should include a cover letter that shares three reasons why you’re right for this job (and why it’s right for you) and your resume in one, combined PDF (there will only be one field for Resume in the application, and we are looking for a combined Cover Letter/Resume in that field).

Let’s build something extraordinary together!

Salary: 135K - 150K USD a year

Originally posted on Himalayas

Prepare your application

Use the description above to assess your fit for Unify America. This checklist is guidance from Resumize, rather than additional requirements from the employer. Imported listings can be shortened or change after collection, so confirm the complete description and current availability before sending an application.

Match requirements to evidence

Identify the responsibilities and skills the employer explicitly names. For each important requirement, choose one example from your work, education, training, or projects. Explain what you did, how you did it, and what changed as a result. Include a measurable outcome when you can support it. If you lack a requirement, describe related experience accurately instead of adding an unfamiliar skill to your resume.

Put the most relevant examples near the top of your resume. Keep job titles, dates, qualifications, and contact details consistent across your application materials. Use the employer’s terminology when it describes your experience accurately; a copied list of keywords does not explain your contribution. A short, specific bullet is easier to review than a paragraph that mixes several unrelated duties.

Check the working arrangement

Confirm the location, schedule, employment type, and any eligibility requirements on the employer’s site. A remote label does not establish worldwide eligibility or flexible hours. If compensation, benefits, equipment, travel, or contract duration are missing from this listing, write down your questions for the recruiter. Do not assume details from another opening at the same company apply to this role.

Review before submitting

Follow the employer’s requested file format and application instructions. Open your exported resume and check that its text is selectable, its sections read in order, and its links work. Proofread names, dates, and contact information. Share confidential work samples only when you have permission, and use an anonymized example when necessary.

Submit through a trusted employer or recruiting destination. If the original listing has disappeared, search the employer’s careers page for the title rather than assuming the vacancy remains open. Save the application date, job reference, and the version of your resume you sent. Those details help you prepare for a later conversation and avoid submitting conflicting information through several job boards.

Review your resume for writing and readability feedback, or browse other openings if this opportunity is unavailable.