A single project built to validate a much larger platform decision — and lay the foundations for scalable agentic experiences across LinkedIn's customer support chat.
Rather than trying to build everything at once, we scoped the first release tightly: an Invoice Agent that lets B2B customers find, select, and download their invoices through a guided agentic conversation. ~30,000 requests per year. 7,800+ customer hours lost to manual back-and-forth. One well-designed agent flow to eliminate it — and validate the model for everything that comes next.
LinkedIn's support chat handles thousands of billing requests every year — low-complexity, high-friction work that consistently escalated to human consultants. The bet was that an agentic experience could replace that loop entirely: letting customers resolve billing issues themselves, inside the chat, without a ticket. Prove it works once, and the same platform pattern extends to every case type that follows.
The primary user is the LinkedIn business customer — an admin, finance contact, or account owner who needs an invoice, has a billing question, or wants to resolve a charge. Previously, every one of these requests required opening a support ticket and waiting. This project gave them a path to self-serve: faster, with no human in the loop. The reduction in support consultant hours — ~1,200/year of manual invoice handling — was the downstream effect of the customer experience actually working.
I owned the full design process: defining how the agentic conversation should work, designing every UI state, and building a working coded prototype to prove the concept was shippable. Alongside the prototype, I built a shared component library — every chat primitive, form pattern, loading state, and information surface — so future flows don't start from zero.