How I test
I look at how an experience actually unfolds: screen reader flow, keyboard movement, structure, forms, dialogs, error states, and whether someone can make it all the way through a task without unnecessary friction.
Accessibility portfolio
This page exists because a resume only tells part of the story. What matters more to me is whether you can get a feel for how I test, how I notice things, and how I turn those observations into something useful for product teams and for disabled users.
What this portfolio shows
I look at how an experience actually unfolds: screen reader flow, keyboard movement, structure, forms, dialogs, error states, and whether someone can make it all the way through a task without unnecessary friction.
I try to describe barriers in plain language, connect them to real user impact, and give teams enough context to understand not just what is broken, but why it matters.
I care about whether a recommendation is actually usable. A good fix is not just technically correct. It should make the experience clearer, reduce friction, and feel realistic for a real team to implement.
Featured studies
Case study
I reviewed a public event discovery page with screen reader testing, keyboard navigation, DOM inspection, and accessibility tree checks to understand whether event browsing remained understandable once controls and links were exposed through assistive technology.
Scope: Homepage event cards, location search, headings, interactive navigation, and link naming
Tools: VoiceOver, keyboard-only navigation, Playwright, live DOM inspection, and Chromium accessibility tree review
What worked: The page exposed visible event titles clearly in browse reading, and the event detail page itself appeared stronger than the homepage card layer
Primary barrier: Event card links used an unresolved accessible-name template instead of the actual event title, causing assistive technology to announce placeholder text
Secondary barrier: A product fulfillment area on another public retail site appeared to contain duplicated or hidden interactive controls that disrupted screen reader navigation near pickup and quantity selection
Testing note
The important part of this review was not just hearing something odd once. I verified the homepage issue in the live React-rendered DOM and confirmed that the computed accessible name for multiple event links was the unresolved placeholder string rather than the visible event title.
Source tested: Eventbrite homepage event discovery flow
Source URL: https://www.eventbrite.com/
Finding format
When I document accessibility issues, I focus on what the user was trying to do, what failed, how to reproduce it, and what kind of fix direction the team needs next. I prefer real findings over generic examples whenever I can use them responsibly.
Finding structure
Recent findings
Finding 1
aria-label so the visible event title can provide the accessible name.Finding 2
Testing approach
I look for whether the experience stays understandable and operable in sequence, not just whether individual controls have labels.
I care about focus order, interaction states, trap conditions, and whether a keyboard user can complete the task without guesswork.
Headings, landmarks, buttons, links, form labels, error handling, and state changes all need to communicate the right thing at the right time.
Tools and methods
I use VoiceOver, JAWS, and NVDA to evaluate whether a flow stays understandable, navigable, and complete for screen reader users.
I combine screen reader testing with keyboard-only review to check focus order, interaction states, dialogs, forms, and error recovery.
I document findings in plain language with reproducible steps, user impact, and practical remediation guidance teams can actually work from.
Next step