Data Analytics and Reporting Engine Development

Our client, an energy retailer, was working with close to twenty different markets, and they had five different billing engines for these twenty markets. They asked us to create one centralized data repository, which entailed building a data integration architecture across all five of these different billing engines and turning that into a data warehouse. They also asked us to build analytical cubes so that some of the sophisticated users could use the “what if” analysis, or a scenario analysis while slicing and dicing different dimensions of their customer data.


Our client had five different billing systems – one proprietary/custom system and four commercially off-the-shelf billing systems – it was incredibly difficult to build a common metadata definition and establish a scalable and maintainable data hub. For the power users, they wanted to use the analytical cubes to know the retention rates by different markets, along with customer acquisition rates by different markets, and sales channel efficiency. They also wanted to ascertain the many insights around the GPM generated by different patterns by different brokers.


We asked ourselves how we could try to automate and integrate these different components, composed of five different systems, and create alerts and notifications for the system, with exceptions. For example, if one system has changed their data scheme, instead of engaging support people to find that out, we decided to create an alert and notification system so that it is optimized for human intervention.


We built a data repository and data feeds from all those initial systems into that centralized repository while providing a cube architecture that power users could use to search the datasets. Then, we transitioned into production support with a person here in Dallas and a person in New Delhi, which allows them to improve and expand on the day-to-day workflows continuously. We’re looking at trend analysis since, as with most data projects, issues arise, leading to more solutions, so it is an ongoing cycle.