Professional headshot of Alex Hales
Vetted UI / UX aware Design handoff

Open to new engagements

Alex Hales

Blazor & .NET MAUI Developer

Alex builds cohesive product surfaces on Blazor and .NET MAUI—shared validation, auth state, and domain models so web and mobile do not diverge into incompatible forks. He cares about accessible components, empty/loading/error states, and keyboard flows that survive design tweaks.

He reads Figma (or similar) as a contract: spacing tokens, typography scale, and interaction notes. When design intent is ambiguous, he asks early—before CSS becomes archaeology and before APIs are frozen around the wrong shape.

6+ Years .NET UI
WCAG Mindset
MVVM Clean structure
APIs Typed clients
Engagement
Dedicated · UI milestones · Advisory
Languages
English (fluent)
Overlap
US & UK-friendly hours
Design
Figma read / Zeplin
Section 01

Overview & philosophy

Alex treats the UI layer as product infrastructure: components should be predictable, testable, and cheap to change when the business pivots. That means disciplined state boundaries, not clever one-offs that only the author can extend.

He has shipped admin consoles, customer portals, and companion mobile apps where the hardest problems were not pixels but consistency—the same validation rules on web and device, the same error semantics when the API flakes, the same “empty state” story when a new tenant has no data yet.

He prefers small, composable primitives with clear names over mega-components that become merge-conflict magnets. When performance matters, he measures: render counts, bundle size, and image delivery—not premature micro-optimization.

“Alex asks the questions designers love—about edge states and focus order—before we build the wrong thing beautifully.” — Product designer, fintech admin (anonymized)
Section 02

Technical depth

Where Alex spends depth time on modern .NET UI stacks—always aligned to your design system and API conventions.

Blazor (WASM & Server)

Component boundaries, cascading parameters, and scoped CSS hygiene.
Virtualization for large grids; debounced search patterns.
Auth integration: OIDC silent renew considerations for SPAs.
bUnit for meaningful component tests—not snapshot noise.

.NET MAUI

Shell navigation, behaviors, and platform specifics when justified.
Shared business logic with web via well-factored class libraries.
Responsive layouts across phone and tablet breakpoints.
Store submission readiness: icons, permissions strings, crash hygiene.

Accessibility & UX engineering

  • Semantic HTML where applicable; ARIA where Blazor components need explicit roles.
  • Keyboard paths through multi-step flows; focus management on dialogs and drawers.
  • Contrast and motion preferences respected; reduced-motion variants when appropriate.

Tools & platforms (representative)

Blazor WASM / Server .NET MAUI Razor components CSS / SCSS HttpClient Refit / NSwag bUnit Playwright Figma
Section 03

Representative project types

Categories of UI work Alex has delivered repeatedly—compare to your roadmap and design maturity.

Admin & operations consoles

Role-based navigation, dense data tables with filters, bulk actions, and export flows that stay usable on laptops.

Customer self-service

Multi-step wizards, document upload with progress, and resilient retry UX when networks fail mid-flight.

Companion mobile

Field workflows, offline-tolerant reads where feasible, and push notification hooks aligned with your backend events.

Section 04

Engagement models

UI work benefits from visible milestones—demos stakeholders can click—not opaque “framework weeks.” Alex structures work accordingly.

Model Minimum Best when…
Dedicated monthly Often 3+ months You are building or revamping a product surface with steady design partnership.
Milestone delivery Per release train Scope is a module or epic (e.g., onboarding revamp, settings area, mobile v2).
UI audit + fix sprint 2–4 weeks You have accessibility debt, inconsistent components, or performance regressions to clear.
1
Inventory & align

Screens, states, and API contracts mapped against design files; gaps flagged before build.

2
Build in slices

Each slice demoable in staging with feature flags for risky areas.

3
Harden & document

Smoke tests, keyboard walkthrough notes, and README for component library consumers.

Section 05

Ways of working with your team

Design: Alex asks for interaction specs for validation, errors, and disabled states—not only happy paths. He proposes engineering trade-offs when a visual idea would tank performance or accessibility.

Backend: He prefers OpenAPI or hand-written DTOs that match what the UI truly needs—avoiding “mega objects” that encourage accidental coupling.

QA: He supplies repro steps, screen recordings for visual bugs, and stable test IDs where automation is a goal—not last-minute guesses.

Attach your component library link (if any), primary user journeys, and one “worst screen” example—Alex uses that to calibrate week one.

Section 06

Fit, boundaries & quick answers

Strong fit when you…
  • • Want one C# story across web admin and companion mobile.
  • • Value accessibility and resilient UI states.
  • • Have evolving APIs and need UI that adapts without chaos.
Less ideal when you…
  • • Need a primary React/Vue owner (Alex can consume APIs, not lead that stack).
  • • Project is static brochureware with no .NET UI runtime.
  • • Expect broadcast motion design without a motion spec or timeline.
Can Alex work from our Figma library?

Yes—tokens, components, and naming conventions can be mirrored or wrapped in Blazor/MAUI primitives.

Does he write automated UI tests?

Where the team invests in harnesses: bUnit for components, Playwright for critical smoke paths—scoped to value.

Mobile: iOS, Android, or both?

Both via .NET MAUI unless you explicitly target one store first; store policies and device labs discussed up front.

Bring Alex into your product squad

Share Figma (or equivalent), user journeys, and timeline—we’ll confirm fit and propose a ramp plan.