All work

01 / Enterprise SaaS

Virtual Tax Organizer

Hundreds of inputs, years of changing business rules, and a user who is anxious before they even start. The interface has to carry all of it.

  • Built highly dynamic configuration-driven forms.
  • Simplified complex tax workflows.
  • Improved usability across large multi-step experiences.
  • Optimized rendering performance for data-heavy pages.
  • Built reusable architecture supporting multiple tax years.
ROLE
FRONTEND ENGINEERING & ARCHITECTURE
TIMEFRAME
LONG-RUNNING
STACK
REACT · TYPESCRIPT · CONFIGURATION-DRIVEN FORMS · DESIGN SYSTEM

01 / Context

Tax preparation is one of the least forgiving product domains there is. The rules are dense, the inputs number in the hundreds, and the person filling the form is rarely an expert — they are a taxpayer who wants to be finished.

The Virtual Tax Organizer collects that entire picture: personal details, income sources, deductions, dependents, and the long tail of situations that apply to a minority of filers but must still be handled correctly for everyone.

02 / Constraint

Hard-coding screens was never viable. Tax rules change every year, and a UI written against one year's rules becomes a rewrite the next — multiplied by every form and every conditional branch.

The interface also could not simply show everything. A page that renders hundreds of fields is both a usability failure and a rendering-performance problem, and in this domain the two compound: a slow, crowded page is exactly where users make mistakes.

03 / Decisions

Make the forms configuration-driven. Fields, validation, and conditional visibility are described as data rather than written as JSX, so a new tax year is a configuration change instead of a new set of screens.

Break the experience into a guided multi-step workflow with explicit progress, so the user is answering a short, relevant set of questions at any moment rather than confronting the full form at once.

Treat rendering performance as part of the design. Data-heavy pages were optimized so that typing, branching, and revalidation stay responsive as the answer set grows.

Build the shared pieces as a reusable architecture across tax years, so improvements compound instead of being reimplemented annually.

04 / Outcome

One configuration-driven system now supports multiple tax years, and the complexity that used to live in bespoke screens lives in data that can be reviewed and changed deliberately.

For the user, the result is the thing they never notice: a long, technically dense process that feels like a short sequence of reasonable questions.