The Challenge

Build a user-friendly tool that will automate the process of designing solar panel systems on any type of roof.

Solar panels on roofs - climate tech

The Problem

The initial challenge was to migrate the app to new technologies and make it available in modern browsers; the team first had to research and choose code libraries for the project. The app's purpose was to automate the process of designing custom solar panel systems. As it turned out, the task is simple for a simple-structured roof; but it can get highly complicated in edge-case situations (of which there were many).


The app had to account for many not-straightforward factors, such as the heights of the building or the yearly average strength of the winds in the given area!

The Journey

We interviewed Jacek and Ewelina, two developers, who worked on creating an app that would help with the installation of solar panels.

 

Jacek, our expert, said they chose the paper.js library, which was free and open-source, yet powerful and efficient. Looking back, they're very proud of the result, especially knowing that similar, very expensive libraries can offer more; yet the team managed to build a 100% solid, reliable tool using a free resource.

 

Ewelina mentions, "We used different algorithms and many different calculations; the interdisciplinarity of the app was something we hadn't seen before - a lot of maths, physics, and geometry to account for. Solar panels always have to be placed at some distance from the edge of the roof, which depends on multiple different factors, such as the height of the building, the yearly average strength of the wind gusts, and market standardization - which differs heavily between EU and US, where the product has its presence."
The result of the team's efforts was a stable, simple enough app that automated the whole process significantly - without such a powerful tool, it would take much more time to come up with similar calculations. The app allowed the user to do all calculations seamlessly. That was another huge effort from the team - how to ensure all the heavy calculations don't bring the app's performance down and make it unusable?

Ewelina said, "With every added feature/calculation, we had to be really mindful of the performance. We were inspired by how it's done in the gaming industry - where some of the information is rendered only at times of the idleness of the user - so that the calculations never overlap one another, making it possible for the app to process and store all data in real-time. Opening and saving the project alone consumed lots of performance power due to the heaviness of the operations in the background. And all operations had to be performed in a way that was smooth and almost invisible to the user."

 

They managed to do so, and the solutions and practices Ewelina and Jacek chose proved to be reliable for 4+ years now. Thanks to their hard work, the company has managed to collaborate with over 12,000 installers in more than 10 countries for the installation of solar panels. Their accomplishments have resulted in an impressive 7 GW installed solar power capacity.

Meet our Expert

The Conclusion

Creating an app for the sustainable industry is a unique challenge. It requires adapting to complex real-world factors, spanning from physics to geography to geometry. Developers must also learn across fields, using math to solved problems. This ensures the app remains fast and user-friendly, all while adhering to diverse regulations and standards.

 

It's a delicate balancing act, but one that can result in truly transformative solutions.

Frame 29 (3)
Frame 29-2
#Climatetech

Ready to extend your Teams?

Does this sound interesting to you? Let’s discuss your needs. We are here to think with you and explore the opportunity of team augmentation.

Leopold Founder of Amsterdam Standard
Leopold van Oosten CEO & Founder
Hi! I’m Leo.
In this introductory call:
  • I’ll listen to the problems you’re experiencing.
  • Strategise how to overcome them.
  • Show you some of our work.
  • Tell you about our pricing.
  • Answer any other questions you have!