Skip to main content

Back to selected work

Healthcare Analytics · Clinical Operations · Data Visualization
Data obfuscated for a secure public portfolio

What Gets Measured

Principal Product Designer · Clinical benchmarking command center

Faculty performance at an academic medical center spans 4 incommensurable domains (clinical, research, financial, and educational) that cannot be honestly collapsed into one score. When the exception gets averaged away, it becomes a care-quality, equity, or workload risk that surfaces too late to act on.

I designed a clinical performance benchmarking command center that surfaces exception patterns across all four domains without collapsing them. The constraint was preserving 101 physician-level records and four parallel measurement axes on one legible screen.

Submission-ready summary

Siarhei Mardovich designed a clinical benchmarking command center for high-stakes performance review: four domains, physician-level comparison, exception surfacing, and cohort definition in one decision workspace. The same comparison and audit pattern transfers to fintech risk, surveillance, fair-lending, and any workflow where reviewers need to find outliers without flattening the underlying evidence.

Use this as a concise case summary.

Role

Product designer and sole UX lead. Brought in by a leading New York City cancer research institution to design a faculty performance benchmarking interface spanning clinical, financial, research, and educational dimensions simultaneously.

What I owned: I mapped the 8 performance axes to 5 chart types; I designed and validated the parallel-coordinates compound brush; I set the HIPAA de-identification rules for the public demo.

Approach

Exception-led command center: every visualization answers exactly one comparison question, so the patterns worth attention are visible before they are missed in review.

Outcome

A working prototype that made multi-dimensional faculty performance comparable across 101 physicians and 4 years of data, rebuilt in 2026 with care quality, equity, and burnout signals.

3 other showcases in this portfolio, Uncertainty as Signal, North Bridge, and HR as DJ, deal with the same underlying problem: when dense information is misread, the resulting decision becomes expensive to reverse. Uncertainty as Signal keeps probabilistic climate risk legible for capital allocation. North Bridge keeps workflow signal tied to company context and follow-through. HR as DJ turns staffing uncertainty into actionable allocation moves. This showcase brings that same design problem into clinical operations, where missed exception patterns create care quality risk.

Healthcare benchmarking sits under HIPAA-era data-sensitivity constraints. The interface had to make physician-identifiable data legible to authorized reviewers while keeping every public demo fully de-identified. That discipline carries over into any domain where data visualization and clinical analytics touch protected information.

Faculty performance at an academic medical center is the contested intersection of 4 incommensurable domains: clinical productivity, research output, financial contribution, and educational impact. A high-volume surgeon fills OR hours and trains fellows. A principal investigator on 3 grants earns the institution funding and intellectual standing that no collection ratio can capture. A primary care physician who sees twice the patient volume of her colleagues but publishes nothing is, by different measures, both the most and least valuable person on the department’s roster.

I was brought in to design an interface that could show all of these dimensions simultaneously, compare any physician against any reference point, and support decisions about resource allocation, promotion, and strategic planning without pretending the underlying tensions had been resolved.

The design problem is how to make 4 incommensurable things comparable without flattening them into 1 number.

The Core Insight: Benchmark-Driven Comparison

The design principle that unified the entire interface was this: every visualization answers exactly one comparison question.

Bar chart
How does this year compare to prior years, for the same metric?
Treemap
How does this service compare to all others, by area?
Parallel coords
How does this physician compare to every other across 8 dimensions?
Spider diagram
How does this individual compare to the department average?
Bubble chart
How does financial efficiency compare to revenue capture, per service?

5 visualizations. 5 comparison questions. No chart that answered more than 1, because a chart that tries to answer 2 usually answers neither cleanly.

The Upgrade: Compound Brush Composition

Before, a single continuous brush. The core interaction is the parallel coordinates brush filter, showing every physician as an individual polyline crossing 6 clinical axes simultaneously. The brush let users hold 1 dimension constant while immediately observing whether that dimension correlated with others or was entirely orthogonal. That is analysis at the precision of a continuous brush, not the coarseness of a dropdown. Brush any axis below.

Simulated data, illustrative



14 entities · brush any axis to filter

Parallel coordinates in D3.js. Each line is a simulated entity; each vertical axis is a clinical dimension. Brush filtering holds one dimension constant and reveals how the others move with it. Simulated data, not production metrics.

After, compound brush composition. The current case study extends the brush into compound cohort definition: OR within an axis, AND across axes, with a readable audit trail after overlaps resolve. Multiple ranges can live on one axis, colliding ranges merge automatically, and brushes across axes combine into a single cohort definition. Try the scenes below.

Simulated data, illustrative





Two independent Equity ranges qualify entities before the Workload gate is applied.

The upgraded brush model turns parallel coordinates into cohort definition: multiple ranges per axis, collision merging, cross-axis composition, and an audit trail of active ranges.

Benchmark-driven comparison is the chart type and the comparison question being the same decision.

Interactive Prototype

The current case study carries the same design philosophy forward as a modern exception-led command center for clinical benchmarking.

The domain model covers care quality, access reliability, equity gap closure, workload pressure, value realization, and team support. Each metric answers a reviewer question instead of becoming one blended score.

The interface is exception-led. Ranked alerts, selected exception context, and burnout-risk signals appear first because exploration should follow the signal.

Burnout risk and patient equity are first-class signals. They are treated as operational risk indicators, not secondary annotations.

The parallel coordinates survived and deepened. The Benchmark Comparison Engine is the same analytical operation, hold one axis and observe all others, rebuilt in D3.js v7 with 6 clinical dimensions, overlaid reference lines for the review target and scoped service mean, and 4 scenario lenses: Quarterly Benchmark Review, Capacity Strain Watch, Access Parity Review, Quality Drift Watch.

The metrics chosen for any performance dashboard are not neutral. They are an institutional statement about what gets valued. What gets measured defines what gets managed. A well-designed interface makes that argument legible rather than hiding it in a formula.

Interactive Prototype

Clinical Benchmark Command Center


The Decision-Intelligence Loop

The interface is not 5 disconnected charts. It is 1 loop: benchmark, compare, surface the exception, rank it, review the cohort, and commit a decision that feeds the next cycle.

ONE DECISION-INTELLIGENCE LOOPIllustrative schematic, no data1Benchmark101 entities8 performance axes2Compareparallel coordinatesbrush filtering3Surfaceexception surfacingdivergence vs cohort4Rankranked alert feedby severity5Reviewcohort reviewaccess parity6Decidedecision trailattestation + auditDecisions tune the next benchmark cycle
Multi-dimensional benchmarking feeds parallel-coordinates comparison, which surfaces exceptions where an entity diverges from its cohort. Exceptions become a ranked alert feed ordered by severity; reviewers run cohort and access-parity review, then commit a decision with an audit trail. The decision tunes the next benchmark cycle. The same loop underlies exception monitoring, operational-risk review, and model-risk governance.

Technical Details

  • Current prototype: single-file HTML and D3.js v7, with no framework or build-tool dependency
  • 5 coordinated analytical views: grouped bar, treemap, parallel coordinates, spider or radar, and bubble chart
  • 101 physicians, 8 performance axes, 4 years of monthly historical data
  • Parallel coordinates on Canvas with live brush filtering across 6 clinical dimensions
  • 4 named review scenarios with service-level and patient cohort adjustments
  • Exception surfacing: alert feed ranked by severity, drill-down panel, burnout risk toast
  • CSS custom properties and @layer specificity management, with no !important in prototype code

Clinical Pattern, Fintech Equivalent

The transfer is concrete. The same interface operations map to risk, surveillance, fair-lending, and portfolio-review workflows.

Parallel coordinates become multi-factor portfolio risk review. A ranked exception feed becomes AML, fraud, and trade-surveillance alert triage. Access parity by cohort becomes fair-lending disparate-impact review. Workload pressure becomes operational-risk monitoring. A bubble efficiency view becomes risk-return attribution. A treemap contribution view becomes exposure sizing.

The domain changes; the comparison, exception, and audit pattern stays the same. That is why a designer who can work in healthcare can also work in capital markets: the constraints differ, but the underlying decision geometry does not.

CLINICAL → FINTECH TRANSFER MAPIllustrative transfer map, no production metricsClinical originTransfer patternFintech / risk equivalentParallel coordinates101 physicians across 8 axesMulti-factor comparisonhold one axis constantPortfolio riskcapital markets exposure by book or deskRanked exception feedwho diverges from the cohortAlert triageseverity-ranked review queueAML, fraud, trade surveillanceexceptions routed before escalationAccess parity by cohortdifferences across patient groupsCohort disparity reviewreference-line comparisonFair lending and disparate impactmodel fairness under ECOA and Reg BWorkload pressurecapacity strain as a risk signalCapacity riskload before failure modesOperational risk monitoringteam load, handoffs, and controlsBubble efficiency viewfinancial efficiency vs revenue captureRisk-return attributiontwo-axis trade-off surfacePortfolio / desk performancereturn, exposure, cost, and controlTreemap contribution viewservice footprint by areaExposure sizingwhere concentration livesPortfolio exposuredesk, sector, counterparty, or bookThe domain changes; the comparison, exception, and audit pattern stays the same.
Illustrative transfer map, no production metrics Clinical signals are shown only as origin patterns. The transferable work is the decision interface: parallel-coordinates factor review for portfolio risk, exception monitoring for AML, fraud, and trade surveillance, access-parity review for fair lending, disparate impact, and model fairness, plus operational-risk and compliance-surveillance review paths.

Design Trade-offs

A senior decision is usually a trade-off made on purpose. Here are 3 made on this build, and what each one bought.

Continuous brush, not a dropdown
Tradeda simpler control surface
Foranalysis at the precision the comparison needs, holding one axis constant while reading the rest
Reference lines, not one composite score
Tradeda single sortable number
Fora comparison that survives review, because incommensurable axes should not collapse into one score
Canvas for 101 polylines
Tradednative per-line accessibility
Forevery physician rendered at once; the production path then owes the semantic summary and keyboard filtering noted below

Accessibility and Compliance Posture

Canvas polylines are not screen-reader readable. A production version owes keyboard filters, a semantic summary table, focusable controls, color-independent severity, and reduced-motion support. This page is a prototype, designed to WCAG AA principles but not VPAT-certified. Naming the gap is more useful than overclaiming a compliance the prototype has not been audited against.

What This Demonstrates

The choice of what to measure, how to visualize it, and how to make it interactive are all the same decision made at different levels of abstraction. A parallel coordinates brush is the claim that holding one dimension constant while observing all others is the right analytical operation for this kind of comparison, and that a decision-maker under time pressure deserves that capability at the precision of a continuous brush, not the coarseness of a dropdown.

More than a decade of practice in this domain, from Protovis to D3, from reporting tools to command centers, from financial metrics to equity signals, produced a point of view. In pilot review of the rebuilt interface, reviewers used the compound brush to define a physician cohort in one move where the prior dashboard needed three separate filter steps, observed in walkthrough, not a timed study.

Behavior shift the case study is designed for: before, reviewers navigated view → chart → filter to find outliers; after, exceptions surface ranked on load and the brush defines a cohort in one gesture. This is the intended behavior of the design, not a measured result.

My starting assumption was that the composite score was the enemy, and better charts would beat it. Building the brush broke it: the real opponent is premature ranking anywhere in the flow, including chart defaults. The rule I carry forward: no view ranks candidates before the reviewer defines the comparison.

Let’s Talk

Open to principal/staff product design roles · Greater New York City Area · siarhei.mardovich@gmail.com · LinkedIn · Resume

Book a 15-min call