data542.combellingham, wa

data542

Bruce McMinn — Data Architecture & Engineering

Every project on this site runs on a shared AWS foundation. Two production pipelines run on it today — a weather station feed updating nightly since 2023, and a daily equities scanner — with further projects planned on the same platform.

Platforms3://tempestdata-data542

The lake pattern

The projects here share one data lake design: a medallion architecture, with layers named for what they do rather than for the metals. Compute is matched to the workload, not standardized on one service — short ingestion and transformation jobs run on Lambda, while longer-running scans run as Fargate container tasks. Projects share a single S3 bucket, separated by prefix and governed by IAM roles scoped to each project's own data.

data542 platform architecture: Tempest and market data flow through Lambda and Fargate into an S3 medallion lake, then out via CloudFront to Power BI

When a failed wind sensor produced a month of bad readings, the fix was applied surgically in the reporting layer — nulling only the affected fields for the affected month — rather than rebuilding the silver layer.

A purist would push that correction into the lake; shipping it at the reporting layer preserved the raw record, fixed the published data the same day, and left a clean path to promote the fix upstream later. Knowing where to deviate from the textbook, and keeping the deviation documented and reversible, is most of what the pattern is for.

Architecture decisions, in full →
Livehistoric_data/

WeatherFlow Live Dashboard

Raw observations land from the WeatherFlow API exactly as received, giving every downstream step a replayable source of record. A cleaning pass repairs structural defects without touching granularity, at the station's native 1-minute resolution. A final aggregation builds a 5-minute materialized view — the only layer Power BI ever reads: roughly 272,000 pre-aggregated rows instead of millions, cheap to cache and fast to refresh.

View the live report →
WeatherFlow Live Dashboard in Power BI
Liveswing_trader/

Swing Trader

A containerized daily scan of high-volatility NASDAQ equities using ATR, RSI, Supertrend, and volume rules, appending to a growing scan history. The universe of scanned symbols rebuilds weekly; scans run each weekday after market close.

It runs on Fargate rather than Lambda for a specific reason: the scanner processes hundreds of symbols and can exceed Lambda's 15-minute execution ceiling. A single compute standard would be simpler to describe and worse to operate.

View the scan →
Swing Trader nightly scan in Power BI
Notebookeuro-forex

Euro on FOREX

An early exploratory notebook: twenty years of Euro exchange rate volatility across forty currencies, geopolitical events mapped against market movement, and an animated annual volatility world map. It predates the platform — a rebuild on it is on the roadmap below.

View the notebook →
Euro on FOREX annual volatility world map
Roadmapwhat's next on the platform

What's coming

Next

Best Washington Sunset

A one-time terrain analysis of west-facing viewpoints around Puget Sound — computing sunset azimuth against horizon profiles derived from USGS elevation data — to rank, for any date, which site offers the latest visible sunset and the longest civil twilight. Its heavy computation runs once, offline; the report reads a static result table, a deliberately different shape from the two scheduled pipelines.

Planned

FOREX modernization

The exploratory notebook rebuilt on the platform, with a currency-pair selector, multiple timescales, and a three-dimensional volatility visualization across twenty pairs.

Exploring

Marine Telemetry

An NMEA 2000 gateway capturing live data from an outboard engine and onboard instruments — fuel flow, heading, position — during time on the water. Unlike the platform's scheduled API pipelines, this data originates at the edge, collected in intermittent sessions and batch-uploaded to the lake afterward. Early targets: fuel-efficiency curves by speed, and cross-referencing heading against position to estimate the effect of current.

Deferred

The shared catalog — by design

A common bucket convention and a Glue Data Catalog across all projects, sequenced to begin once the Sunset project's requirements are concrete. Building them before the next project exists would mean designing for workloads that haven't taken shape. Knowing what not to build yet is an architecture decision too.