Fouzan Ahmed.

Projects

Six builds, one thread: data in, decisions out

Each one covers a different part of the stack, warehousing, orchestration, streaming, geospatial, and applied AI. Every card links through to the problem, the architecture and the code.

Personal / Portfolio project

Problem

APRA publishes superannuation performance data as unversioned Excel filings, with no API and no easy way to compare funds over time.

Key result

Weekly pipeline runs unattended end to end, gated by dbt tests and CI, feeding a live 3-page Power BI dashboard.

PythonApache AirflowdbtAWS S3AWS RDSAWS EC2+8 more

Personal / Portfolio project

Problem

Backtesting a forecasting model on financial time series is easy to get subtly wrong: without point-in-time discipline, the model ends up training on information it wouldn't have had yet.

Key result

A clustering key fix cut partitions scanned on date filters by roughly an order of magnitude, and Time Travel snapshots kept lookahead bias out of every backtest.

SnowflakeSQLPythonAWS S3Streams & TasksWindow Functions+6 more

Personal project

Problem

Producing a newsletter and a companion video from breaking news end to end usually means a person doing research, writing, narration and publishing by hand, every single cycle.

Key result

The workflow runs from trigger to published newsletter and video with no manual step, and recovers from failures instead of stopping cold.

n8nLangChainLangGraphRAGMCPClaude API+5 more

Individual project, Monash University FIT5202 Big Data Processing

Problem

A delivery-time prediction only matters if it's ready before the order needs a driver assigned, which rules out batch scoring after the fact.

Key result

Inference runs inside the stream itself, scoring available drivers per order and assigning the fastest, with live choropleth maps refreshing every 15 seconds.

Apache SparkPySparkKafkaSpark Structured StreamingMLlibPython+3 more

Team project, Monash University

Problem

Flood, bushfire and heat risk data for a given Melbourne suburb is scattered across shapefiles, historical station records and separate forecast feeds, with no single place that turns it into a suburb-level answer.

Key result

A weighted spatial risk score (60% flood zone intersection, 40% historical fire frequency) turns five raw data sources into a single Low-to-Very-High rating per suburb.

PythonFastAPIPostgreSQLPostGISMapbox GLGeoJSON+4 more

Hackathon project, Grand Challenge

Problem

Online harm rarely shows up as a single flagged word, it spans grooming progression, deepfakes, coordinated attacks and video content that text-only moderation tools don't see.

Key result

Around 5,000 lines shipped inside a hackathon window, with 90+ detection patterns across 8 threat categories and multi-modal analysis of text, images and video.

ReactNode.jsExpressTypeScriptOpenAI GPT-4Google Gemini+4 more