Innovation in Renewable Energy and Companion Apps
Some time ago we hosted Michał Czmiel, Tech Lead and Software Architect at Boldare, to discuss innovations in the renewable energy sector and how companion apps are transforming the industry. Michał shared his insight on the challenges of integrating technology in renewable energy systems and how companies can use companion apps to enhance user experience, streamline operations, and boost profitability. Curious about how tech is making a difference in renewable energy and what best practices can make these applications resilient and user-friendly? Read on or watch the interview.
Table of contents
Oskar: I’m extremely thrilled to welcome one of my colleagues from Boldare, Michał Czmiel. Michał is our tech lead and software architect with extensive experience in the renewable energy sector. Can you explain to our audience what a companion app is, especially in the context of renewable energy?
Michał: A companion app in renewable energy is an application that complements the hardware product. It enhances the value of the hardware by giving users access to additional features and information about their system. For instance, users can monitor live data - like how much energy their panels are generating or what’s in storage. They can also view historical data, control the system or access customer support if needed. Businesses, in turn, can use companion apps as communication channels with their customers.
Some companies use off-the-shelf solutions, while others opt for custom-built ones. Off-the-shelf solutions are faster and cheaper to implement, but custom-built apps offer more flexibility and deeper integration of features, which is invaluable for analytics and understanding users.
Oskar: So, companion apps can also help businesses generate more profit. How do these apps create that value?
Michał: Absolutely. Let’s say you have two similar hardware products, such as PV panels and energy storage units. The quality of the companion app - how well it enhances user experience and provides insights - can be a deciding factor for customers. If the price and performance are similar, customers will often choose the product with the better app.
A well-designed companion app can also offer features like weather-based predictions, energy consumption monitoring, and integration with other devices like electric vehicles. These added functionalities make the app more useful and can even streamline the onboarding and maintenance process, making it easier for users to adopt the product.
Oskar: Last time, we discussed how challenging it can be to provide data in a user-friendly way in this sector. What are some challenges in terms of tech integrations, and how have you approached them?
Michał: The biggest challenge is the diversity of data formats and the requirements of different partners. Integration involves both importing and exporting data, which means you need stable systems to manage data validation and ensure everything is consistent.
One way to handle this complexity is by setting standards - like using OpenAPI for APIs or async API for event-driven systems. You also need to decide whether to have generalized access for all partners or specialized access tailored to each partner’s needs. In my experience, the latter approach provides better control.
Oskar: With the renewable energy market evolving rapidly, how can developers make their code resilient to change?
Michał: Good question. The industry is evolving fast - new products, new regulations, and changing user expectations are common. To keep up, we need a modular and loosely coupled architecture that allows changes without affecting the entire system.
I recommend a server-driven front-end approach, where most logic resides on the server, allowing quick updates without needing users to update their apps.
Testing is also crucial - both unit testing for low-level components and integration testing for broader functionalities. Using feature flags can help roll out new features gradually. Additionally, following practices like DORA metrics can improve development speed and resilience.
Oskar: How about cloud services? How are they used in renewable energy applications, and do they pose any challenges?
Michał: Cloud services are heavily used in renewable energy apps because they make scalability and data storage easier. They allow scalability not only in terms of user growth but also in handling peak loads - like when many users want to check their PV production during sunny periods. The cloud also supports data storage across different formats, from relational to non-relational data.
Data privacy and geolocation are other areas where cloud services shine, as they make it easier to ensure data compliance by region.
Oskar: From your experience, what are some key lessons or best practices for developing successful renewable energy companion apps?
Michał: Here are a few lessons:
- User Experience is Key: Prioritize an intuitive interface, actionable data, and streamlined onboarding. Follow mobile app design principles to make it feel native.
- Data Integration: Support two-way data transfer using standardized APIs to ensure seamless integration with other partners.
- Cloud-Native Approach: Adopt cloud-native architectures for scalability, security, and speed.
- Code Resilience: Ensure that your software empowers, rather than restricts, the business. This means using backend-driven front ends, having a modular architecture, and investing in a reliable testing suite.
- Knowledge Sharing Culture: Encourage cross-functional collaboration so that everyone: developers, designers, business people, understands the product and its value.
Oskar: Fantastic insights, Michał. Thank you so much for sharing your knowledge with us.
Michał: Thank you, Oskar. It’s been a pleasure.
Share this article: