Full Stack Software Engineer

Immigration Policy Lab · Stanford, CA (Hybrid) / Remote (US)

Software Engineering
Partners & Advocates
Global Peace & Safety
$102,000 - $161,000 Per Year
Posted 3 weeks ago

Machine Learning
Report an Issue
Featured Job

The Immigration Policy Lab (IPL) at Stanford University is seeking to hire a full-time Software Engineer to join its GeoMatch project team. The GeoMatch team partners with governments and nonprofits to develop and implement an algorithm-based matching tool that connects asylum seekers, refugees, and immigrants to the places where they are most likely to thrive. GeoMatch has already helped case officers find new communities for thousands of refugees, and we need to grow our team to meet demand for the tool. GeoMatch is a global initiative that combines high-quality academic research with elements of a social impact tech start-up: codebase development, product design, strategic partnerships, and advances in artificial intelligence. 

About the lab

The Immigration Policy Lab (IPL) at Stanford University works closely with community-based organizations and government agencies to design new programs and tools with the potential to affect the lives of millions of migrants. Our talented team of staff, faculty, postdocs, and graduate and undergraduate students contribute to an innovative research model that combines the rigor of an academic unit with the efficiency and innovation of a civic-tech lab. Within the lab, GeoMatch functions with the adaptability of a start-up that develops user-focused software products, while maintaining a commitment to generating rigorous evidence of their impact. To learn more about GeoMatch and IPL, visit our website: https://immigrationlab.org/geomatch 

About the position

We are looking for a full-time Software Engineer to join the core GeoMatch team as a technical lead and programmer. In this role, you will collaborate closely with faculty and staff (including our existing Senior Software Engineer) to develop, adapt, and scale the GeoMatch software tool for governments and nonprofits serving immigrants and refugees. The Software Engineer will develop and scale data pipelines in Python, R and pandas; create and maintain a cloud development environment for the team’s data scientists; and modularize an existing codebase to be able to adapt to different partners’ needs. Additionally, they will also work with the team’s data scientists to ensure that they can run their workflows and have the data they need. (The data scientists on our team primarily use R, but prior experience with R is not required for this position.)

We are looking for candidates who have the ability and experience to meet the technical requirements of the position and who are enthusiastic about using their skills to build a software product with real-world impacts. As a member of our collaborative team, the Software Engineer can receive co-authorship on academic papers resulting from projects that they manage.

This is a 100% FTE, one-year, fixed-term position with the possibility of renewal depending on funding and performance. IPL is a highly-collaborative work environment with a mix of employees that are hybrid or fully remote. We will consider both remote and hybrid candidates for this position. Remote candidates must be located in the United States. 

If you believe that this opportunity is a match for your knowledge, skills and abilities, we encourage you to apply. 


  • Develop and scale full-stack applications in Python, Javascript and R to meet the needs of an expanding partner base
  • Develop, scale and automate data pipelines in Python and R
  • Optimize, generalize, and modularize the codebase to support a growing number of partners with diverse needs.
  • Design and implement comprehensive testing protocols to enhance the reliability of a codebase with previously low test coverage. This includes   developing unit, integration, and system tests to ensure software functionality and stability
  • Help to create and maintain a cloud development environment for the team
  • Manage AWS accounts via Terraform to support our application's scalability and security needs
  • Assist in the maintenance and troubleshooting of production issues as needed, sharing on-call duties for outages that might pop up
  • Collaborate with other team members and stakeholders to understand the requirements and deliver high-quality software. This includes a wide variety of users: data scientists, researchers, developers, and end users
  • Work independently while having a documented and thought-out decision making process

* Other duties may also be assigned.


  • Bachelor's degree and five years of relevant experience or a combination of education and relevant experience. 


  • Expertise in designing, developing, testing, and deploying applications.
  • Proficiency with application design and data modeling.
  • Ability to define and solve logical problems for highly technical applications.
  • Effective communication skills with both technical and non-technical clients.
  • Ability to lead activities on structured team development projects.
  • Knowledge of application domain.

Additional highly desired knowledge, skills and abilities include:

  • Bachelor’s degree in Computer Science, Engineering, or a related field
  • Familiarity in Django (or similar framework) and React
  • Strong understanding of the full web technology stack (e.g., HTTP, cookies, headers, asset loading, caching, REST APIs)
  • Familiarity with some cloud services, particularly AWS, including ECS, ECR, S3, and RDS.
  • Familiarity with SQL databases such as PostgreSQL and SQLite. This includes a familiarity with the maintenance of such databases, such as schema and data migrations
  • Ability to write clean, readable, and maintainable code
  • Proficiency with application design and data modeling using relational databases
  • Familiarity with data pipelining and workflows (We use R, Python and pandas)
  • Commitment to and alignment with GeoMatch research goals and IPL’s mission
  • Ability to thrive in a lean, start-up environment: able to manage ambiguity and navigate uncertainty and competing priorities while contributing to a supportive, focused and productive team environment
  • Ability to travel for occasional domestic and international travel (2-4 weeks/year)

Additional preferred qualifications include:

  • Experience deploying machine learning applications and knowledge of the ML pipeline (the process of training, saving, then running a model)
  • Experience with infrastructure as code tools such as Terraform.
  • Familiarity with cloud development environments, especially AWS SageMaker Studio.
  • Familiarity with the R programming language
  • Comfortable with server administration using Docker and Linux

How to Apply

We recognize that the job description may not exactly match your qualifications. If you think you may be a good fit, we encourage you to apply. We invite you to apply for this position by clicking on the “Apply for Job” button at the link below. To be considered, please submit a cover letter and resume along with your online application. Your one-page cover letter should briefly describe your background, interest in IPL and GeoMatch, and your experience developing software in collaborative environments.

Apply here: https://careersearch.stanford.edu/jobs/full-stack-software-engineer-geomatch-25850 

Optional: We also welcome attachments showcasing work samples and portfolios of past projects.

This remote role is open to candidates anywhere in the United States. Stanford University has five Regional Pay Structures. The compensation for this position will be based on the location of the successful candidate. The expected pay range for this position is $102,000 to $161,000 per annum.

Stanford University provides pay ranges representing its good faith estimate of what the university reasonably expects to pay for a position. The pay offered to a selected candidate will be determined based on factors such as (but not limited to) the scope and responsibilities of the position, the qualifications of the selected candidate, departmental budget availability, internal equity, geographic location, and external market pay for comparable jobs.

At Stanford University, base pay represents only one aspect of the comprehensive rewards package. The Cardinal at Work website (https://cardinalatwork.stanford.edu/benefits-rewards) provides detailed information on Stanford’s extensive range of benefits and rewards offered to employees. Specifics about the rewards package for this position may be discussed during the hiring process.


Related Jobs

Full Stack Software Engineer - Good Party
Remote (USA) - Posted 2 weeks ago
Computer Vision Engineer - Pano
San Francisco, CA - Posted 2 weeks ago
Backend Engineer - Community - Patreon
San Francisco, CA - Posted 1 month ago
View more open Senior Full Stack Software Engineer jobs
View more open tech jobs in Stanford, CA
View more remote jobs
Be the first to see new Full Stack Software Engineer jobs

Save this search to get an email when new jobs match this search.

Create Email Alert