Software Engineer

Building a SaaS Platform from Scratch

I developed solar energy system optimization tool, a comprehensive SaaS (Software as a Service) platform designed to democratize access to solar energy system planning. The core mission is to provide both individual and commercial users with the most cost-effective and efficient solar energy system configurations based on simple inputs, like daily electricity consumption.

The project was built upon a modern, decoupled architecture, with a clear separation between the frontend and backend, allowing for independent development and scaling.

Automated Product Catalog & Price Intelligence

To power the platform’s optimization engine with real-time, accurate data, I developed a dedicated web scraping service. This backend service automatically collects product, price, and stock information for key solar components (panels, inverters, cables, etc.) from various e-commerce and distributor websites.

Key features of the scraping module include:

  • Automated Product Discovery: The service identifies products that are not yet in our database, automatically adding them to the relevant product catalog. This ensures the system’s offerings remain constantly up-to-date.
  • Dynamic Price & Stock Tracking: It captures the latest price and stock availability for thousands of products, feeding this data into a centralized table.
  • Robust & Scalable Tech Stack: Built with Python using the Scrapy/Playwright framework, the service is containerized with Docker and runs as a periodic cronjob to ensure data freshness without manual intervention.

Architectural Philosophy & Technology Stack

Backend (API):

  • Built with FastAPI (Python) for its high performance and seamless integration with the core Python-based optimization and scraping modules.
  • Hosted on a DigitalOcean Droplet, the API runs as a systemd service behind an Nginx reverse proxy.
  • A Managed PostgreSQL instance serves as the database, storing user data, projects, and the extensive product catalog populated by the scraping service.
  • User authentication is secured using stateless JWT (JSON Web Tokens).
  • Transactional emails are handled reliably through SendGrid.

Frontend (Client):

  • Developed with Next.js 14+ (App Router) to achieve excellent SEO performance and a fast user experience.
  • The UI is a combination of Mantine UI and Tailwind CSS.
  • Global state management is handled cleanly with Zustand.
  • The entire frontend is hosted on Vercel, benefiting from its seamless CI/CD pipeline.

This project was a deep dive into full-stack application development, from data acquisition and system architecture to secure deployment and product launch.

tech stack / keywords

  • SaaS Architecture
  • Web Scraping / Data Acquisition
  • FastAPI / Python
  • Scrapy / Playwright
  • Next.js / React
  • PostgreSQL
  • JWT Authentication
  • Docker
  • Vercel / DigitalOcean