ARData with Ale

Case study 01 / Data engineering / Business intelligence

From distributor files to repeatable sales reporting.

Distributor submissions arrived in different formats, and recurring reporting depended on manual data entry. I designed and deployed the path from file intake to Power BI, giving the Sales team more consistent, granular reporting.

Outcome / Reduced dependence on manual data entry and made recurring sales reporting more consistent.

My contribution
End-to-end owner · Design, implementation and deployment
Primary users
Sales team
Project status
Deployed

01 / The problem

B2B Sales Data Platform

Different channel formats, corrected submissions and rolling reporting windows made it easy to duplicate records or confuse the latest stock position with historical trends.

Separate intake paths for General Trade and Modern Trade converge into governed reporting structures. Raw files remain replayable, while shared transformations prepare sales and stock for analysis.

  1. Receive & retainDistributor submissions → n8n intake → raw S3 archive. A human submission step remains.
  2. Validate & transformAWS Glue normalizes dates and identifiers, checks columns and handles duplicate submissions.
  3. Model for analysisParquet and PostgreSQL structures separate sales, current stock and weekly snapshots.
  4. Report & operatePower BI reporting, data-health views, correction guidance and user enablement.
Architecture redrawn for this case study with generic system labels. Technology: n8n · AWS S3 · AWS Glue · Python · Parquet · PostgreSQL · Power BI.

02 / See the work

A report that separates sales from stock

Recreated report concept with fictional values. Sales is a period measure; current stock is a point-in-time position.

B2B Sales Data Platform

Illustrative reporting view

Synthetic data · Not a live dashboard

Sales units · example week

  • General Trade640 units
  • Modern Trade480 units

Both bars use a 0–800 unit scale. These are illustrative quantities, not business results.

Stock position

320 units · latest snapshot

  • Previous weekly snapshot280 units
  • Change between snapshots+40 units
  • Reporting meaningPoint in time

Stock snapshots are compared across dates; adding them would double-count inventory.

Recreated specifically for this portfolio. No employer screenshots, source records or financial results are shown.

Before / correction arrives

A corrected file overlaps an earlier submission. Appending both versions would count some sales twice.

After / controlled reprocessing

Retain the original input, identify the affected reporting window and reload that scope using stable keys.

03 / Technical judgment

The decisions behind the result.

  1. Keep raw inputs replayable

    Preserving the submitted file and its metadata made corrections and troubleshooting traceable.

  2. Centralize transformation

    Thin intake workflows pass files to Glue, where validation and cleansing can be maintained consistently.

  3. Respect reporting grain

    Channel-aware identifiers avoid collisions. Current stock and weekly history have separate meanings and loading patterns.

  4. Deliver the operating process

    Submission templates, correction procedures, reference-data guidance and testing materials helped users operate the system.

View a simplified processing pattern
# Illustrative pseudocode — not production source
retain_original(submission)
rows = validate_and_normalize(submission)
keys = scope_identity_by_channel(rows)
reload_affected_sales_window(keys)
update_current_stock(rows)
write_weekly_snapshot(rows)

04 / Ownership & impact

What I delivered, and what changed.

My work and collaboration

I owned ingestion, transformation, relational modeling, BI reporting, monitoring, infrastructure guidance, testing and user enablement.

The solution still relies on people to integrate and submit distributor data. I documented that handoff and the correction process as part of delivery.

Outcome

The deployed platform reduced manual data-entry dependence, improved reporting granularity and introduced repeatable duplicate handling. Business-impact figures are omitted because they are not approved for public use.

Qualitative outcomes and usage status reflect my project account. Illustrative values above are not impact metrics.