WEB APP
/Sunpower
ADVANCED DESIGN TOOL
TIME
13 MONTH
ROLE
PRODUCT DESIGN

Team components
Design
Product designer
Development
Front-end developers
Back-end developers
Machine learning engineers
Management
Product manager
SEC.
/OVERVIEW
Introduction
Advanced design tool in the process
When a customer submits their address, it generates a lead that is passed on to SunPower's internal Maxfit team. Using the Advanced Design Tool, the team creates a tailored panel layout for the customer's rooftop, accounting for obstructions on the roofs like chimneys, pipes, and local regulations.
the user
The primary users of this tool is our internal team, called MAXFIT. They are the specialists who have been trained to use tools like Advanced Design, AutoCad, Aurora to design Panel Layouts
Users' goal
Wants to create panel layouts, and get shading report so that they can move on to the next step for solar installation.
the problems
Handling hundreds of design requests daily, our internal team (Maxfit) relied on a costly third-party tool with manual design processes. Despite the high cost, the tool lacked proper integration with our company’s product ecosystem, leading to design errors and further inefficiencies.
Thier goals
Wants to create panel layouts, and get shading report so that they can move on to the next step for solar installation.
SEC.
/Emphasis
The Challenge
The primary users is SunPower's internal team – Maxfit. They are trained specialists using multiple softwares like (Speed, Aurora, AutoCAD…)to create panel layouts manually on given customer addresses.
Advanced Design Tool offers an solution to automate the design process by using machine learning, so that it can reduce the designers learning time of the software, human caused errors, and increase their work efficiency.
Input Address
ML-GEN
manual fix
Export file
However, 90% generation were unusable, and taking users 3-5 times longer than expected to fix the roof outlines.
We conducted multiple rounds of user testing to measure how long it took to create accurate 3D roof models. We discovered that fixing 'broken roofs' took users longer than starting from scratch with the third-party tool, showing that our system still wasn’t meeting efficiency goals.

*Example of 3D site model generated by our initial automation system. Yellow highlights are the walk-ways, gray rectangles are solar panels. In the image, it is obvious that the 3D roof planes are mismatched

*3D site model generated with auto-gen and edit tool, the image shows user edit the roof in 3D environment
Problem
There are many reasons can cause the ML models struggle: Limited data Low resolution on the satellite imagery Complexity of the environment of the house. Although users can fix the generated models, some parts of the roofs are still occasionally missing, and the roof planes often aren’t cleanly shaped. This makes the process time-consuming and requires significant effort to fix.
Conclusion
Despite addressing the poor-quality data, we decided to ask users define the roof edges before auto roof generation to ensure the accuracy of the roof outlines, we shifted our focus to generate clean and usable 3D roofs instead, as it’s the crucial first step for automating panel placement.
insert Address
manual draw
ML-GEN
manual fix
result
As the product designer, my focus will be:
How might I design a seamless experience that streamline the roof generation?
SEC.
/Design
Iterate on design
The primary users is SunPower's internal team – Maxfit. They are trained specialists using multiple softwares like (Speed, Aurora, AutoCAD…)to create panel layouts manually on given customer addresses.
Advanced Design Tool offers an solution to automate the design process by using machine learning, so that it can reduce the designers learning time of the software, human caused errors, and increase their work efficiency.
However, 90% generation were unusable, and taking users 3-5 times longer than expected to fix the roof outlines.
Draw Roof Prototype
Generate site model Prototype
overall 3D ROOF Generation flow

SEC.
/Impact
Results
The new approach significantly improved the usability of the Auto-gen feature by:
increased
95%
usable rate
95% more accurate rooftop models, resulting in higher precision for detecting roof planes and obstructions.
reduced
2-3x
completion time
2-3x faster 3D site model generation compared to previous approaches
site model with approach #2

site model with approach #3

*Both images show a generated 3D site model with obstruction(chimneys)on the roof tops. As you can see, the outline of the roofs on the right hand side is more clean than the one on the left hand side of which roofs are in irregular shapes, and not in line with the actual roof on the map.
Look into the future
Our ultimate goal is to fully automate the process of creating accurate solar panel layouts. So far, we’ve identified the key components for successful roof creation, which sets us up for the next phase: Reintegrating the panel placement process Incorporating local solar installation requirements By addressing these areas, we’ll be able to significantly speed up the design process, making it faster and more efficient for all our customers.
/learnings
Lessons Learned
This project offered valuable insights for both successes and areas for improvement. Here’s what I learned and what I would do differently next time.
01.
Don’t Fully Rely on Technology
While machine learning offers powerful automation, I learned that it's essential to build flexibility into the product. Over-reliance on ML without manual control can lead to inefficiencies when the model fails. Having a backup plan—such as manual adjustment tools—is crucial for maintaining a functional and adaptable user experience.
02.
Iterate Early and Often
In ML-driven projects, frequent iteration and testing are critical. Early testing helped us identify key issues, such as the limitations of the auto-generated roof models, which informed our decision to introduce manual adjustments.
03.
Prioritize User Experience in Automation
Even with advanced technology like ML, the user's workflow should always be a top priority. Automating a process is valuable only if it genuinely improves user efficiency and doesn’t introduce more complexity or frustration. In this project, integrating manual tools alongside automation ensured a smoother, more reliable experience.