Change.org is searching for a Full Stack Senior Software Engineer (Growth). As a Full Stack Senior Software Engineer on our Growth squad, you’ll contribute to the development, scaling, and maintenance of Change.org’s main web application and its supporting microservices. You’ll work closely with other engineers, product managers, and designers to build features that drive user growth and encourage users to start petitions. Your work will support Change’s key metrics while helping to enhance the architecture of our homepage and ‘Start a Petition’ page through both short-term experiments and longer-term improvements.

We’re a social impact business (a public benefit company), and the world's largest social change platform with 100m monthly users, 40,000+ campaigns launched on the site every month, and a 100% user-generated revenue model. Our users win campaigns for change once every hour. We’re working for a world where no one is powerless, and where creating change is a part of everyday life. We’re just getting started and hope you’ll join us!

From mobilizing over 5 million people to investigate the fires in the Amazon, to mobilizing nearly 3 million against war and famine in Yemen, to large-scale mobilizations for the people of Iran and against the war in Ukraine, and calling for Racial Justice in the US, many movements were born on Change.org. Dozens of local, national, and international victories are happening every day thanks to the strength of our members who are changing the lives of people around the world. We want to help them go even further and we need your help! 

Key Outcomes:

  • Take ownership of key project components or initiatives, proactively driving them to successful completion by coordinating with cross-functional teams, handling dependencies, and resolving technical roadblocks
  • Provide technical influence, guidance and feedback to junior team members, leveraging deep expertise to mentor and coach them effectively, and contributing to the overall growth and success of the team
  • Participate in technical planning and decision-making processes within their immediate team, providing insights and recommendations that drive innovation, efficiency, and long-term success
  • Identify opportunities to improve development processes and workflows, implementing changes that streamline project achievement, enhance team productivity, and ensure adherence to best practices
  • Demonstrate a commitment to continuous professional development by seeking feedback and actively engaging in self-improvement activities to enhance leadership skills and effectiveness
  • Successfully deliver new features and enhancements for the main change.org web app
  • Efficiently integrate the frontend with the existing REST and GraphQL middle-end services
  • Collaborate with cross-functional teams to diagnose and resolve issues promptly
  • Work on microservices and successfully deploy a new feature to production with support from the team

The most important core competencies for the role are: 

Mentoring/Coaching:

    • Develop a concise knowledge of our architecture and provide support and guidance to other engineers with design, coding, and pull-requests
    • Promote the growth of other engineers through regular feedback and pairing sessions

Coding skills:

    • Full stack experience working effectively at scale
    • Proficiency in React for building complex web applications using both TypeScript and JavaScript 
    • Strong understanding of REST and GraphQL for middle-end development
    • Experience with microservices architecture, specifically using Node.js and Ruby on Rails (optional)
    • Experience with SQL-based databases, able to define and optimize data schemas
    • Experience with infrastructure as code technologies like Terraform, Kubernetes, AWS

Planning & Execution:

    • Deconstruct projects into a well-defined action plan, and be responsible for its execution
    • Identify and fill gaps in project requirements so they align with team goals
    • Maintain own priorities and make appropriate progress proactively

Architecture & Design, Performance:

    • Familiarity with instrumentation and experimentation, deep system understanding
    • Be a driver for system quality
    • Influence architectural decisions that drive high-performant, scalable and resilient systems in a collaborative environment

Communication & Collaboration:

    • Strong problem-solving skills and ability to work in a collaborative team environment
    • Communicate early and often, sharing ideas, analysis, and information in a direct verbal and written manner
    • Partner and collaborate effectively across functions such as product, design, devops, QA, analytics and with colleagues located in different timezones
    • Contribute to an open, inclusive and transparent culture

Target experience:

  • 4-6 years of experience with full stack web service development
  • 3+ years of experience with backend services using Node.js and Ruby on Rails (optional)
  • 3+ years of experience in frontend technologies with React using TypeScript and JavaScript
  • Experience developing data access layers using RESTful APIs and GraphQL
  • Experience in scrum development practices and working within cross-functional teams
  • Understanding of industry standard SEO practices

Interested? Great! Here's what you should know:

This is a full time role, and we are open to folks in Canada.

We’re currently able to hire staff based in the following Canada provinces for this role: Alberta, British Columbia, Ontario

Our compensation philosophy is based on pay equity. All of our salaries are determined before we launch a role – they are based on a predetermined salary scale, the level on that scale and the cost of labor for that location.  The annual salary of a Senior Software Engineer is $184,000 CAD in Vancouver and Toronto; $170,000 CAD in Victoria and Calgary; and $168,000 CAD for all other Canada locations.

Benefits and perks also vary based on location. We typically offer a fully remote workforce, 100% employer-paid health plan options, life insurance, unlimited PTO, and 18 weeks of parental leave. 

Our evaluation process is as follows:

  • 30 minute Recruiter Screen
  • Take-home Coding Exercise 
  • 60 minute Hiring Manager Interview
  • 1.5 hour Team Interview (which will include a technical interview & PM collaboration interview)
  • 30 minute Executive Interview 

We know the confidence gap and imposter syndrome can get in the way of meeting amazing candidates like you, so please don’t hesitate to apply—we’d love to meet you. We also know it’s rare for someone to meet 100% of the qualifications. Please apply anyway!

We actively encourage applicants from diverse backgrounds and perspectives to apply. At Change.org, we are dedicated to fostering a diverse and inclusive workplace. We invest in programs to support our diverse workforce, offer inclusive onboarding experiences and affinity groups, celebrate the heritage of our staff, provide training on working across differences, and maintain fair and transparent salary scales. All qualified applicants will receive consideration for employment without regard to race, color, national origin, disability, veteran status, sexual orientation, gender, or culture.

We are committed to providing reasonable accommodations throughout the recruitment process for candidates with disabilities. If you need assistance, or an accommodation, please let your recruiter know once you are contacted about a role.

We're committed to protecting your data. To learn more, please review our Change.org Job Applicant Privacy Policy.

We are legally required to conduct EEOC reporting. While this is required by the federal government, we recognize that it does not include all genders and ethnicities. We want you to know that Change.org celebrates all identities and we thank you for your participation. http://change.org/

Change.org participates in E-verify - click here to learn more.

#LI-Remote

Apply for this Job

* Required

resume chosen  
(File types: pdf, doc, docx, txt, rtf)
cover_letter chosen  
(File types: pdf, doc, docx, txt, rtf)


Enter the verification code sent to to confirm you are not a robot, then submit your application.

This application was flagged as potential bot traffic. To resubmit your application, turn off any VPNs, clear the browser's cache and cookies, or try another browser. If you still can't submit it, contact our support team through the help center.