2023–2024Systems Design & Information Architecture
Auto Attendant
Call routing a small business could actually set up. The power was already there. Owners needed the confidence to use it.
- 6 → 1
- Screens to add a menu option
- 2 → 1
- Basic and advanced setup, merged into one system
- Live
- On iOS, Android and web, and the base Lisa was built on
- 8
- Interface versions tested to get there
How much time do you have?
Jump to the depth that suits you.
Or just keep scrolling: everything is on this page, in order.
The 1-minute summary
Loved. Powerful. Underused.
- The problem
- Auto Attendant let a small business answer its phone like a much larger one, and some customers chose LinkedPhone for it. Yet most accounts never went past basic setup. Adding one menu option took six screens, on a phone, between customers.
- What I did
- Led the redesign over about 12 months, working with the founders: the audit, the competitive study, the information architecture, eight interface versions and the component set.
- What changed
- Basic and advanced setup became one screen at different depths. Every option sits on one list that reads like the call, and every option is edited the same way: when, during, do.
- What happened
- Live on iOS, Android and web. Its components went into the design system, and Lisa, the AI receptionist, was later built into it as a new action.
The full story · about 12 minutes
One problem, three decisions.
Each decision opens with a short card: what we could have done, what we did, and what it cost. Read the cards for the argument, or keep going for the work behind each one.
Situation
A feature people feared
Valuable, and barely used past its first screen.
Auto Attendant is LinkedPhone's call menu: “Press 1 for sales”, greetings, voicemail, and calls routed to the right person. It lets a one-person business sound like a team, and for some customers it was the reason they chose LinkedPhone.
When I started, two versions existed. Customers used the live product every day: a basic setup screen, with a separate advanced one behind Call Menu Options. Next to it, a redesign was in progress that cleaned up the cards and kept the structure underneath. Neither changed why people stopped.
My role
Twelve months, with the founders.
I led the redesign, working with the founders: the audit, the competitive study, the information architecture, eight interface versions and the component set that went into the design system. It shipped on iOS, Android and web.
Problem
Six screens for one option
Owners set up routing on a phone, between customers. The setup was built for someone at a desk.
Select a digit. Choose a function. Type a label. Pick who receives the calls. Set up a voicemail greeting. Then return to a list that summarised all of it as Type: Route Call, Enabled Users: 3.
Each step was reasonable. Together they were a tunnel: by the fourth screen you were configuring something you could no longer see.
The audit
Six places the setup lost people.
I went through the live setup screen by screen and marked where it lost people.
- The flow is described, not shown. A paragraph explains routing; nothing visualises it.
- Advanced setup hides behind an optional row, then jumps to a layout that contradicts what users just learned.
- Tabs split the flow. Open, Close and Hours each hide the others.
- Rows describe settings, not calls. Type: Route Call says nothing about what a caller hears.
- Every option is built page by page, and the condition and earlier choices drop out of sight.
- Hours are seven rows of days, set one at a time.
The cost ran three ways. Owners got a fraction of the value they were paying for. A feature that sold LinkedPhone sat underused. And every future feature that touched calls would inherit a structure nobody understood.
What owners said
Nobody rejected a feature once they found it. They rejected seeing it too early.
In every session, the words routing, menu options and IVR came from us first, never from them. Every advanced setup we saw started from a basic one that already worked.
“I don't mind the advanced stuff being there. I just felt overwhelmed when I tried it the first time.”
“Once the basic setup worked, I went back in and explored the menu options later.”
So the job changed
Keep all of the power. Change when it appears.
Decision 1
Reveal complexity, don't remove it
- Could have
- Copied the market's node builder, or kept the step-by-step wizard and cut features to make it simpler.
- Chose
- One structure for every setup, where each option opens simple and expands in place when you reach for more.
- Cost
- Power users wait one tap longer for the settings they use.
Why not a node builder
Node builders looked powerful in reviews and broke in testing.
Where competitors offered call routing, it was a canvas of nodes and connectors. We built concepts that way. On a phone, people spent more time learning the interface than setting up their business.
The third direction
The corner that mattered was empty.
The wizard was easy to start and hard to live in. The node builder was powerful and hard to start. We looked outside telecom, at Notion, Apple Home and Google Home, for products that make sophisticated systems approachable.
What carried over: show what's possible without demanding it, use mental models people already hold, and let configuration grow with the business. One trigger and one action is a complete setup. Conditions, more options and fallbacks use the same blocks when an owner wants them.
Decision 2
One list that reads like the call
- Could have
- Kept setup as a sequence of screens and polished each one, as the redesign in progress was doing.
- Chose
- Every option on one list, grouped by open hours and after hours, with each row stating its path: Press 2 → Route call → 3 users. No answer → Voicemail.
- Cost
- One list shows far more at once than a step-by-step flow. Making it scannable took eight versions.
Parallel over serial
You can read the caller's experience without opening anything.
The old setup walked you through steps in order. The new one puts every part in one place, so a scan answers the only question that matters: what happens when someone calls?
Eight versions
From a menu index to a list shaped like the call.
The same two screens, the list and one option, eight times. Watch the header go from Virtual Receptionist to IVR Setup to Auto Attendant, and the rows from Route Call · 3 users active to Press 1 → Route call → 3 users.
V1Bricks
Open hours became one list of numbered options, each with a one-line summary. Closed hours collapsed to Same options as Open Hours. The Route Call editor was a block with Add More beneath it: the brick idea's first form.
What it taughtSummary rows worked. A menu index still hid the flow behind it.
V2Grouped
Open and closed hours as sections, each with its own Add call menu, and a toggle for a separate closed-hours flow. The option editor turned into accordions: waiting and queue, routing, routing type, conditions.
What it taughtAccordions kept context. Conditions buried at the bottom didn't.
V3Essentials first
Home reduced to timings, call groups and options. Call menus became an opt-in, and the menu opened as a sheet with a play button to preview it, one of the audit's new opportunities.
What it taughtEssentials first felt calm, but advanced setup was a different place again.
V4One list, filtered
Every option in a single list, filtered by number, open hours and closed hours. The condition moved into the option itself: Open Hours (9:00 to 21:00), with an enabled toggle.
What it taughtOne scan answered “what happens when someone calls”. Context stayed with the option.
V5The grammar shows
Every row became a sentence: Press 1 → Route Call → 3 Users, during Open hours. No Input appeared as a trigger. The editor split into Starters, Conditions, Actions and Configuration.
What it taughtTrigger, condition, action was learnable once visible. “Starters” was our word, not theirs.
V6Plain words
The same structure in the owner's language: When: Keypad Press 1. During: Business Open Hours. Route to. Route type, voicemail and missed-call options folded into one More Settings line.
What it taughtThe structure stayed the same; plain language made the rule easier to scan.
V7Hierarchy
Renamed Auto Attendant. Open hours and after hours became collapsible groups, with the welcome message as the parent and options indented beneath it, so the list is shaped like the call.
What it taughtIndentation communicates a tree without a canvas.
V8Defaults
Hours moved to a card at the top. Default Handling arrived: the automatic flow when no menu exists or no option is selected. A new option now carries its context in its header.
What it taughtThe simplest setup is just the defaults. That is how basic and advanced became one system.
Decision 3
One grammar for every option
- Could have
- A separate setup screen for each option type, as the live app had for route call, greetings and voicemail.
- Chose
- One editor for every option, read as a sentence: when, during, do. Learn one and you've learned them all.
- Cost
- Route call's rarely used inputs moved one tap deeper, into More settings.
Where the grammar came from
Laid side by side, every option had the same shape.
I broke each option type into its inputs. Route call, greeting, voicemail and repeat message looked different in the app. Underneath, each had a trigger, a condition and actions, and only the actions changed.
The editor
The rule reads as a sentence, and opens a layer at a time.
The condition sits in the header, then the trigger, the action and the fallback. The greeting expands in place to text to speech, a voice and a player. More settings expands to ring order, a no-answer menu and a missed-call auto-reply, each marked active or disabled so its state is visible.
Outcome
What shipped
Live on iOS, Android and web.
- Screens per option
- 6 → 1Every option edited on one screen
- Setup modes
- 2 → 1Basic and advanced, one screen at two depths
- Platforms
- 3iOS, Android and web
- Built on it next
- LisaAdded as one more action
In testing, owners came back to Auto Attendant after their first setup instead of leaving it, built rules with more conditions and branches, and opened advanced options without being prompted.
1 · The call menu
The simplest setup is just the defaults.
A business that only sets its hours already has a working setup: one default rule for business hours, one for after hours. A business with a five-option menu uses the same screen and the same blocks, and the default rule still catches every call nothing else matched.
2 · One option
Every option opens a layer at a time.
An option reads when, during, do. The greeting opens in place to text to speech, a voice and a player. More Settings opens to ring order, a no-answer menu and a missed-call auto-reply, each marked active or disabled.
3 · Hours and ring order
Hours as time slots. Ring order in one tap.
Hours became time slots, days plus a range, instead of seven rows. Ring order opens over the option it belongs to: one by one, everyone at once, or in rotation.
4 · Missed calls
When nobody picks up, the caller still gets a reply.
Any option can send a missed-call auto-reply. Auto-replies live in one place, set for business hours and after hours, for missed messages and missed calls, and each customer gets at most one an hour.
5 · The design system
Every block has a one-line summary and an editing state.
Auto Attendant was one of the hardest tests the emerging design system faced. It fed list structures, accordions, contextual actions and state patterns back into it, and progressive disclosure became the default answer to complexity across the product.
What it made possible
Lisa moved in
When LinkedPhone built Lisa, its AI receptionist, she didn't need a routing system of her own. Every option already ended in an action and a fallback, so Lisa only had to be a new action.
No answer → Voicemail became No answer → Lisa on any option, and Default Handling could hand unmatched calls to her with the owner's own instructions. Later, Lisa's own project flipped the relationship so she answers first and Auto Attendant is the fallback, and both moved into one tab, Setup. Every existing setup kept working through both changes.
Reflection
What I learned
What I learned
You don't have to remove power to remove fear.
Simplifying would have meant cutting features some customers chose LinkedPhone for. Revealing the same power later kept it for them and let everyone else start. That idea outlived the feature: it shaped the design system, the desktop app's structure and, eventually, Lisa.
Closing
Same system. Different depth. Owners grow inside the one they know.
More work
-
Lisa
AI Receptionist
An AI receptionist designed to make handing over the phone feel natural for small businesses.
View case study · 20 min
-
Website Transformation
Design → Publishing
A 500+ page website moved to Framer and rebuilt around a new structure and content system, so design could publish.
View case study · 12 min
-
YONO by SBI
App Redesign Concept
A first-principles redesign exploring how mobile banking could become clearer and easier to use.
View case study · 20 min
-
Cyberpunk 2077
Website Concept
A launch-website concept built around the game’s world, atmosphere and visual language.
View concept · 5 min
-
Snake
Browser Game
Snake, reimagined for the devices we hold today: a 3D space worm you steer with a thumb, a mouse, keys or a gamepad.
View case study · 10 min














