← Selected work

2019 / Project Lead / Full Stack Developer

B2B Energy Platform

E.on is one of Europe's largest electric utility and energy companies.

EnergiePortal is a B2B platform for E.on subdiary companies. It allowed access and visualization to sensor data, energy consumption data and production data of millions of its customers.

Architecture

Microfrontends

Independent Team Modules

Frontend

Angular

Charts + Visualization

Backend

.NET

APIs + Automation

IoT

CosmosDB

Device Telemetry Ingestion

Problem Statement

E.on's subsidiary companies needed applications based on their custom needs. Some companies will need common features and some will need customized ones. A large monolithic project will be costly to maintain and develop as the repository grows larger. A single update on a feature of a subdiary tenant would mean an entire build and deployment of the whole ecosystem. I am proud of what the R&D has resulted and was happy with the challenge it took in the pre-AI era.

Key decisions

A centralized shell application

I presented and proposed a solution to the existing monolothic project to develop a shell application as a proof of concept. This shell application eventually became the current version and the monolithic app as the legacy. Each subdiary has single sign-on access, RBAC policies and only sees applications that they are subscribed to.

Microfrontends

A new idea can become its own application. Each application can have its own repository and a dedicated team maintaining it. The application when subscribed to by a subdiary company, is displayed to the shell application dashboard and loaded as a separate module on demand.

Charts and Visualizations

Built a D3 js library of charts and visualization to display millions of data points from sensor and smart meter data. Backend-for-Frontend was proposed and implemented to ingest and serve telemetry from CosmosDB via GraphQL.

Angular.NETC#Azure DevOpsTypeScript

Discuss this work →