Projects

Projects

A selection of projects that show the kind of work I do most often: make something clearer, more reliable, and easier for another person to use.

How to read this page

These are case notes, not thumbnails.

Each project opens into a short note on the problem, what was built, and what changed. The page is meant to stay easy to scan before it asks for more attention.

More builds

More systems and smaller builds that show the same preference for useful outputs and clear handoffs.

Professional work · KPI governance · Semantic layer · BI

Shared KPI Layer for Product and Ops

Built a KPI layer that gave product, ops, and finance teams one shared reporting language.

It shows that good reporting starts before the chart, at the definition and ownership layer.

Open project note

Leadership meetings kept stalling because each team had its own version of the same KPI.

State one KPI language
Build cleaner weekly reviews
Result less reporting churn

What changed

  • Unified event, warehouse, and reporting logic behind a governed metric layer instead of dashboard-specific calculations.
  • Added QA checks, ownership metadata, and freshness monitoring so executive metrics behaved like maintained products.
  • Supported drill-down workflows for operators and leaders instead of a single static dashboard.

Why it helped

The dashboard only became useful once the definitions settled down. After that, the meeting could move from reconciliation to decision.

SQL · dbt · Power BI · Azure SQL · QA monitoring

View role context

Professional work · BizOps · Executive reporting · Prioritization

BizOps Control Tower

Built a leadership view that pulled blockers, priorities, and weekly operating signals into one place.

It shows analytics helping leaders decide what to do next, not just summarize what already happened.

Open project note

Important updates were spread across decks, sheets, and team dashboards, so blockers stayed hidden too long.

State clearer priorities
Build faster leadership prep
Result better view of blockers

What changed

  • Combined initiative tracking, KPI monitoring, and bottleneck views into one reporting surface.
  • Built drill-down views and weekly review packs so leadership could move from status collection to prioritization.
  • Made trade-offs explicit by tying project health back to shared business measures instead of isolated team updates.

Why it helped

The key shift was simple: the review stopped being a recap and started acting like a working control room.

SQL · Power BI · Excel · Operational reporting · KPI design

View role context

Professional work · Retention · ML · Intervention design

Churn and Retention Early Warning

Turned product, billing, and support signals into a workflow that helped teams spot retention risk earlier.

It shows model work being used inside a real operating loop instead of ending at a score.

Open project note

A churn score by itself was not useful enough. The team still needed a clear order of action and a way to know when the model had gone stale.

State earlier risk signal
Build clearer outreach order
Result model stays useful longer

What changed

  • Combined behavioral, billing, and support features into a ranked risk model for at-risk accounts.
  • Focused evaluation on actionability with calibration checks and intervention-aware thresholds.
  • Added CRM integration, drift checks, and outcome feedback so the model stayed useful after launch.

Why it helped

The model only became valuable once it helped a team decide who to contact first and when the scoring needed another look.

Python · SQL · scikit-learn · Snowflake · Monitoring

View role context

Professional work · Compliance · SLA monitoring · Operational analytics

Compliance Review Operations

Turned compliance intake, backlog, and review status into a workflow leaders could actually manage.

It shows operations work in a high-stakes setting where the queue itself has to be easy to inspect.

Open project note

The review queue was hard to read, which made delays and audit follow-up harder than they needed to be.

State visible review queue
Build cleaner status language
Result faster audit follow-up

What changed

  • Centralized intake, inventory, review status, and evidence tracking into one operating view.
  • Added structured status language, aging logic, and escalation alerts so SLA risk became visible earlier.
  • Organized artifacts into a searchable repository that made audits and follow-up easier.

Why it helped

The project worked because it made the queue easy to read. Once the workflow had clear status language and a shared structure, leadership could manage risk with less guesswork.

SQL · Power BI · Workflow tooling · Documentation · Reporting

View role context

Professional work · Pricing · Simulation · Revenue analytics

Pricing Scenario Workbench

Built a pricing workbench that let teams compare trade-offs before making a pricing move.

It treats pricing as a decision process, not a single answer from a model.

Open project note

The team needed a better way to compare pricing paths without arguing from instinct alone.

State clearer pricing trade-offs
Build same-day scenario review
Result more trustworthy rollout checks

What changed

  • Modeled historical price-demand behavior with business-rule constraints such as margin floors and segment-level trade-offs.
  • Built a scenario engine and dashboard that let operators compare candidate prices instead of accepting one opaque answer.
  • Tracked realized versus predicted lift so the model could earn trust over time.

Why it helped

The useful part was transparency. People could see the assumptions, compare paths, and check whether the recommendation held up after rollout.

Python · SQL · Optimization logic · Power BI · Scenario modeling

View role context

Independent build · Analytics · Data product · Education

craveforcapes

Turned UC San Diego CAPE data into a live course-selection tool.

It is a smaller project, but it shows the same habit of turning raw data into something directly useful.

Open project note

Course evaluation data is only useful if people can compare it quickly enough to make a decision.

State usable course explorer
Build faster class comparison
Result data turned into a tool

What changed

  • Pulled and structured CAPE data into a usable exploration surface.
  • Focused the interface on direct comparison and decision support instead of a raw table dump.
  • Kept the project lightweight enough to feel more like a tool than an analysis artifact.

Why it helped

It is a small project, but it makes the same point as the bigger ones: information becomes more valuable when someone can act on it quickly.

JavaScript · Data wrangling · UI implementation

Open live project

Independent build · GTFS · Transit · Tooling

GTFS Explorer

Built a GTFS tool that makes route and stop analysis easier to search and explore.

It connects transit systems work with a tool that feels closer to something an operator could actually use.

Open project note

The goal was to build something closer to an operator tool than a notebook: responsive enough for schedule exploration, but still capable of search-based planning.

State planner-friendly GTFS view
Build faster schedule lookup
Result search that stays usable

What changed

  • Normalized GTFS tables for stops, routes, trips, stop times, and calendars so the data could support interactive use.
  • Added cached indexing and fast timetable lookup patterns to keep the interface usable on larger feeds.
  • Implemented coverage-guided adaptive beam search so multi-stop planning stayed feasible under real compute limits.

Why it helped

This sits in a part of the work I enjoy a lot: technical logic that still has to become a usable tool for another person.

Python · Streamlit · NumPy · pandas · Search heuristics

Open live demo

Utility · Automation · iOS · Personal tooling

Morning and Night Automation

Built a lightweight iOS shortcut workflow that turns a repetitive personal task into a simple automation.

It is a small example of the same instinct toward removing manual overhead with a direct solution.

Open project note

The problem was deliberately ordinary: if a task repeats often enough, it deserves a workflow instead of another reminder.

State small task removed
Build routine feels automatic

What changed

  • Built a small automation that removed a recurring manual step.
  • Kept the flow simple enough that using it never became its own maintenance burden.

Why it helped

It is a tiny project, but it follows the same instinct as the bigger work: remove friction and leave behind a simpler process.

View details

Transportation and planning

Work that shows the wider context behind the rest of the portfolio.

Research · Economics · Planning · Policy

UC San Diego Debt and Planning Analysis

Looked at long-term debt and campus planning trade-offs at UC San Diego through a business and policy lens.

It adds institutional analysis and economic reasoning to the broader systems perspective running through the rest of the portfolio.

Open project note

The project asked whether capital decisions and parking strategy were being framed too narrowly in a campus planning context.

State finance trade-offs easier to read
Build planning context made visible

What changed

  • Combined institutional finance, planning constraints, and narrative analysis.
  • Used the project to reason about incentives instead of isolated infrastructure choices.

Why it helped

It is a quieter project, but it helps explain why incentives and public-system design keep showing up in how I frame technical work.

Read analysis

Research · Sustainability · Transportation · Writing

Greenhouse Gas Reduction Essay

Wrote a transportation planning essay on how mode access and community design affect emissions outcomes.

It shows how transportation and policy questions continue to shape the way I think about system-level outcomes.

Open project note

The essay tried to connect emissions outcomes back to planning choices instead of treating them as a purely technical problem.

State systems argument made clear
Build policy trade-offs easier to follow

What changed

  • Framed emissions through access, mode choice, and urban form.
  • Used policy writing to make systems trade-offs clear without a technical stack.

Why it helped

It belongs here because the portfolio would feel incomplete without the public-systems questions that keep shaping my technical taste.

Open PDF
Archive and shelved work

Older work that still says something useful about judgment, constraints, or where a project stopped.

Archive · Archive · Reflection · Process

Archived and Shelved Work

An archive of projects that stalled, what they aimed to do, and what they still taught me.

I keep this here because abandoned work can still say something useful about judgment, constraints, and how a project was evaluated.

Open project note

Some work is useful mainly because it clarifies what was not worth continuing.

State stopped work still teaches
Build constraints kept visible

What changed

  • Captured project intent, stopping conditions, and the lesson that still carried forward.

Why it helped

The archive stays because good judgment includes knowing when to stop and being honest about why.

Open archive