Powur Vision
Built for Powur PBC
From proof of concept to $10M+ in solar contracts. Trained an ML model to detect roof faces from satellite imagery.
Powur PBC is a residential solar company. Powur Vision was their platform for the entire solar sales lifecycle: satellite imagery, roof detection, panel placement, energy estimation, financing, contract assembly, and e-signature. It replaced a costly third-party solution and generated over $10,000,000 in solar install contracts.
The Proposal Lifecycle
A consultant pulls up a property address and the system fetches satellite imagery from one of four providers (Google Maps, Bing, Nearmap, or Pictometry) depending on availability and resolution for that location. The imagery feeds into a roof detection pipeline where I personally trained and deployed an ML image segmentation model from a research whitepaper. That was one of those problems where the intersection of “nobody on the team knows how to do this” and “we need it to work” landed on my desk. I learned the domain, implemented the model, and got it into production.
From there, the consultant uses a custom-built tracing tool (ImageTracer with MeshDesigner and Decomposer components) to refine roof segments and place solar panels. The system pulls energy production estimates from NREL and rate/tariff data from Genability, then integrates with Aurora Solar for detailed solar design calculations.
The proposal updates in real time with two views: an editable seller view and an interactive client view with data visualizations built in visx and embedded loan pre-qualification from GoodLeap and Sunlight Financial. The client can explore financing options and savings projections without the consultant present.
Contracting and E-Signature
Once a proposal is accepted, a separate contracting system (its own NestJS monorepo with an admin client) assembles the contract from configurable document templates. Powur employees manage document options at various inclusion levels through an admin interface. The system handles AHJ (Authority Having Jurisdiction) lookups via ARC GIS to determine permitting requirements by location. Completed contracts go through DocuSign for e-signature.
Architecture
The gateway API is the central hub: a NestJS/GraphQL service with TypeORM, Redis, and Postgres. It coordinates satellite imagery providers, Aurora Solar, Genability, NREL, and the financing integrations. Queue processors handle async work like PDF generation and notifications, which run as separate Go services communicating over gRPC.
The frontend is React with Leaflet maps (Google Maps tile layer), Recoil for state management, GraphQL via react-query, styled-components, and i18n support.
I built a separate HTMX admin client served directly from the gateway for visualizing API key usage and auditing third-party HTTP requests. Firebase integration pushed document data for each outbound request so the team could track usage of paid services like imagery providers, Genability, Aurora, and the loan APIs.
The contracting service runs its own Prisma-backed Postgres database and admin client, communicating with the gateway for proposal data and internal fulfillment services for equipment, pricing, and completed contract delivery.
Team and Role
I led a cross-functional team of 12 (developers, PM, QA) from proof of concept through production. I started as Application Architect and Lead Developer, then became Director of Engineering. Beyond Powur Vision specifically, I spearheaded company-wide engineering policies, hiring strategies, and technology selections. This was January 2022 through May 2024.