Motivation
The agency's original data operations were built within Salesforce — which was designed as a CRM, not a data warehouse. Data that came in from external sources had to be aggregated or reshaped to fit Salesforce's structure, which meant losing granularity before it could ever be analyzed. The platform also couldn't support the kind of forecasting, ML, or high-volume querying the analytics function increasingly needed.
Implementation
The migration centered on Amazon Redshift as the new analytics layer. Raw data from external sources — client data files, platform APIs, ads managers, and so on — is now stored at its most granular level, without reshaping. Salesforce continues to serve as the team's operational CRM, and Dagster pipelines keep the two systems in sync, reflecting data entry from other teams into Redshift as needed. The result is a foundation that supports fine-grained analysis, aggregation on demand, and the kind of workloads Salesforce simply couldn't handle.
Tools & Technologies