All work

E-Commerce Customer & Product Analytics Platform

From raw clicks and orders to answers about customers and products.

Role
Data engineer · personal project
Status
Personal project
Stack
Python · SQL · PySpark · Databricks · Delta Lake · BigQuery · Pub/Sub · Apache Airflow

A personal project. It is not a retailer’s or an employer’s production system.

How it fits together

A simplified illustration of a personal project. No real customer or store data is shown.
01

Context

An online store produces data in many shapes: catalogue updates, orders and payments, stock levels and a constant stream of website interactions. Each answers different questions, and they rarely line up on their own.

I built this platform to ingest all of it, transform it at scale and model it for business intelligence and customer analytics.

02

Constraints

  • Website interaction data is high-volume and event-driven, unlike the batch extracts from order and inventory systems.
  • Late or duplicate records must not distort sales and inventory figures.
  • Analysts need fast, predictable queries over a model they can understand.
03

What I built

  • Python and SQL ETL/ELT pipelines for customer, product, order, payment and inventory data, with Cloud Storage holding raw and processed datasets.
  • Event-driven ingestion of website interactions using Pub/Sub.
  • PySpark transformations on Databricks with Delta Lake tables across Bronze, Silver and Gold layers.
  • A star-schema model with fact and dimension tables, loaded into BigQuery for reporting.
  • Incremental loading and data-quality checks, orchestrated with Apache Airflow and Cloud Composer.
  • Optimized SQL and processing jobs for analytical performance.
  • Exploratory GenAI work on product recommendations and natural-language questions over the sales data.
04

Tradeoff: Delta Lake for processing, BigQuery for serving

Running two engines is more to operate than one. Delta Lake handles large PySpark transformations and late-arriving data well, while BigQuery gives analysts fast SQL without managing clusters, so each layer uses the tool that suits it.

05

Outcome

Analytics-ready datasets for customer behaviour, product performance, sales and revenue trends, and inventory management.