Back to search
Rainforest Automation Linkedin · Posted 22d ago

Senior Software Engineer

Vancouver, British Columbia, Canada

Linkedin
Continue to application Add your email once, then Caio opens the original posting.

Indexed description

About Rainforest Automation

Rainforest Automation builds energy management software and connected devices for electric utilities, commercial customers, and residential users. Our platform uses smart meter data, real-time device connectivity, cloud services, mobile apps, and analytics to help customers understand and manage electricity use.

Our products sit at the intersection of energy, IoT, data analytics, cloud software, and utility programs. We are a small, technical team building systems that need to be reliable, scalable, secure, and practical for real-world deployments.


About the Role

We are looking for a Senior Software Developer who can contribute deeply as a developer while also helping guide the work of other team members.

You will work closely with our current technical leadership and product/business teams to help shape implementation decisions, improve engineering practices, and deliver software that supports utility-scale energy management programs.


What You’ll Do

  • Design, build, test, and maintain production software across Rainforest’s backend, data, cloud, and apps.
  • Lead or support technical design for new features, integrations, services, and customer deployments.
  • Help translate business, product, and customer requirements into clear technical plans.
  • Work with a small development team to break down work, review code, resolve blockers, and improve delivery quality.
  • Mentor developers through code reviews, debugging, and practical technical guidance.
  • Collaborate with product, customer success, operations, and leadership to align implementation with customer needs.
  • Engage in cross-functional discussions when technical input is needed.
  • Improve the reliability, maintainability, observability, and scalability of our software systems.
  • Contribute to engineering standards, documentation, testing practices, and deployment processes.
  • Troubleshoot complex production issues involving software, data pipelines, devices, APIs, and customer environments.


Our Technology Environment

You do not need to have used every tool in our stack, but you should be comfortable working across modern backend, cloud, data, and application systems.


Our environment includes:

  • Backend: NestJS, TypeScript, Node.js
  • FrontEnd: Flutter mobile apps, responsive dashboards and customer-facing interfaces
  • APIs: GraphQL (Apollo Server), REST, WebSocket subscriptions
  • Data: PostgreSQL, Redis, ClickHouse
  • Messaging: Apache Kafka for event-driven architecture
  • Infrastructure: Kubernetes
  • Protocols: OCPP (EV chargers), MQTT (IoT devices)


What We’re Looking For

  • Strong experience as a software developer building production systems.
  • Strong backend development experience with Node.js, TypeScript, or similar modern server-side technologies.
  • Experience designing APIs, services, data models, and integrations.
  • Good understanding of databases, query performance, schema design, and data-intensive applications.
  • Experience working with cloud-based applications and production deployment environments.
  • Some experience leading, mentoring, or coordinating the work of a small development team.
  • Strong communication skills with both technical and non-technical stakeholders.
  • Ability to understand customer and business requirements and convert them into practical technical solutions.
  • Strong debugging and problem-solving skills across distributed systems.
  • A pragmatic engineering mindset: you care about clean architecture, but you also know how to ship.


Nice to Have

  • Experience with NestJS, ClickHouse, Flutter, or similar technologies.
  • Experience with IoT platforms, connected devices, telemetry, or device management.
  • Experience working with time-series data, analytics platforms, or high-volume data pipelines.
  • Experience in energy, utilities, demand response, DERs, smart meters, or building systems.
  • Experience with Kubernetes, Docker, CI/CD, infrastructure-as-code, or cloud operations.
  • Experience supporting products used by enterprise, utility, or commercial customers.
  • Experience with cybersecurity best practices for small security-minded teams.
  • Experience helping a small team mature its development practices without over-engineering process.


The Right Fit

You are likely a strong fit if you:

  • Enjoy hands-on software development.
  • Communicate clearly and calmly, especially when requirements are ambiguous.
  • Can lead through judgment, technical credibility, and collaboration rather than hierarchy.
  • Are comfortable working in a small team where priorities can shift and context matters.
  • Care about building software that works reliably in real customer environments.
  • Can balance architecture, delivery, quality, and business value.
  • Are interested in energy technology, grid modernization, IoT, and practical climate-related software.


What Success Looks Like

In this role, success means:

  • High-quality software is delivered consistently and thoughtfully.
  • The development team has clearer technical direction and fewer avoidable blockers.
  • Product and business requirements are translated into practical implementation plans.
  • Code quality, testing, reliability, and maintainability improve over time.
  • Customer-facing issues are understood and resolved with strong technical judgment.


Why Join Rainforest Automation

This is an opportunity to work on meaningful software in the energy sector with a small team where your contributions will have visible impact. You will help build products used by utilities, businesses, and customers to better understand and manage electricity use at a time when grid capacity, electrification, and demand flexibility are becoming increasingly important.

You will have the opportunity to shape technical decisions, influence product direction, mentor other developers, and build systems that connect cloud software, data analytics, mobile apps, and real-world energy devices.

Free. 20 seconds. No password. See every match in this search.

Create a free Caio profile to unlock more results and save your role and location preferences.

Unlock free search
Want help applying to roles like this? Search Caio for free. If the repetitive CV tweaking gets heavy, Daniel can help set up Caio Agent.
Ask about Agent