Upstream Tech

Visit website

Machine Learning Engineer

  • Software Development
  • Full-time
  • Remote
  • 90K - 159K USD a year


Upstream Tech is a technology company that builds software products to accelerate the pace, scale and impact of conservation, restoration and a renewable grid. We are looking for a backend engineer who is excited to grow and improve state-of-the-art water forecasting systems to address clean energy, environmental conservation and climate adaptation challenges.


We are hiring a Machine Learning Engineer to join the team scaling HydroForecast. HydroForecast helps clean energy and environmental water users proactively prepare for and manage water in an increasingly variable climate. HydroForecast was recently proven to be the most accurate river forecast available and we are rapidly expanding to support increased interest.


Working with the HydroForecast team you will some or all of the following:

  • Design and build machine learning models to forecast water supply.

  • Setup and evaluate production models, tracking performance and devising strategies to improve them.

  • Incorporate science and physics into model design and function

  • Scale the operational data processing and machine learning inference systems producing our forecasts.

  • Investigate and integrate new weather, water, snow and other geospatial data sources to provide to our customers and models.

  • Optimize data processing and machine learning systems to enable rapid experimentation and deployment of new models.

  • Improve automated alerting, observability and testing of operational forecast systems. 

  • Hone developer systems and processes to make the team more productive.

This work is critical to the success of Upstream Tech and our environmental mission. Our climate and conservation impact scales with our team & systems.

You’d be a great fit if

  • You have experience building real world systems which process large amounts of data.

  • You have machine learning and software development experience. Most engineers on the HydroForecast team do a mix of software engineering and machine learning.

  • You’re interested in solving complex modeling challenges and exploring new problem areas.

  • You have excellent communication skills and want to share your expertise through mentorship, pair programming, and code reviews.

  • You conduct work with autonomy and are excited to learn new things

  • You’re pragmatic, solutions-oriented, and want to get things done without sacrificing quality.

  • You are humble and have empathy for customers and teammates.

  • You believe that giving and receiving honest and direct feedback helps everyone to grow.

  • You enjoy working on teams and believe a variety of skills and perspectives create the best products.

  • You want to work at a small, impact-focused company. We measure our success with a triple bottom line and put our principles before profits.

We encourage you to apply if you don’t meet every qualification. If you’re passionate about water, climate and renewable energy, and are motivated by the impact that your work has, we'd love to chat!

We are proud to offer great benefits like 4 weeks of paid vacation and health insurance plans (along with dental, vision and life insurance). We want our team to live full lives outside of work.

In addition to competitive salaries, we offer equity to new employees and other incentive compensation for overall team performance.


Remote. We conduct business using technologies like Slack and video conferencing. We get together for an annual in-person trip to work, bond, and celebrate our successes. 

The Interview Process

Our interview process aims to respect your time. It consists of three rounds:

  1. An initial 30 minute introductory conversation.

  2. An asynchronous interview via slack in which we’ll ask you a few questions about modeling, preferred work style and technologies.

  3. A technical interview that consists of a live data exploration section and a conversation about modeling techniques.

That's it! At every stage we aim to provide ample time to answer your questions about our team, our technology and the organizations we serve.

How to Apply

Applications are accepted on a rolling basis until Friday March 17. Please provide your resume and cover letter at

In compliance with federal law, all persons hired will be required to verify identity and eligibility to work in the United States and to complete the required employment eligibility verification form upon hire.

Upstream Tech is committed to building, supporting, and growing a diverse team. We have a standardized interview process designed to reduce individual bias, and have structured pay scales to prevent inequity. We don’t discriminate on the basis of race, religion, color, national origin, gender, sexual orientation, age, marital status, veteran status, or disability status.

Remote restrictions

  • Workday must overlap by at least 6 hours with Denver, CO, USA