designer/engineer

Wicked good design for wicked problems.

Featured Work

PROJECT FELINES

PROJECT FELINES

The Alzheimer’s field spent billions clearing amyloid plaques from brains that kept declining. FELINES is what happened when I stopped accepting that narrative and started tracing upstream: iron dysregulation, ferroptosis, vascular failure, across six neurodegenerative diseases that enter through different doors but break down the same way.

GOINVO WEBSITE

GOINVO WEBSITE

Migrating a healthcare UX studio off aging Gatsby infrastructure onto Sanity CMS, animated page transitions, and accessibility-first architecture. Nine document types, card-morph transitions, and a content pipeline that lets non-technical editors publish without touching code.

WRITROSPECT

WRITROSPECT

An AI-assisted journaling tool that solves the blank-page problem. Built on neuroscience research about why people abandon commitments to themselves, with a prompt architecture that adapts to what you actually need rather than loading everything at once.

RENDOMAT

RENDOMAT

A programmatic video studio built at GoInvo. Turns structured content into multi-platform video with professional motion design, replacing a manual production pipeline that took a full day per video with an automated system that renders in minutes.

PHYLACTORY

PHYLACTORY

100,000+ concurrent units in a fantasy game that fuses factory management with real-time strategy. Built a custom Entity-Component-Space system from scratch in Godot 4 with C++ and GDExtension, hand-crafted every sprite and tileset in Aseprite, and designed twelve interconnected game systems such as energy grids, trains, pipes, and formation AI.

Case Study

Six diseases.
One mechanism.

A systems biology investigation into iron-driven cell death, a process only named in 2012, and why it keeps appearing across Alzheimer's, Parkinson's, ALS, MS, Long COVID, and prion disease, connecting evidence that no single field had pieced together.

View Project
2012
Ferroptosis first named
6
Diseases unified
6
Defense layers mapped
50+
Sources cited
01

The Problem

In 2012, a team at Columbia named a new form of cell death: ferroptosis, driven by iron-dependent lipid peroxidation. Distinct from apoptosis, necrosis, and autophagy. Within a decade, researchers found ferroptosis signatures in Alzheimer's, Parkinson's, ALS, MS, and other neurodegenerative diseases.

But each field studied it in isolation. Alzheimer's researchers focused on amyloid, Parkinson's on alpha-synuclein, ALS on TDP-43. Every group documented iron dysregulation in their disease. Nobody asked why the same iron-driven mechanism kept appearing across all of them.

Part of the reason is technical. No specific in vivo biomarkers for ferroptosis exist yet. Current brain imaging (QSM, R2*) detects bulk iron levels but can't resolve cellular-level distribution or distinguish iron species. You can't tell whether iron is safely stored in ferritin or free and reactive. Techniques like APART-QSM are only beginning to separate these signals.

The result: a mechanism that may underlie multiple neurodegenerative diseases, hiding in plain sight because the tools to see it clearly don't yet exist.

Ferroptosis mechanism diagram showing iron-dependent lipid peroxidation cascade

Different doors, same room.

02

How I Got Here

My entry point was Alzheimer's. During my Master's in Bioinformatics, I studied neuroimmunology and spent my final project on BACE1, one of the key enzymes in amyloid processing. After graduating, I watched five separate BACE1 inhibitor trials worsen cognition. Hundreds of billions spent on the amyloid hypothesis, and the drugs built on it were making patients worse.

That failure is what led me to ferroptosis. If amyloid plaques weren't the cause, what was upstream? The emerging ferroptosis literature offered an answer: iron-driven lipid peroxidation damaging cells before plaques even form. But the more I read, the more I noticed something the individual disease communities weren't seeing.

The same ferroptosis signatures kept appearing across Parkinson's, Long COVID, ALS, MS, and prion disease. Each field documented iron dysregulation independently, but no one was mapping the convergence. Six diseases entering through different biological “defense layers” but arriving at the same endpoint: iron maldistribution driving oligodendrocyte death.

That pattern is what FELINES maps: why the same iron-driven cascade produces different clinical presentations depending on which defense layer fails first.

03

The Approach

Most neurodegeneration research focuses on correlation within a single discipline. I wanted to untangle causation across many, pulling evidence from fields that rarely talk to each other in this space and seeing what patterns emerge when you read them together.

What the field assumed

What the evidence shows

Each disease has its own unique cause
Six diseases converge on iron-driven ferroptosis as a shared endpoint
Protein aggregates (plaques, tangles) are the cause
Aggregates are downstream responses to iron, not the upstream trigger
Remove the aggregates → cure the disease
Aggregate removal depletes protective iron-chelation mechanisms
Too much brain iron → chelate it away
Iron is maldistributed, not excessive. Chelation worsens it
Inflammation drives neurodegeneration
Every major anti-inflammatory trial failed or worsened outcomes; ferroptotic cell death triggers inflammation, not the reverse
Protein structures showing iron-binding sites across neurodegenerative disease proteins

How Each Field Contributed

Toxicology

Used poison models as natural experiments to isolate specific mechanisms. BZ (a cholinergic toxin) showed how disrupting one system cascades into iron dysregulation. SUR1-TRPM4 channel blockers showed neuroprotective effects through ion homeostasis. Gulf War Illness, where soldiers were exposed to multiple agents simultaneously, provided a real-world case study of how combined insults overwhelm defense layers that handle individual toxins fine.

Comparative Biology

Chimpanzees develop amyloid plaques identical to humans but never progress to Alzheimer’s pathology. This is one of the strongest pieces of evidence that plaques alone don’t cause disease. The difference: chimps have different iron handling in the brain. If plaques were the cause, chimps should get Alzheimer’s too.

Clinical Neurology

Hepatic encephalopathy causes neurodegeneration without plaques or tangles, proving protein aggregation isn’t required. The mechanism: liver failure floods the brain with manganese (which competes with iron transport), disrupting the same iron-handling systems FELINES maps. Different entry point, same downstream cascade.

Genomics & GWAS

Iron genes don’t appear directly in genome-wide association studies for Alzheimer’s. But genes that increase susceptibility to iron damage do: APOE4 (impairs iron buffering), HFE H63D (damages white matter in healthy carriers but paradoxically protects it in APOE4 carriers), and genes regulating ferroportin and hepcidin signaling. The iron signal is there if you know what to look for.

Crystallography

Analyzed crystal structures of amyloid-beta and tau to identify where iron binds. The His13 residue on human amyloid-beta binds iron more tightly than its mouse equivalent, explaining why mouse models translate so poorly. This structural difference means drug candidates that work in mice are tested against a fundamentally different iron-binding geometry.

Bioinformatics

Ran experiments on the SEA-AD (Seattle Alzheimer’s Disease) single-nucleus RNA-seq dataset to examine iron-handling gene expression changes at the cellular level. Found that different cell types show opposite iron responses: neurons upregulate iron import (starving) while surrounding glia accumulate iron (overloaded). Both happen in the same tissue, invisible to bulk measurements.

Epidemiology

Traced how occupational and environmental iron exposures correlate with neurodegeneration risk across populations. Welders, miners, and populations near industrial iron sources show elevated rates. Combined with the genetic susceptibility data, this pointed to iron as a convergent environmental trigger across diseases.

Questioning Inflammation

Early in the research, inflammation looked like the obvious starting point. Source after source placed it at the top of the causal chain: microglia activate, inflammatory cytokines rise, neurons die. The narrative was clean and widely cited.

But the clinical trial record told a different story. The ADAPT trial testing naproxen and celecoxib in Alzheimer's prevention was halted early. The treatment group trended worse. INTREPAD, testing naproxen in at-risk populations, found no benefit. Prednisone, rofecoxib, indomethacin, tarenflurbil, ibuprofen. Every major anti-inflammatory trial in Alzheimer's either failed outright or made outcomes worse.

That pattern forced a harder question: what if the causal arrow points the other way? The ferroptosis literature provided the mechanism. When cells die by ferroptosis, they release damage-associated molecular patterns (DAMPs) such as HMGB1, ATP, and oxidized lipids, which activate the NLRP3 inflammasome and recruit inflammatory responses. Ferroptosis is more immunogenic than apoptosis. The inflammation researchers were documenting was real, but it was substantially a consequence of upstream cell death, not its cause.

This doesn't mean inflammation plays no role. The consensus recognizes a bidirectional cycle where inflammation and cell damage amplify each other. But the trial failures suggest that targeting inflammation alone can't break the cycle. The upstream driver, iron-dependent lipid peroxidation, has to be addressed first.

Cells are starving while surrounded by iron.

Neurodegenerative brains show high total iron on MRI, yet individual cells are iron-starved, upregulating transferrin receptors and iron-response proteins. Both are true because iron gets trapped where cells can't access it.

04

The Model

The model started as “PLIG”, a working acronym for pericytes, lysosomes, iron, and glia. As the model crystallized, the name evolved into FELINES: Fe (Iron Homeostasis) · Lysosome/Antioxidant · Immune/Inflammatory · Neurovascular · Export · Sheathing. It also reads as Fe + LINES, the main driver and what sets it in motion.

Fe

Iron Homeostasis

Systemic iron homeostasis, hepcidin signaling, transferrin saturation, and cellular import/export balance.

L

Lysosome/Antioxidant

Ferritin sequestration, lysosomal iron recycling, and GPX4/glutathione antioxidant defense. The cell's internal buffering against free iron and lipid peroxidation.

I

Immune/Inflammatory

Microglial activation, NLRP3 inflammasome signaling, and the bidirectional cycle where ferroptotic cell death triggers inflammation that amplifies further damage.

N

Neurovascular Barrier

Blood-brain barrier integrity maintained by pericytes and astrocyte endfeet, the gatekeeper against serum iron.

E

Export

Ferroportin-mediated iron export and ceruloplasmin oxidase activity. The cellular mechanism for removing excess iron before it catalyzes damage.

S

Sheathing

Myelin sheath integrity maintained by oligodendrocytes, the highest-iron cells in the brain at 3.05 mM. The structural insulation whose failure exposes axons to iron-driven damage.

The key insight: single layer failure is compensated while multiple layer failure is catastrophic. This explains why some people with amyloid plaques never develop dementia (their other layers compensate) and why single-target drugs keep failing.

The interactive iron clearance model simulates how the brain clears iron over a lifetime and why that process fails in neurodegeneration. A 3-state ODE system (labile iron pool, ferritin stores, interstitial fluid) solved with 4th-order Runge-Kutta integration tracks when ferroptosis thresholds are crossed under different genetic and clinical conditions. Users select scenarios (healthy aging, APOE4 carrier, post-stroke, multi-morbid) or tune individual parameters to see real-time changes across four synchronized visualizations.

05

Designing for Two Audiences

The FELINES model started life as a massive research document, comprehensive but nearly impossible to communicate. Before touching a single layout, I studied how the best teams solve this exact problem.

Design References

The throughline: complex information doesn't have to mean complex interfaces. Every reference above earns depth through clarity, not despite it. That principle shaped every decision in the FELINES presentation.

Main Presentation

Reads like a narrative slideshow: problem, insight, evidence, implications. Each section is self-contained with a clear takeaway. A general audience can follow the entire story without a biology background.

Explore Mode

Branches into deep-dive pages on barrier architecture, disease-specific profiles, clinical trial analysis, and biological mechanisms. Researchers can drill into primary sources and detailed evidence.

FELINES mobile presentation view — main narrative flow
FELINES mobile presentation view — explore mode branching

Presentation Flow

Main flowExplore branches

The iron clearance visualizations let users explore clinical scenarios or tune individual parameters to see how clearance failure unfolds differently. Built with Recharts, four synchronized charts show compartment levels, ferroptosis phase timeline, clearance pathway decline curves, and cell-type ferroportin export budget. Every parameter is classified as measured, derived, or assumed, with color-coded source indicators and citations.

A custom citation system with hover tooltips lets readers verify claims without leaving the page. Every major claim links to its primary source with DOI and PubMed references. The bibliography spans 50+ peer-reviewed sources across 8 topic modules, each with a verification status.

06

What I Learned

Systems thinking breaks paradigm lock-in.

The field wasn't stuck because of bad science. It was stuck because each discipline studied its own piece without a framework for connecting findings. Approaching the problem with a systems lens made patterns visible that were invisible within any single discipline.

There is a massive gap between finding and communicating.

The original 900KB research document contained all the evidence. But evidence alone doesn't change minds. Scientific communication isn't about dumbing things down. It's about building paths through complexity at different speeds.

Information architecture is the hardest part.

Deciding what a general reader needs to understand versus what an expert wants to verify required more design iteration than the kinetics model itself. Every section had to work as a standalone insight and as an entry point for the deep reader.

Built with

Next.jsTypeScriptRechartsFramer MotionRunge-Kutta ODE SolverTailwind CSS

About

Someone didn't give up on me.
That's why I build.

There is no definitive formulation of a wicked problem.

When I was three months old, I had intestinal volvulus. I wouldn’t stop crying, every doctor had a different explanation, and my parents kept looking until they found one who could see what the others missed.

The choice of explanation determines the resolution.

That persistence saved my life. It also gave me something I’ve carried ever since: the recognition that how you frame a problem determines whether you can solve it at all.

Every wicked problem can be considered a symptom of another problem.

I don’t just say “wicked” because I’m from Massachusetts. In 1973, Horst Rittel and Melvin Webber described wicked problems: the kind where the crying is a symptom of something deeper, and treating the surface never reaches the root.

Every wicked problem is essentially unique.

I started where a lot of CS grads start: writing Perl scripts for an escalation engineering team at Dell EMC, then two jobs in the gaming industry building things that were complex, fast, and fun. But games ship patches. The problems I kept gravitating toward were the ones where you don’t get to patch. I earned a Master’s in bioinformatics because I wanted to bring engineering somewhere the problems don’t repeat: healthcare, government, regulated systems where every deployment is its own context and every patient is their own case.

Wicked problems do not have an enumerable set of potential solutions.

I joined a small studio designing for healthcare and government because the solution space is never closed. There’s no dropdown menu of correct answers. You design, ship, learn, and revise, knowing the next version will be different, not because the last one failed, but because the problem shifted underneath you.

Every solution is a “one-shot operation”; every trial counts.

In regulated environments, every release matters. There are no sandbox deployments when someone’s care depends on the system working. That weight is something I chose, not something I stumbled into.

The planner has no right to be wrong.

When you build software for medical contexts, you carry a specific accountability. The system you ship becomes part of someone’s care, and “move fast and break things” is not an option when the things that break are people.

Wicked problems have no stopping rule.

Over the past several years, that same instinct has pulled me toward problems with no finish line. I started researching neurodegenerative disease on my own, not because I expected to solve it, but because I couldn’t stop looking once I started seeing what others were missing. That’s how I work on everything: once I care about a problem, there is no clean stopping point, only the next question.

There is no immediate and no ultimate test of a solution.

I’ve learned to be comfortable building things I can’t fully validate yet. Whether it’s a healthcare prototype shipping to users whose feedback won’t arrive for months, or a research framework whose predictions won’t be tested for years, the work has to be good enough to act on before you know if it’s right. That uncertainty isn’t a flaw in the process. It is the process.

Solutions are not true-or-false, but good-or-bad.

That’s the lens I bring to everything I build. Not “is this correct” but “is this better.” Better communication, better questions, better tools for the people using them. My independent research on neurodegeneration, Project FELINES, follows the same principle: it doesn’t claim to be the right answer, just a framework that generates better questions than the ones we’ve been asking.

I build software. I design systems. But what drives me is the same thing that’s driven me since before I could talk: someone needs to keep looking until they find what the others missed.

Contact

Let's build something together.

Interested in working together, have a question, or just want to say hello? I'd love to hear from you.