About the client
Our client, a company in the energy sector, owns several power plant panels on different sites and is actively expanding its facilities. One of the representatives, the Head of Technical Oversight, highlighted the need to optimize their business operations by accurately monitoring the performance of numerous assets. The key requirement was a solution that could quickly display the status of each power plant on the interactive map. Essentially, the client waited for an MVP for us to launch and test the market demand. The main challenges for our client were the following:
- Lack of centralized analytics about each object
- No unified map or dashboard to track solar assets and maintenance status
- Disrupted communication between teams working across different sites
- Scaling operations to manage an increasing number of assets
- Real-time monitoring tasks’ status related to solar equipment groups or other energy infrastructure objects at any time
- Orientation of workers on the map shows the locations of teams and their progress
Our client had only a general requirement and required a team capable of shaping and delivering the complete solution. Thanks to our expertise in developing end-to-end solutions as part of our startup development services, the client entrusted us to take over this complex project and make an impact for the business.
Challenges in development
During the development stage of a web solution for energy sector management, our team faced several challenges:
- Real-time integration with IoT sensors to track panel performance
- Implementing a task and issue tracking system to manage incidents, scheduled tasks, improvements, and maintenance history for each panel
- A detailed record of changes to track the condition and upgrades of every inspanidual panel
- Addressing employee turnover by documenting planned tasks and deadlines for operational continuity
- Ensuring secure, role-based access
- Managing and scaling interactive objects like solar plants
- Cloud Microsoft Azure for global access, high availability, and backup
With the help of careful scoping and preparation done by our discovery team and extensive experience of our developers, we managed to mitigate potential risks and deliver the required outcomes efficiently and on schedule.
How the work was done
This web-site development project required a mathematical and data-driven approach to the system’s implementation. A key aspect of this strategy was the use of geospatial indexing. We needed the efficient handling and querying of location-based data across multiple solar power plant sites. It helped us make spatial relationships accurately calculated.
Using Agile methodology, we guided the project through all key phases: Discovery → UI/UX → Development → Delivery → Support. Clear delegation of technical responsibilities enabled the client to stay focused on business logic, without needing to directly engage in the development process.
We designed the remote solar panel task planning system architecture from scratch during our annual training program. The dedicated .Net team consisted of interns supervised by senior engineers as part of our C# .NET Full-Stack Bootcamp 2024: Two proof-of-concept ideas in one month. This working model allows our clients to receive a high-quality business solution at the most optimal rates on the market.
To reduce infrastructure costs, we hosted the solution on Microsoft Cloud and optimized environment, access management through Microsoft Entra. In addition, we trained the client’s team to efficiently use Azure Active Directory Domain Services.
Development process
To design this real-time solar panel reporting and performance tracking solution, we chose the following tech stack:
- Backend: .NET Core for a secure, reliable API layer
- Database: Cosmos DB for fast access to geodata and logs
- Frontend: Angular and SCSS for responsive UI
- Maps: OpenStreetMap for customizable interactive layers
- Auth & Roles: Entity Framework strengthened with role-based access for engineering team members (Admin, Editor, User)
- Caching & Storage: Data cached for faster UI response, primary data stored in SharePoint
- Cloud: Azure Functions are used for scalable data handling. We implemented the ability to handle a vast amount of emails by introducing a table to store email data and a background worker that processes and sends emails (alerts and reports) as system capacity allows.
- Analytics and reporting: Power BI integration helped us provide real-time dashboards for actionable insights.
Libraries and tools
Our development process prioritized not only functionality but also efficiency. We carefully selected libraries based on three main criteria:
- Alignment with required functionality and compatibility
- Trustworthiness of the sources and active community support
- Regular updates and positive developer feedback
Some of the key libraries we used include:
- Microsoft.EntityFrameworkCore
- Microsoft.EntityFrameworkCore.Cosmos
- Microsoft.Extensions.Configuration.Abstractions
- Microsoft.Identity.Client
It’s worth highlighting the use of the AutoMapper library in this project. We chose it because of its ability to significantly streamline data transformation between different layers of the system. For us, this feature allowed for efficient handling of spatial object data. Each location or solar site could be correctly mapped, filtered, and visualized according to its operational relevance. It enabled clean and consistent conversion of object properties (type, status, coordinates), making excluding irrelevant zones easier.
For the frontend built with Angular, we used OpenStreetMap. By doing so, our solution could show an interactive map with all the solar panels on different sites. OpenStreetMap helped us customize the map.
To make it easy for users to work with the map, we made sure that they can easily mark any area by placing four points on the map. This way, working teams can select and focus on specific groups of solar panels or zones, and the shape of the site is no longer a restriction, as it can be adjusted freely to match the real scope of work.
Thanks to Angular, the user interface works well on both computers and mobile devices. It updates in real time, showing the latest information about tasks and equipment right on the map. As a result, engineering teams can manage their work better.
How everything works
In our custom solar panel activity tracking online system, each solar plate in the facility in the database is linked to a specific map zone. By doing so, we made sure the solution provides visual traceability and streamlines operational oversight over different zones. The system supports full CRUD functionality for admin users and restricted, guided input for responsible engineering team members. Hence, everyone in the working group can get accurate, role-based updates and do more productive planning.
Thanks to cloud-native tools and thoughtful architecture, our solution is easily scalable for functionality expansion and can handle growing numbers of users and assets on the map, expanding geographies and solar facilities, and evolving feature requests smoothly.
This flexibility allows the client to grow their infrastructure while maintaining real-time visibility, operational control, and system reliability.
The results
In the end, we delivered a map-centric reporting solution that optimizes the client’s business operations by enabling:
- Thanks to Power BI integration, the amount of paperwork is eliminated, as online tasks and reports are now accessed online via mobile devices, with their history stored in SharePoint
- Seamless availability on mobile to desktop devices under a stable Internet connection
- High-level data security thanks to Azure.Identity, Azure Key Vault, restricted API access
- Integration with IoT sensors, including temperature, irradiance, voltage, current, power, and others, that help read the data for generating reports
- Real-time monitoring tasks’ status related to solar equipment groups or other energy infrastructure objects at any time
- View and update task statuses, quickly generate reports, and assign deadlines right on the spot
- Interactive data visualization on all kinds of mobile devices
- High flexibility of data handling, powered by Cosmos DB, that guarantees rapid geospatial queries and real-time log access
- Cloud-native architecture, ensuring global access, seamless scalability, built-in backups, and uninterrupted service availability
One of the core elements of this solar storage monitoring solution was the use of .Net AutoMapper, a library that automates the transformation of data between different object models. It helped us simplify and standardize how geospatial and operational data were converted between system layers.
Rather than manually mapping each data field between backend and UI models, with AutoMapper, our team could define conversion rules once and reuse them consistently. This allowed us to optimize the development process, reduce errors, and ensure data consistency across interactive map layers and dashboards.
For the frontend built with Angular, we integrated OpenStreetMap to display spatial data. To enhance user interaction, we implemented custom logic that enables users to highlight objects on the map by placing four points. This provided our solution with flexible adaptation to spanerse geographic layouts. Ultimately, the final solution was deployed to Microsoft Azure Cloud, where it is now actively used by the client’s engineering teams.
In this business case, we developed a solution from scratch. Businesses can approach us with an MVP, and we will provide additional human resources for product development or marketing, so the recipient organization gets the best industry professionals to spane into the unique business needs and problems quickly. Throughout the cooperation, the client’s team acquires knowledge in working with new technologies, enhances operational processes, and analyzes results, allowing for faster Return on Investment(ROI).
Look at our similar projects to better understand our scope of work and the value we bring to different businesses.
If you are interested in cooperation, explore Our Pricing | NETLS page. Contact us, and we will send you a comprehensive presentation about our achievements in developing end-to-end projects.