King George, VAgaryleeblevinsjr.com
Home/Work/Projects/Risk data transformation

Case study · GEICO Enterprise Risk Management · 2024 to present

From manual pulls to one risk story.

How I took risk and control reporting from weekly manual data pulls to automated hourly refreshes, then used the time that freed up to build data quality checks, a shared semantic model, Copilot data agents, and now the Risk & Control Hub. Each stage made the next one possible.

Principal Finance Data Analyst, Enterprise Risk Management · GEICO

Issue Management reporting
2 days to hourly
Refresh cadence
Weekly to hourly
Power BI dashboards
35+ centralized
Programs supported
4 programs

Programs: Internal Controls, Risk, Remediation, and Policy Exceptions. The diagrams on this page are simplified illustrations, not screenshots, and contain no GEICO data.

Where it started

A week of reporting, by hand.

At the start, the reporting ran on a weekly cycle of manual work: pull the data, clean it up, and republish the dashboards, by hand, every week.

For Issue Management, that cycle took two days. By the time a report was published, the data was already getting older, and it kept aging until the next week's pull. Every hour spent pulling and republishing was an hour that couldn't go into improving the data or the questions we were asking of it.

So the first job was clear: take the people out of the copy-and-paste loop.

Before and after

Weekly by hand, then hourly on its own.

Issue Management reporting went from a two-day manual weekly process to a fully automated platform with hourly refreshes through API integrations.

BeforeA weekly, manual cycle
  1. PullExport the data by hand
  2. CleanFix and reshape it
  3. RepublishRefresh the dashboards by hand

Two days of manual work Data ages until next week

AfterAn automated, hourly pipeline
  1. Automated pullsPower Query, Reporting Services, APIs
  2. ValidatedStandard field checks
  3. RefreshedEvery hour, no one pressing publish

One day, refreshed every hour

The stages

Each step unlocked the next.

None of this was planned as one big bang. Automation bought back time, and that time went into the next layer.

  1. 01

    Automate

    Weekly manual pulls became automated pulls through Power Query, Reporting Services, and APIs.

    UnlockedHourly data, and hours back every week

  2. 02

    Hygiene

    Dashboards that watch the quality of data entered in Optro and ADO, with standard field validation.

    UnlockedData the team can trust, fixed at the source

  3. 03

    Semantic model

    The automated data consolidated into a shared semantic model, next to a centralized portfolio of 35+ Power BI dashboards.

    UnlockedOne consistent base to build on

  4. 04

    Copilot agents

    Data agents in Microsoft Copilot, layered on the model, so the team can ask questions in plain language.

    UnlockedSelf-service exploration

  5. 05In progress

    Risk & Control Hub

    Bringing it all together in Snowflake, with data standardized across platforms.

    UnlocksOne holistic ERM story

Stage 01 · Automate

Stop pulling, start piping.

I replaced the weekly pulls with automated ones, built with Power Query, Reporting Services, and API integrations.

Issue Management reporting went from a two-day manual weekly process to a fully automated platform that refreshes every hour. Going from weekly to hourly was a huge win: the numbers now reflect the last hour, not last week.

I redesigned Remediation reporting the same way, with automation and analytics that give near real-time visibility into remediation work, so leadership can follow progress and spot emerging risks as they happen.

Just as important, the hours that used to go into pulling and republishing came back to the team. Everything after this stage was built with that time.

Stage 02 · Hygiene

Fresh data is only useful if it's right.

Once the data refreshed on its own, I could start watching its quality all the time, not just once a week.

So I built hygiene dashboards that monitor the quality of the data entered into Optro and Azure DevOps (ADO). They flag missing and invalid fields, like a record without an owner or a date that doesn't make sense, so the team can find and fix the problem quickly, at the source.

Behind them are data governance and quality controls across Issue Management and Remediation, with standardized field validation and monitoring. The result is more accurate, more consistent, and more reliable reporting.

Hygiene scorecard

What a hygiene check looks like

Example data
Example hygiene scorecard with made-up numbers: field checks, records flagged, and records fixed
CheckSourceFlaggedFixedProgress
Owner is missing · OptroOptro1212Clear
Due date is missing · OptroOptro972 open
Status isn't an allowed value · OptroOptro55Clear
Target date is before the open date · OptroOptro431 open
Work item has no linked record · ADOADO761 open
Required field left blank · ADOADO66Clear
This example week43394 open
Example data: the checks and numbers are made up to show the idea. Each check is a validation rule; the dashboard lists the records that fail it, so whoever owns the record can fix it.

Stages 03 and 04 · Model and agents

One model, then questions.

With the data automated and checked, I consolidated it into a shared semantic model.

Alongside it, I built and centralized a portfolio of 35+ Power BI dashboards across Internal Controls, Risk, Remediation, and Policy Exceptions. Having the data and the dashboards in one place means people start from the same numbers instead of their own copies.

The model also made the next step possible: AI-enabled data agents in Microsoft Copilot, layered on top. Instead of waiting for a new report, people can ask a question in plain language and explore the risk and control data themselves.

I'll be honest: Copilot isn't perfect. It can misread a question, and it's not a replacement for a well-built dashboard. But as an exploration tool it's great. It gets people to a first answer fast, gives stakeholders self-service access to risk and control insights, and reduces reliance on manual reporting and analysis.

How it fits together

The architecture.

A simplified view of the flow, from the platforms where risk work is recorded to the dashboards, checks, and agents people use.

1Sources

  • Optro
  • Azure DevOps (ADO)
  • Other risk and control platforms

2Automated pulls

  • Power Query
  • Reporting Services
  • APIs

Scheduled refreshes, hourly for Issue Management

3Semantic model

  • Consolidated, automated data

4What people use

  • Power BI dashboards 35+
  • Hygiene dashboards
  • Copilot data agents

5Risk & Control Hub

  • Snowflake
  • Standardized across platforms

In progress

Stage 05 · Where it's heading

One place, one story.

The time we no longer spend pulling and republishing now goes into the biggest step yet: bringing everything together in the Risk & Control Hub, built on Snowflake.

The work is standardizing data across platforms, so issues, remediation, controls, and policy exceptions line up and can be read side by side instead of in separate silos.

The 35+ dashboards and the governance behind them are the foundation for the move to the Enterprise Risk Management and Risk & Control Hub operating model. Soon that foundation will let us tell a holistic ERM story, one view of risk across the enterprise, instead of a handful of separate ones.

Internal ControlsRiskRemediationPolicy Exceptions
One standardized ERM viewRisk & Control Hub · Snowflake · In progress
Where it's heading: separate programs and platforms, standardized and read together as one view of enterprise risk.

Why it matters

The big picture.

  • Timeliness: Issue Management reporting that refreshes every hour instead of once a week, and near real-time visibility into remediation.
  • Trust: standardized validation and hygiene dashboards that catch bad or missing data where it's entered.
  • Consistency: 35+ dashboards across four programs, centralized in one place.
  • Self-service: Copilot data agents that let people explore the data without waiting on a manual report.
  • Foundation: the data groundwork for the Enterprise Risk Management and Risk & Control Hub operating model.
Power BIPower QueryReporting ServicesAPIsSemantic modelCopilot data agentsSnowflakeData governance

See my full experience · ← All projects