work / custom-reporting-department

Becoming the custom reporting department of an enterprise customer-success SaaS.

Industry
Enterprise SaaS, customer success
Client
Confidential
Duration
2 years
Model
On demand, reporting to the CTO
Role
Custom reporting department
01The problem

Every client wanted their own reports. Nobody wanted to learn the data model.

The company runs a customer-success platform that other businesses use to look after their own subscribers. Some of those businesses want to dig into their data, but learning the app's massive data model for a handful of reports never pays off. They needed someone to take the requests, understand them, and deliver. That became my job.

FormScreenshotsVideosPDFsEmailsExcel exports01Absorb02Understand03Design04Build in DOMO→Automated reportFormScreenshotsVideosPDFsEmailsExcel exports01Absorb02Understand03Design04Build in DOMO→Automated report
How a request moves: whatever the client sends goes in, a clean report that runs on its own comes out.
02Architecture

Before and after.

Before
Client requestsForms · screenshots · videos · PDFs · emails
Excel exportsDownloaded, then patched by hand
Translation
Reverse engineeringExcel logic → data model
After
DOMO reportsAutomated · clean · scalable
03Decisions
  1. Read what they mean, not just what they write

    Requests arrive however each client can send them: a form with context, screenshots, videos, PDFs, email threads, sometimes dozens of ambiguous asks. The work is figuring out what they actually expect to receive, beyond the literal wording.

  2. Reverse-engineer the spreadsheet

    The best case is an Excel export with manual logic layered on top. I rebuild that logic in DOMO so the report runs on its own: clean, automated, scalable, and with no manual inputs.

  3. Learn the data model once, and deeply

    The app's data model is massive. Knowing it, and each client, well enough means calls for context are rarely needed, so requests move without friction.

  4. Pay down inherited technical debt

    After a few new clients onboarded, globally shared custom reports fed by views suddenly exploded in DOMO virtual-row usage. The cause was logic left by a previous analyst: it worked for past cases but did not scale to more complex clients. I diagnosed it and rebuilt it.

04Stack
DOMODOMO DataSet viewsExcelData modelingReverse engineering
05Results
−0%DOMO virtual-row consumption of shared reports, indexed (before the fix = 100)

Real reduction. Absolute figures and the infrastructure bill are confidential.

  1. 80% less virtual-row consumption

    The shared reports dropped their DOMO virtual-row consumption by 80% without breaking anything, right before the company's annual meeting with DOMO, avoiding a significantly higher infrastructure bill.

  2. A business function, fully delegated

    After two years, the company has handed off custom reporting for its clients entirely, and trusts it to run without them.

Next step

Need a reporting department without hiring one? Let's talk.