Click here to join our community of experts to get information on job search, salaries and more.


Senior Software Engineer US

Company: Mercycorps

Location: Portland Oregon

Posted on: September 19


Location: Portland, OR or Remote US

Position Status: Part-time (20 hours/week, 0.5 FTE), Regular, Exempt

Salary: Starting salary for this role will be $44,750-52,500 ($89,250 to $105,0001.0 FTE Equivalent) commensurate on experience.

Valid unrestricted work authorization in the country in which you will be based (United States) is required at the time of application for this position.

***A cover letter is required for consideration for this position. Please indicate why you are interesting in working with Mercy Corps and elaborate upon your REACT and strategic and technical leadership experience in your cover letter. Applications without a cover letter addressing the above will not be considered.***

About Mercy Corps

Mercy Corps is powered by the belief that a better world is possible. To do this, we know our teams do their best work when they are diverse and every team member feels that they belong. We welcome diverse backgrounds, perspectives, and skills so that we can be stronger and have long term impact.

The Team

The Information Technology (IT) Business Apps department coordinates, facilitates, and supports the agencys use of technology to improve organizational agility and achieve agency goals. The TolaData Development Team is part of the IT Business Apps department and supports this objective by developing and improving the Mercy Corps internally built, web-based, software solution for program performance monitoring, evaluation, and learning (MEL), called TolaData.

Launched in 2016, TolaData is used by Mercy Corps team members to support data-driven decision-making, learning, and adaptive program management. TolaData supports these practices by improving the accessibility of program data as well as ensuring the retention of evidence necessary to support reported programmatic results and achievements. Today, the TolaData Development Team works closely with the headquarters MEL and Program Standards Teams to ensure that TolaData continues to meet the needs of Mercy Corps team members and programs.

The Position

The Senior Software Engineer is a member of the TolaData Development Team, who will focus on providing technical leadership around the architecture of TolaData as well as focusing on front-end software development using React. This position may also support the development and execution of other key organizational priorities, such as business intelligence, database integration, award/program management, and/or data security.

Essential Responsibilities

  • Works closely and collaboratively with members of the software development team, business units, and end-users to effectively address business needs and user problems.
  • Provides architectural leadership, developing strategic technical solutions to improve the overall performance, reliability, sustainability, and scalability of our systems.
  • Assumes ownership of the technical stack ; provides knowledge continuity for the development team; acts as the custodian of engineering.
  • Directs ongoing efforts to decouple front-end (Javascript/React) and back-end (Python/Django) architectures.
  • Leads the development of solution s to improve the overall performance, latency, reliability, and scalability of our systems and reduces technical debt, such as selecting software packages and libraries; establishing software patterns; and collaborating to design code deployment processes.
  • Writes or refactors code to be clean, readable, commented, documented, reusable, testable, and efficient, and:

  • Follows and implements OWASP recommendations for writing secure code.
  • Meets acceptance criteria and quality specifications, including PEP8 and Django coding style and standards.
  • Supports the integration of front-end and back-end functionality, across different systems and databases, including MySQL or PostgreSQL

  • Effectively utilizes software development best practices in the development of potential technical solutions, working to address existing codebase limitations.
  • Reads and interprets design documentation (e.g., GitHub tickets, Figma mockups), soliciting clarification and refinement of acceptance criteria, as needed, while developing level of effort estimates and ensuring new code meets business requirements and quality specifications.
  • Participates in diagnosing and fixing software bugs and system errors.
  • Facilitates engineering design reviews Leads and participates in code reviews.
  • Writes unit/integration tests for all code written in an existing Continuous Integration (CI) testing environment and supports Quality Assurance (QA) testing, and reviews tests from other engineers.
  • Participates in backlog refinement and contributes to the development of the roadmap and release planning.
  • Contributes to the development and implementation of end-user software analytics and evaluates end-user feedback for continuous software improvement.
  • Provides real-time, collaborative mentoring to more junior software engineers.

Supervisory Responsibility



Reports Directly To: Deputy Director, Data Protection and Privacy

Works Directly With: TolaData software development team, business owners on the Program Performance and Quality and MEL teams, regional subject matter leaders, and TolaData end users.

Accountability to Participants and Stakeholders

Mercy Corps team members are expected to support all efforts toward accountability, specifically to our program participants, community partners, other stakeholders, and to international standards guiding international relief and development work. We are committed to actively engaging communities as equal partners in the design, monitoring and evaluation of our field projects.

Minimum Qualifications & Transferable Skills

  • Bachelors degree in computer science, or related field, or equivalent experience.
  • Must have effective verbal and written communication, including the ability to break down complex problems, develop strategies to address them and communicate succinctly with a range of stakeholders.
  • Must have 5+ years of experience with front-end web applications, technologies, and frameworks (i.e., React, jQuery, CSS/HTML, Bootstrap, Sass, RESTful APIs, AJAX/JSON, Vue, Angular etc.).
  • Must have 5+ years professional computer programming experience with object-oriented languages (i.e., Python, JavaScript).
  • Must have 5+ years of professional experience with back-end web frameworks (i.e., Django 2.0+, Django Rest, Ruby).
  • Must have 5+ years of experience with database development, including the creation of queries, stored procedures, views, tables, and schemas as part of a web application, and relational databases (e.g., MySQL or PostgreSQL, and NoSQL databases like MongoDB).
  • Must have experience working with Microsoft Azure, particularly in relation to ETL, data warehousing, and data exchange.
  • Must be able to read and interpret software design documentation in the form of user stories, detailed acceptance criteria, and annotated mockups. Ability to deliver software products and features that meet requirements and closely resemble design mockups.
  • Must have 1+ years of experience mentoring engineers.
  • Fluency in English is required.

Preferred Qualifications & Skills

  • Experience working with state and data management such as MobX, Redux, or React Context.
  • Experience with Webpack
  • Experience with web templating engines (i.e., Django templates, Mustache, Pug, Hamlets, Jinja2)
  • Experience with internationalization, localization, and/or accessibility / 508 Compliance.
  • Experience with Figma.
  • Experience with and understanding of non-profit program/project Monitoring, Evaluation, and Learning (MEL) concepts. Fluency in French, Spanish, and/or Arabic.

Success Factors

All members of our software development team are expected to be strong communicators who can effectively work with colleagues from a variety of technical and non-technical backgrounds including developers, designers, and subject matter experts. They do not hesitate to seek clarification and assistance when needed and are able to explain technical concepts to a non-technical audience. They are curious about other peoples ideas and perspectives and are willing to share their own. They welcome and proactively seek feedback and are interested in exploring alternative paths to solving a problem.

Living Conditions / Environmental Conditions

This is a remote position open to applicants authorized to work in the US. The applicant must be able to dedicate four or five-hour blocks of time each day for real-time collaboration and communication with team members based in Pacific (GMT-8) and Eastern (GMT-5) time zones during normal business hours (i.e., 8AM-2PM Pacific / 11AM-5PM Eastern). Team members based in Portland, OR or Washington, DC have the option to work out of Mercy Corps' headquarters offices. This role may include occasional travel to Portland for team meetings and occasionally to country offices across the organization. Travel may be to insecure areas with limited access to medical facilities and amenities.

Ongoing Learning

In support of our belief that learning organizations are more effective, efficient and relevant to the communities we serve, we empower all team members to dedicate 5% of their time to learning activities that further their personal and/or professional growth and development.

Diversity, Equity & Inclusion

Achieving our mission begins with how we build our team and work together. Through our commitment to enriching our organization with people of different origins, beliefs, backgrounds, and ways of thinking, we are better able to leverage the collective power of our teams and solve the worlds most complex challenges. We strive for a culture of trust and respect, where everyone contributes their perspectives and authentic selves, reaches their potential as individuals and teams, and collaborates to do the best work of their lives.

We recognize that diversity and inclusion is a journey, and we are committed to learning, listening and evolving to become more diverse, equitable and inclusive than we are today.

Equal Employment Opportunity

Mercy Corps is an equal opportunity employer that does not tolerate discrimination on any basis. We actively seek out diverse backgrounds, perspectives, and skills so that we can be collectively stronger and have sustained global impact.

We are committed to providing an environment of respect and psychological safety where equal employment opportunities are available to all. We do not engage in or tolerate discrimination on the basis of race, color, gender identity, gender expression, religion, age, sexual orientation, national or ethnic origin, disability (including HIV/AIDS status), marital status, military veteran status or any other protected group in the locations where we work.

Safeguarding & Ethics

Mercy Corps is committed to ensuring that all individuals we come into contact with through our work, whether team members, community members, program participants or others, are treated with respect and dignity. We are committed to the core principles regarding prevention of sexual exploitation and abuse laid out by the UN Secretary General and IASC and have signed on to theInteragency Misconduct Disclosure Scheme. We will not tolerate child abuse, sexual exploitation, abuse, or harassment by or of our team members. As part of our commitment to a safe and inclusive work environment, team members are expected to conduct themselves in a professional manner, respect local laws and customs, and to adhere toMercy Corps Code of Conduct Policies and values at all times. Team members are required to complete mandatory Code of Conduct elearning courses upon hire and on an annual basis.

As a safeguarding measure, Mercy Corps screens all potential US-Based employees. This is done following the conclusion of recruitment and prior to assuming full employment.

Our screening process is designed to be transparent and completed in partnership with new Team Members. You will have the opportunity to disclose any prior convictions at the conclusion of the recruitment process before the check is initiated. We ask that you do not disclose any prior convictions in your application materials or during the recruitment process.

Covid-19 Vaccine Policy for US-Based Employees

Mercy Corps has determined that, in an effort to protect the health, safety, and well-being of all Mercy Corps employees working in the United States, all U.S.-based employees must be fully vaccinated for COVID-19, regardless of prior COVID-19 infection status. This policy is necessary to ensure not only the safety of our workforce, but the ongoing functionality of the organization.

This policy will be revised as needed to comply with federal, state, and local requirements, and to respond to changing guidance from public health authorities.

For new employees this requirement goes into effect within 10 business days of employment. Team members that travel are expected to comply with host-country requirements, including vaccinations. Failure to comply may impact your employment. Proof of vaccination or exemption must be provided.