Personal · 2026
I audited this portfolio the way a recruiter would use it: on a phone, quickly, with no patience for things that don't work. Six issues surfaced. Five got fixed. This is the write-up.
What was broken on mobile
Tables in the icebox section clipped horizontally with no scroll affordance. Columns simply disappeared off the right edge of the screen.
Long quotes cut off abruptly with no ellipsis and no "read more." Looked like a rendering bug rather than a deliberate design choice.
Double padding on the section header component caused the numbering to float out of alignment with the heading text on narrow screens.
Display headings were fixed at desktop sizes, causing them to crowd the screen or overflow on narrow viewports.
The three-column stats grid stacked vertically on mobile, creating a long scroll of numbers with no visual rhythm or hierarchy.
A dense wall of 50+ skill tags across five categories with no structure. No way to scan which category you were looking at or navigate between them.
What to fix first and why
With six issues on the list, the question was sequencing. I plotted each against severity and implementation effort. High-severity quick wins shipped in Wave 1. The carousel work, a shared interaction engine built from scratch, followed in Wave 2 once the surface fixes were live.
What changed and why
Five fixes across two waves. Each one is shown as a before/after phone mockup, illustrative rather than pixel-accurate screenshots, since the goal is to communicate the nature of the change, not reproduce the exact UI.
A three-column stats grid that stacked into a long vertical list on mobile. Replaced with a single-card carousel: one stat in focus, swipe to advance.
A carousel trades glanceability for focus. On a small screen where a three-column grid becomes an unreadable vertical list, the trade is worth making.
A dense wall of 50+ skill tags across five unseparated categories. Replaced with a card-per-category carousel: category name prominent, skills below, swipe between categories.
Hiding categories behind a swipe interaction adds a step for users who want to scan everything. But a wall of 50 unstructured tags is not scannable anyway; the carousel at least provides structure.
Comparison tables clipped at the screen edge with no scroll affordance; columns simply disappeared. Fixed with horizontal scroll, a right-edge fade gradient, and a visible caret hint.
Horizontal scroll on a phone is an antipattern in most contexts, but comparison tables have no better alternative; they only make sense as tables. The scroll hint makes the affordance visible rather than leaving users to discover it by accident.
What I'd carry forward
Running a structured audit on your own work is harder than it sounds. The familiarity bias is real: you stop seeing what's broken when you built the thing yourself.
Good portfolio, wrong screen. Fixed.