Wark?
Chocobo

Achievement Unlocked!

Final Fantasy Mode Activated

Portland, OR - Data Platform, Engineering, Analytics

Data platforms
teams actually
want to use.

I'm Alex Norum. I've spent fourteen years working across data platforms, data engineering, and analytics. Most recently I owned LegalZoom's data platform end to end and led the team that ran it. Simple systems where the right way is the easy way.

01 - What I Do

Data Platform

Building and running the infrastructure, governance, and self-service tooling that data teams work on top of.

Data Engineering

Building pipelines with Airflow, Spark, and Kafka, along with the testing and monitoring that keeps them reliable.

Analytics

I started my career as an analyst. Data modeling, metrics, and reporting are still part of how I work.

Team Leadership

I led the data platform team at LegalZoom: hiring, mentoring, and planning, while continuing to write code.

AI & Automation

Building AI agents, MCP servers, and LLM tools on top of the data platform.

02 - Experience

Head of Data Platform LegalZoom · 2023 - 2026

Led the small team that owned LegalZoom's data platform - Snowflake, Airflow on Kubernetes, dbt, Terraform, and the self-service tooling around all of it.

  • Automated data access so teams got what they needed without tickets
  • Built AI tooling that took platform support off the team's plate
  • Automated the governance and privacy work that used to be manual
Principal Data Engineer LegalZoom · 2021 - 2023

Rebuilt LegalZoom's platform from a legacy stack to Kubernetes-native - Airflow, Terraform-managed Snowflake, and GitOps for everything.

  • Moved the platform to Kubernetes with everything managed as code
  • Wrote the platform standards and documentation the team still uses
  • Established self-service patterns so domain teams own their own data
Lead Data Analyst → Software Engineer, Data Platform New Relic · 2018 - 2021

Started as a data analyst and moved to the data platform team. Owned the platform roadmap, built blue/green deployments and testing frameworks, and brought dbt to the org.

  • Introduced dbt - first adoption across the data org
  • Built Spark pipelines ingesting 10+ sources into Delta Lake
  • Clickstream sessionization and self-service tooling for analyst teams
Senior Business Analyst Oracle · 2013 - 2018

Worked across R&D, manufacturing, and supply chain building analytics and migrating Oracle's worldwide SCM systems to cloud.

  • Cut forecasting pipeline runtime from 4 hours to 20 minutes
  • Built predictive models for manufacturing capacity planning
  • Led on-prem to cloud migration for worldwide SCM

University of Oregon - Information Systems and Operations Management

03 - Fun Projects

Things I build on nights and weekends.

PDX Train

Live

Is the train blocking the intersection?

  • Kafka
  • Iceberg
  • Postgres
  • k3s

Portland freight trains park across SE crossings, so this tells me before I leave the house. ODOT camera frames run through a Kafka and Iceberg pipeline on my k3s cluster, with Postgres and Cloudflare serving the live board.

  • Watching 6 cameras every 30 seconds since Aug 2026
  • Per-camera trained image classifier in production
  • ODOT never archives its footage, so this history exists nowhere else

Sightread

Live

Sight-reading practice for piano with a MIDI keyboard.

  • Astro
  • React
  • VexFlow
  • Web MIDI

Generates random but musically sensible sight-reading exercises for piano, from easy to brutal. Plug in a MIDI keyboard and it checks what you actually played, note by note.

  • Real sheet music notation rendered in the browser
  • Live feedback from a real MIDI keyboard
  • Same seed always generates the same exercise

SMO Save Editor

Stable

Rebuilt a lost Super Mario Odyssey save.

  • Python
  • binary formats

My nephew lost his Super Mario Odyssey save, so I built a save editor to rebuild his moon collection. It grew into a complete editor: every moon in every kingdom, viewable and editable by its real name.

  • Every moon editable by its in-game name, with search
  • Edits patch only the bytes it understands, the rest is untouched
  • Repairs saves where stored counts have drifted from reality

Homelab

Active

Not a showpiece. A place I break things.

  • k3s
  • ArgoCD
  • Strimzi
  • MinIO
  • Tailscale

A k3s cluster (nodes swagman-1 and swagman-2) plus a Raspberry Pi 5 running Home Assistant. Tailscale and Cloudflare tunnels for access, Strimzi Kafka, MinIO, and Iceberg for the data side. It runs PDX Train around the clock and whatever gets built next.

  • GitOps deploys via ArgoCD, everything in version control
  • Home Assistant with Zigbee and Lutron Caseta
  • Runs the PDX Train pipeline around the clock

mara-bot

Deprecated

A chatbot of my dog.

  • Python

A chatbot version of my labradoodle Mara that lived on an earlier version of this website. Retired, but preserved for the record.

04 - Stack

Snowflake Airflow dbt Kafka Terraform Kubernetes AI Agents & MCP

Core: Python · SQL · Airflow · Snowflake · dbt · Spark · Kafka · Flink · Kubernetes · Terraform · AWS

Also: Delta Lake · Iceberg · Postgres · Docker · GitHub Actions · GitOps

AI: LLM tooling · MCP servers · Agents · Slack bots · Claude Code and Cursor, daily

Honest levels: TypeScript and React: can build things, not expert

05 - How I Think

  • If people need to Slack you to use the platform, the platform isn't done yet.
  • Good guardrails beat good gatekeepers. Build the paved road, then get out of the way.
  • Make the secure path the easy path. If compliance feels painful, it's a design problem.
  • Solve the actual problem, not the one that lets you use the cool new tool.
  • A good runbook outlasts a heroic fix. Documentation is the real infrastructure.

And when you can't resolve ambiguity yourself: build the interface that lets the actual owner resolve it, and make the guardrails carry the risk.

06 - Off the Clock

12 Countries
30 Trips
10× Japan
  • Piano A few years in, taking lessons. Film scores, jazz standards, classical, some Ghibli.
  • Running Mostly to clear my head. Sometimes to train. Always tracking something.
  • Golf Trying to get better, tracking my misses, and regretting most 3-woods.
  • Snowboarding Winter weekends on the mountain.
  • Board games The shelf keeps growing.
  • Reading Sci-fi, philosophy, and whatever's been on the nightstand too long.
  • Mara A labradoodle. She had a chatbot once.
WORLD
LOADING WORLD...
BATTLE
BATTLE ARENA
Choose your encounter. Each boss guards real achievements.