Skip to content
Tanmay Patel
All work

Case study · Full-time · built from scratch

Solar project lifecycle & O&M platform

A solar developer ran every plant's lifecycle, from land and design through approvals, procurement and construction to O&M, on spreadsheets, shared drives and e-mail.

of solar plants in the system
180 MW
rows of SCADA data
10M+
internal and client users
~150

Context

The company develops, builds and operates utility-scale solar plants. Every plant goes through land acquisition, engineering, regulatory approvals, procurement and construction, followed by decades of operations and maintenance. Before this platform, that work ran on spreadsheets, shared drives and e-mail.

I built the product from scratch, from the company's initial idea and the first schema to a live system. It puts the whole plant lifecycle and the company's internal operations into one role-based platform, and gives the company's own customers a read-only portal to follow their plant.

What I built

Lifecycle stages
Land, Design, Statutory, Purchase, Execution and O&M per client site, with configurable process templates, document workflows (upload → review → approve), design BOMs, vendor cost comparison, material tracking and daily progress reports.
Operations & maintenance
Daily inverter and ABT meter generation, CUF, kWh/kWp and availability KPIs, SLDC reconciliation, module cleaning, checklists, spares and insurance tracking, plus nightly generation reports e-mailed to clients.
Live plant data
A scheduled worker pulls generation data from the inverter vendor's cloud (iSolarCloud) every 15 minutes and daily, configured from the database without restarts. A SCADA pipeline ingests telemetry through a Redis queue into month-partitioned tables that feed live dashboards and energy reports.
Procurement
Purchase orders with a layout designer that renders PDFs, tokenised public links for vendor quotes and registration, a queued vendor e-mail pipeline, and a purchase-order discussion chat over WebSockets.
Company apps
Invoicing and accounts, HRMS (employee master, attendance, leave, salary slips), a fixed-asset register, MIS reports and a super-admin console for sessions, permissions and telemetry.
Mobile app
A Flutter mobile app for attendance and O&M dashboards, used by field and client users.

Key decisions

  1. Horizontal scaling and zero-downtime deploys

    The API is horizontally scalable and highly available: load-balanced instances run behind Nginx with least-connections routing and automatic failover on 502/503/504. Deploys are zero-downtime, rolling and health-gated: readiness flips during shutdown, connections drain, then cron jobs, queues and WebSockets shut down gracefully. A fully automated CI/CD pipeline ships containerised builds through GitHub Actions and Docker Hub to a self-hosted runner.

Results

  • Live in production, used by about 150 internal and client users to run projects from procurement through operations.
  • Holds data for 180 MW of solar plants and 10M+ rows of SCADA data.
  • Hosting migrated from E2E Networks to AWS in December 2025, with object storage moved to S3.
  • Two engineers interviewed and onboarded, followed by a full handover to the internal team in August 2026.