UX DESIGN CASE STUDY
Re-designing an Automation Process the Right Way
| My Role: | Lead UX Designer — sole contributor across research, design, and production validation |
| Company: | The Home Depot |
| Project: | Pro Quoting Tool — Bulk Upload Feature |
| Timeline: | 10 weeks, discovery to ship |
| Methods: | Contextual inquiry, job shadowing, iterative design, UAT, GitHub validation |
| Deliverables: | Figma prototype, dev handoff, production validation in sandbox environment |
The Challenge
The Home Depot's complex quoting team handles large, multi-line jobs for professional contractors - quotes that could run 50, 60, sometimes 80 line items across categories like lumber, flooring, and electrical. To manage the volume, they relied on a Robotic Process Automation bot built by an internal data science team.
On paper, it was a solution. In practice, it was a liability. The bot took control of the user's machine to automate entry - which meant a single mouse movement could crash the entire process. Two weeks of direct shadowing surfaced the real problem: the team had stopped complaining. They had absorbed the bot's failures as part of the job.
How do we replace a fragile workaround with something fast, reliable, and built to last?
The Quoting Environment
Eight specialists. Each owning a category. Every large job a race against pricing windows, vendor availability, and a bot that could freeze without warning. The wire and electrical quoter kept a second computer running just to stay functional - his category carried a 24-hour pricing expiration. The bot's inefficiencies weren't occasional. They were a daily tax.
80+
Line items on the largest quotes
24 hr
pricing expiration on commodity goods
45-60 min
average quote time before bulk upload
The Design Work
The complex quoting team lived in spreadsheets. CSV was the obvious format - not the most elegant, but the one requiring the least behavior change from a team already stretched thin.
The feature used a strict required template. Users downloaded it, populated it with their line items, and uploaded it back. No column mapping, no guesswork. Simplicity on the user's end meant reliability on the system's end.
The harder problem was error handling. A strict template meant bad data was inevitable. The question was how much it should cost the user when it happened.
The answer came in three planned phases.
The final feature covered every state a user might hit: successful upload, partial success, full rejection, and edge cases surfaced during UAT. Each had a clear, plain-language response.
Before shipping, every interaction in the Figma prototype was validated against the live build in a sandbox environment. What users got matched what was designed.
Impact and Reflection
Bulk upload shipped and the team adopted it immediately - not gradually, not after a nudge. The RPA bot went untouched from day one and was decommissioned within a month. Nobody was asked to stop using it. They just didn't need it anymore.
A quote that took 45 minutes to an hour now took 30 to 45 seconds. Quote-to-order conversion increased by 35%. What I'm most proud of is that we recognized the bot for what it was - a solution that had become the problem - and replaced it with something that actually fit the way these users worked.
The best design doesn't add something new. It removes what was quietly getting in the way.