Akshay Desai
Head of Product Design
LinkedIn Resume Toronto — ↑ ↓ to scroll, then on to the next section
← Selected work
Product design case study · life-sciences B2B SaaS

AI simulator: AI role-play for pharma field teams

A field rep's job is a ten-minute conversation with a clinician who is busy, skeptical, and already treating patients a particular way. The skill is not product recall. It is opening, probing, presenting to the concern they actually raised, handling the objection, and closing on a next step. AI simulator puts an AI clinician on the other side of the call. The design problem is what that implies: one simulation engine has to support two products with opposite psychological contracts.

Role
Product designer
IA, interaction model, both portals, prototypes
Product
AI simulator
ACTO platform · admin + user portals
Output
Two working prototypes
Authoring tool and learner flow
Users
Field reps and MSLs, training authors, managers as certifiers
The rep's entry point. Five competency rings carry across both modes, so a rep sees one picture of their own ability Click to enlarge
01 The problem

Reps only get good at the conversation by having it

A field rep's job is a ten-minute conversation with a clinician who is busy, skeptical, and already treating patients a particular way. The skill is not product recall. It is opening, probing, presenting to the concern they actually raised, handling the objection, and closing on a next step.

The only way to train that is repetition against a realistic partner. In practice that means role-play with a manager: expensive, infrequent, inconsistently judged, and impossible to schedule for a whole field force before launch. Meanwhile the same conversation has to be certified. A rep must be signed off before they carry a therapy, and certification carries an audit obligation that casual role-play cannot meet.

AI simulator puts an AI clinician on the other side of the call. The design problem is what that implies: one simulation engine has to support two products with opposite psychological contracts.

02 The position

Two modes, one engine, deliberately different rules

The first architecture treated Practice and Certification as one thing with a scoring flag. It failed on contact with users: reps stopped practising, because every run felt like it was on their record.

<b>The split that made the product work.</b> The author picks the mode once, on the practice itself. Everything downstream (attempt caps, whether a manager is involved, what the rep sees afterwards, what gets logged) follows from that single choice rather than from a scatter of independent switches.
The split that made the product work. The author picks the mode once, on the practice itself. Everything downstream (attempt caps, whether a manager is involved, what the rep sees afterwards, what gets logged) follows from that single choice rather than from a scatter of independent switches.
03 The model

A practice is five objects, and the stages are the spine

Scores are only meaningful if they compare. That means every scenario, whatever the therapy area, has to be scored against the same skeleton.

<b>One object, one spine.</b> Fixing the stage set is a real constraint (a scenario cannot invent its own structure) and it is what makes a rep's Objections score mean the same thing across cardiology and oncology. The coloured rail is the same five stages seen at a glance: an author reads it as "how complete is this scenario", a rep reads it as "where am I weak".
One object, one spine. Fixing the stage set is a real constraint (a scenario cannot invent its own structure) and it is what makes a rep's Objections score mean the same thing across cardiology and oncology. The coloured rail is the same five stages seen at a glance: an author reads it as "how complete is this scenario", a rep reads it as "where am I weak".
The author's library. Each card leads with the HCP, not the scenario title, because that is how authors and reps both refer to them: "the skeptical cardiologist". Archived scenarios stay visible and dimmed rather than disappearing; a certification that has been retired is still evidence. Click to enlarge
04 Authoring

Writing a scenario is describing a person, not configuring a bot

The authoring form asks for things a training manager already knows how to answer: who the clinician is, what mood they are in, what they care about, what the rep is trying to achieve. Profession and mood are picked from managed domain lists, so scenarios stay comparable and the AI gets consistent inputs.

Everything the AI is allowed to say is grounded in attached resources. An author adds real material (clinical data, promotional decks, compliance guidelines) and each item is processed into a knowledge summary the author can read and edit. That summary, not the raw file, is what the conversation draws on.

Each stage then carries its own objective, context, measurement, key evaluation criteria, and question-with-ideal-answer pairs. That is the scoring contract: the AI is not judging the conversation against a general idea of good selling, it is judging it against criteria the author wrote.

The green and amber ticks on the stage rail are deliberately not a progress bar. They say which stages are fully specified and which are running on defaults, so an author can ship a scenario knowing exactly where it is thin.

Stage authoring. The five stages are a fixed list on the left; the form on the right is everything the AI needs to score that stage. Tabs order the work the way authors do it: describe the person, attach what they know, set how they talk, then brief the rep. Click to enlarge
05 Systems thinking

Pronunciation belongs to the domain, not to a scenario

A synthesised clinician who says "met-FOR-min" wrong is not a rough edge. It breaks the illusion the entire product depends on, and it teaches the rep the wrong pronunciation of the drug they are about to sell.

The obvious fix is a per-simulator field. I made it a domain object instead. The same drug appears in dozens of scenarios; the same therapeutic area is authored by several people. Fixing it once and having it wrong everywhere else is the failure mode that matters.

<b>Shared, and honest about it.</b> Terms belong to one or more libraries; libraries attach to simulators. Anything shared can be changed by someone who cannot see the consequences, so every destructive edit names the simulators it will affect before it commits. Product, disease-state and therapeutic-area terms sync in from conversation settings and are edit-only, so an author cannot delete a term the scenario itself depends on.
Shared, and honest about it. Terms belong to one or more libraries; libraries attach to simulators. Anything shared can be changed by someone who cannot see the consequences, so every destructive edit names the simulators it will affect before it commits. Product, disease-state and therapeutic-area terms sync in from conversation settings and are edit-only, so an author cannot delete a term the scenario itself depends on.
Two spellings, one choice. Every term carries a plain-English alias and an IPA transcription, each with an audio preview, and the Use toggle decides which one drives speech. Most authors write the alias; a medical-affairs reviewer who knows IPA can be precise. Neither is forced on the other. Click to enlarge
06 The conversation

A video call, one exchange at a time

The simulation is framed as a two-panel video call rather than a chat window. The framing does real work: it sets the expectation that you speak out loud, in one take, under time, which is the skill being trained. A chat transcript would train writing.

The rep answers one line at a time and submits each one. That pacing is deliberate. It keeps the run recoverable, gives the scoring engine clean boundaries per exchange, and means a rep who freezes loses one line rather than the attempt.

Everything on screen is either the clinician, the rep, or the four controls a call needs. There is no scoring feedback during the run, no hints, no coaching in Certification mode. The run is evidence, and anything that helps mid-run makes it worse evidence.

Practice mode is where I put the affordances that would corrupt a certification: a suggested reply chip, unlimited retakes, and a transcript you can read while you go.

The run. Caption overlays sit on the speaker's own panel, so it is always obvious who said what. The timer sits with the rep, because the time pressure is theirs. Click to enlarge
07 Scoring

The AI scores; a human is still accountable

A certification decision has to be defensible years later, and "the model said so" is not a defence. So autonomy is a property of the scenario, set by the author, and the state machine differs accordingly.

<b>Two autonomy settings, one visible pipeline.</b> AI Assisted routes every attempt to a named manager who can override any stage score before sign-off. AI Only certifies without review, and is a deliberate choice the author makes on a scenario where the stakes allow it. Both are shown on the card and in the report, so nobody has to guess which one produced a result.
Two autonomy settings, one visible pipeline. AI Assisted routes every attempt to a named manager who can override any stage score before sign-off. AI Only certifies without review, and is a deliberate choice the author makes on a scenario where the stakes allow it. Both are shown on the card and in the report, so nobody has to guess which one produced a result.
The report a rep gets. Result first, because that is the only thing they came for. Then the narrative, then the stage table where the actual coaching lives: criterion, what happened, and the feedback tied to it. The recording and transcript are one click away. Click to enlarge
The manager's view. One certification, its whole cohort, and a status per person in the language of what to do next. Manager Review Required is a task, Awaiting Attempt is not. A rep who has used every attempt gets a Grant Access action instead of a dead row. Click to enlarge
08 Governance

Domain switches, not per-screen exceptions

Some customers will not show AI-written narrative feedback to their field force at all. The compliance position is that a generated sentence about a rep's performance is not something they want in a personnel context. That is a customer-level policy, not a per-practice preference.

So it lives once, in Core Tool Settings, and it cascades: when it is off, the AI narrative disappears from every analysis view and the per-practice toggle is disabled rather than quietly ignored.

The rule I held is that the criterion-based evaluation table is always shown. It is the part a human can check against the transcript. Turning off AI prose removes an opinion; it must never remove the evidence.

The same principle governs attempts. Caps are set by the author, spent attempts are never silently returned, and reopening one is an explicit manager grant that leaves a record.

One switch, stated consequences. The description says exactly what turning it off does and what it does not touch. A governance control whose blast radius you have to discover by experiment is not a governance control. Click to enlarge
09 Measurement

Two audiences, two dashboards

A rep and a training director look at the same certification and want unrelated things. The rep wants to know where they are weak and whether they are improving. The director wants to know whether the cohort is going to be ready before launch, and where the programme is failing.

Rather than one compromise dashboard, the same data is cut twice: competency rings and streaks on the rep's side, funnel and volume on the admin side.

On the admin dashboard the status donut is the one chart that earns its place: it is not a vanity metric but a work queue in disguise. Twelve people in Manager Review in Progress is a bottleneck with a name attached, and fifteen in Re-Attempt Required is a content problem, not a people problem.

Programme health. Attempt count sits next to score deliberately. An 82 average reached in 2.6 attempts is a different programme from an 82 reached first time, and the pair is what tells a director whether the bar is set right. Click to enlarge
The rep's side of the same data. No leaderboard, no comparison against colleagues. The competition is with your own last run, which is the only version of this that survives contact with a sales culture. Click to enlarge
10 Dead ends

Directions I killed

One mode with a "scored" flag Cheapest architecture, and it destroyed practice volume. Reps stopped rehearsing because nothing felt off the record. Two modes with genuinely different rules cost more to build and are the reason the product gets used.
Free-text stages per scenario Authors loved the flexibility and it made every score incomparable. Five fixed stages, with the freedom moved into the criteria inside each one.
Per-simulator pronunciation fields Correct in one place and wrong in thirty. Promoted to a domain catalog with libraries and impact warnings.
Live coaching hints during certification Built, demoed well, and quietly invalidates the evidence. Kept in Practice mode, removed from Certification.
A chat-style simulation Easier to build and trains the wrong muscle. The video-call framing is what makes reps speak out loud.
Leaderboards across the field force In a sales culture this turns a practice tool into a performance-management tool overnight, and practice honesty goes with it. Streaks and personal trend only.
11 Reflection

What I'd carry forward

Psychological contract is an architecture decision. Practice and Certification differ by a handful of rules, but those rules are the whole product. Getting them wrong once cost more than any visual decision on this project.

Promote anything shared to a real object. The pronunciation dictionary started as a text field and became the clearest systems argument in the case for AI simulator, and the pattern generalises to every setting that turns out to be per-domain rather than per-item.

AI opinion and AI evidence are different things. Customers will switch off the narrative; none of them will switch off the criterion table. Separating the two is what let one product serve both postures.

What's unfinished. Speech scoring is currently framed as one score per stage; per-utterance attribution would make the coaching much sharper. Accessibility of a timed, voice-first assessment needs proper design. The current flow assumes a rep who can speak on demand into a working microphone, and certification is exactly the wrong place for that assumption.

AI simulator · ACTO platform · admin and user portals. Scenario data, HCP personas and clinical content shown in the interface are illustrative; screenshots are from the working prototypes. Built on the ACTO Product Design System.

Next project Docalive: turn Google Docs into live websites →