The problem I keep solving
Support chatbots rarely fail on the technology. They fail on trust. People don't believe the bot understands them, so they bail to a human or just leave. Designing my way out of that, earning user confidence through the conversation itself, is the work I'm known for: clear intent handling, honest answers, and the right voice for the moment. I've done it for enterprise support assistants. Here I turned the same craft on myself.
The brief
Recruiters skim. So I built a bot that answers their real questions in my voice, and proves the skill by being the artifact. No NDA material, no client data, this one is entirely about me, which is exactly why it's the cleanest demonstration of how I think about conversation.
Two voices, one trust strategy
Confidence comes from the right register, so the bot opens by asking who you'd like to talk to:
- Potter: my professional voice. Crisp, senior, straight answers. Built for a hiring manager who wants competence, fast.
- Boy: my five-year-old nephew, who calls me Abah. He disarms, humanises, and makes the same facts delightful. Built for the moment someone wants to smile.
You can switch between them at any point and the conversation carries on, because the goal isn't novelty, it's meeting each visitor in the register that makes them comfortable enough to keep asking.
The conversation flow
The whole experience is one designed flow, from the launcher to a graceful dead-end recovery. The same map lives in FigJam; here it is in brief:
Designing for confidence, in the details
Trust is built in the small moments. A few of the decisions I'm proudest of:
Honesty on the hard question
The easy design move is to deflect an awkward question into a strength. I routed it to a straight, human answer instead, because dodging is exactly what erodes confidence.
Warmth, with a teachable moment
A confused user is a lost user. The "What do you mean?" branch turns a potential stumble into a small, charming explanation, then gets back on track.
Depth when it's tested
A hiring manager screening for a lead asks leadership questions. Each one routes to a real, specific story, so the bot can actually answer "can he lead?", not just "what did he ship?"
Built for real, ready for an LLM
Today the bot is fully scripted and keyless: instant, free to run, nothing to break, and private (no data leaves the page). But the conversation layer and the answer engine are deliberately separate. The widget calls one respondTo() function; swap that for a fetch('/api/chat') to a small serverless endpoint and the same experience runs on a real Claude (Sonnet) model, grounded in the same knowledge base, with the API key safe on the server. The conversation design doesn't change, only the brain behind it.
It's also built to WCAG habits I don't drop for side projects: a labelled region, a live message log, 40px touch targets, full keyboard operation, and reduced-motion support.
Try it, it's right here
This is the rare case study where the product is on the page with you. Tap the chat bubble in the bottom corner and ask it something real, "how does he lead?", "why did he leave his last role?", "can I see your résumé?", or meet my nephew and ask "who's Potter?". The thing you're evaluating me on is the thing you can use.
Why this is the hire
If you're looking for a conversation, LLM, or AI designer who can make an assistant people actually trust, you don't need to take my word for it, you just used my work. I designed the flow, wrote every line in two voices, handled the edge cases, and built it to upgrade into a real model. That is the interview.