A complete, local-first reference implementation of a commercial customer and product analytics platform: behavioural event modelling, governed funnel/retention/churn/segmentation/recommendation analytics, A/B experimentation, a Redshift-compatible dbt warehouse, Customer 360, propensity, LTV, attribution, and executive/Power BI-ready reporting. Everything runs on synthetic data with no cloud dependency, and is designed for portfolio review, technical interviews, and architecture discussion for senior analyst, SQL, predictive analytics, and customer analytics roles.
- Product and customer analytics: funnels, retention/cohorts, churn, segmentation, recommendations, experimentation, and a Customer 360 view built from behavioural and revenue data.
- Advanced SQL and analytics engineering: a Redshift-compatible dbt warehouse (staging → intermediate → marts) with window functions, event sequencing, and revenue/attribution modelling.
- Behavioural event modelling: a Snowplow-style event contract mapped from clickstream data into governed staging.
- Predictive and decision analytics: leakage-aware churn, propensity, and LTV models with transparent assumptions and metric caveats.
- Commercial storytelling: descriptive attribution, decision-intelligence outputs, and executive/Power BI-ready reporting artefacts.
- Engineering discipline: deterministic pipelines, contracts, lineage, quarantine handling, and reproducible evidence for every stage.
The commercial augmentation extends the core platform with senior-analyst-aligned evidence:
- Snowplow-style behavioural event contract and clickstream mapping.
- Redshift-compatible dbt warehouse with local, credential-free validation.
- Customer 360, subscription growth, marketing attribution, propensity-feature, and LTV-feature SQL marts.
- Deterministic evidence for synthetic campaigns, touchpoints, revenue events, and customer metrics.
- Propensity, LTV, descriptive attribution, decision intelligence, Excel-friendly CSVs, and executive storytelling artefacts.
Evidence lives under docs/evidence/commercial-augmentation/; the dbt project lives under dbt/. Details: docs/architecture/commercial-customer-analytics.md, docs/architecture/customer-360-and-commercial-marts.md, docs/architecture/dbt-redshift-warehouse-layer.md, docs/architecture/snowplow-style-event-model.md, and docs/architecture/propensity-ltv-attribution.md.
flowchart LR
A[Synthetic product sources] --> B[Event and batch ingestion]
B --> C[Raw data layer]
C --> D[Validation and quarantine]
D --> E[Curated behavioural data]
E --> F[Product analytics and feature engineering]
F --> G[ML and experimentation]
G --> H[GenAI insight generation]
H --> I[Power BI-ready serving outputs]
I --> J[Monitoring and governance]
Twelve milestones implement this pipeline end to end, plus the commercial customer analytics augmentation. Every Azure-shaped component (Event Hubs, ADLS Gen2, Synapse/Redshift-style warehousing, Azure ML, Azure OpenAI, Power BI, Monitor, Purview, Key Vault, Entra ID) is implemented locally with a documented mapping rather than deployed. Full service-by-service mapping: docs/architecture/local-to-azure-mapping.md and docs/architecture/azure-service-mapping.md.
Everything here runs locally on synthetic data. Explicitly not part of this repository:
- No real customer data — synthetic NexaFlow data only.
- No live Redshift, Synapse, or Snowplow collector.
- No Azure deployment, service principals, or provisioned resources.
- No dbt Cloud — dbt runs and is validated locally.
- No Power BI Service and no
.pbixfiles — only Power BI-ready tables and semantic specs. - No live Azure OpenAI calls — GenAI insights use a deterministic, offline template provider by default.
Every milestone and the commercial augmentation write compact, deterministic evidence (metrics, lineage, manifests, model cards, executive reports) that is committed to the repo and independently reproducible. Start here:
- Read this README.
- docs/portfolio/recruiter-summary.md — 30-second recruiter skim.
- docs/portfolio/technical-review-guide.md and docs/portfolio/senior-analyst-role-walkthrough.md — technical and commercial-analyst review paths.
- docs/portfolio/customer-analytics-interview-guide.md — SQL/dbt, propensity, LTV, attribution, and storytelling talking points for interviews.
- docs/evidence/README.md and docs/evidence/commercial-augmentation/README.md — full evidence index.
- docs/architecture/final-azure-reference-architecture.md — end-state architecture and deployment mapping.
- Run the core commands below to reproduce the evidence yourself.
python -m venv .venv
source .venv/bin/activate
make install
make quality # lint, type-check, test
make verify-portfolio # verify all milestone + commercial evidence
make build-commercial-analytics # build the dbt/customer analytics evidence
make verify-commercial-analytics-evidence # verify commercial evidence checksums
make dbt-parse # validate the dbt project locallymake help-style discovery: every pipeline stage has matching make <stage>-sample and make verify-<stage>-evidence targets (see the Makefile) for ingestion, funnels, retention, churn, segmentation, recommendations, experiments, product insights, and reporting. Runbooks with full CLI usage live under docs/runbooks/.
.
├── .github/workflows/ # CI quality workflow
├── configs/ # Safe local and Azure example configuration
├── data/ # Empty retained local data zones
├── dbt/ # Redshift-compatible dbt warehouse project
├── docs/ # Architecture, ADRs, governance, evidence, portfolio guides
├── infrastructure/ # Bicep/Terraform mapping skeletons
├── outputs/ # Local generated outputs, ignored by Git
├── reports/ # Local generated reports, ignored by Git
├── src/product_growth_intelligence/
│ ├── analytics/
│ ├── data_generation/
│ ├── experiments/
│ ├── features/
│ ├── genai/
│ ├── ingestion/
│ ├── models/
│ ├── monitoring/
│ ├── recommendations/
│ ├── reporting/
│ └── validation/
└── tests/
├── integration/
└── unit/
All 12 milestones plus the commercial customer analytics augmentation are complete, and CI is green.
Milestone 1 — completed
Milestone 2 — completed
Milestone 3 — completed
Milestone 4 — completed
Milestone 5 — completed
Milestone 6 — completed
Milestone 7 — completed
Milestone 8 — completed
Milestone 9 — completed
Milestone 10 — completed
Milestone 11 — completed
Milestone 12 — completed
| Milestone | Scope | Status |
|---|---|---|
| 1 | Repository foundation, config, CI, governance | Completed |
| 2 | Synthetic NexaFlow product data generation | Completed |
| 3 | Event ingestion, validation, quarantine | Completed |
| 4 | Governed funnel analytics | Completed |
| 5 | Retention and cohort analytics | Completed |
| 6 | Leakage-aware churn prediction | Completed |
| 7 | Governed user segmentation | Completed |
| 8 | Recommendation baseline | Completed |
| 9 | A/B experiment analysis | Completed |
| 10 | Deterministic GenAI product insight assistant | Completed |
| 11 | Power BI-ready reporting layer | Completed |
| 12 | Final Azure architecture and portfolio polish | Completed |
| — | Commercial customer analytics augmentation (dbt, Customer 360, propensity, LTV, attribution) | Completed |
This is a production-style local reference implementation, not a deployed production system. Synthetic data enables reproducible review but does not replace production data governance, privacy review, access control, scale testing, model-risk validation, cost management, incident response, or operational ownership. A live Azure deployment, real customer data, or a production Power BI/dbt Cloud rollout would each require a separate implementation and approval process. All predictive outputs (churn, propensity, LTV) are synthetic-data demonstrations and must not be used for automated adverse decisions.