Turning compliance into engagement

2019Senior Software EngineerReact

01 — Overview

How do you make mandatory training something people actually engage with?

In 2019, I joined Spot early in its development and helped build an interactive workplace harassment and discrimination training experience.

I was excited to work on it because the subject matters to me. I want to build things that have a tangible impact in the world and can genuinely make people’s lives better.

The training product is no longer available. The diagrams below are abstractions, not screenshots.

02 — The problem

Workplace harassment and discrimination are serious subjects. Training around them also has legal requirements, but simply satisfying those requirements isn’t enough.

People can easily treat mandatory training as something to click through as quickly as possible. We wanted to create something that could hold people’s attention, communicate difficult material clearly, and remain accessible to a broad audience.

The delivery constraints were demanding too. We had roughly three months to ship, working remotely and asynchronously as part of a small interdisciplinary team across engineering, content, design, branding, and illustration across different time zones.

The experience also needed to work for many different people. That meant thinking carefully about accessibility, representation, language, visual choices, and the ways different users might interact with and perceive the material.

03 — My Contribution

My contribution was focused on the frontend experience and on making the product feel engaging. I worked on the interactions, motion, transitions, conversational pacing, and responsive states that gave the training a sense of presence and helped people stay with the material.

I also made sure the chatbot respected the product’s standards for privacy, security, and accessibility. That included protecting user data, preserving anonymity where required, and making sure the experience worked with assistive technologies and different interaction needs.

I was also part of broader conversations around accessibility and representation, contributing feedback on whose experiences were reflected and how the product could better account for a wider range of people.

Hold attention

Progress requires participation

Episodes move through a sequence of cards with progress always visible. Continue actions appear only after there has been enough time to engage with the content.

continuefills as the read time passescontinueunlocked, once readcontinuecard 4 of 6 — scenario

Change the light

One switch recolors the whole screen

The theming system gave different screens their own visual character without styling each one independently. Colors could adapt to the illustration style and the type of content, while the underlying interface stayed consistent.

startepisode indexcontinueinstructionscontinueevening scene
One switch, every element

Count real time

Ten minutes, actually spent

The training had different compliance requirements for supervisors and employees. Time counted only while someone was actively participating, with the timer pausing after inactivity and completion rules adapting to their role.

employees10m10m10m10m10m10m= 60 min
supervisors10m10m10m10m10m10m= 120 min
09:55continuetimer runs while readingpaused09:36 / 10:00resumepauses after 30s idle03:55 / 10:00ok, got ittoo fast — go back through it

Answer, then understand

Questions that teach, not test

Questions follow the scenarios they refer to, but there is no failing answer. Each response reveals the relevant legal definition, turning the question into another part of the learning experience.

questionyesnocheck answerquestion after the scenarioexplanationask an expertcontinueexplanation, not a scoreexperiences12345document an incidentcontinueexperience survey, optional

From training into reporting

The conversation becomes the report

At the end of the training, people are asked whether anything they encountered reflects their own workplace experience. If it does, they can continue directly into Spot’s conversational reporting flow and choose whether to keep their report private or submit it.

faqyes, in my workspacenoasked at the end of trainingfaqfollows up on what was saidfaqyes, submitno, save for laterprivacy concernskeep it, or submit it

Reach everyone

Accessible by default

Accessibility settings are part of the interface. People can adjust contrast, motion and text size, with screen reader support built into the experience.

faqthe menu is in the header, alwaysfaqtext size, three stepsfaqcontinuehigh contrast, same layout
Set by the person, not detected

04 — In hindsight

What stays interesting to me about this project isn’t that we invented conversational interfaces. We didn’t.

It’s that we chose conversation because it fit the problem. Years before talking to AI systems became an everyday interaction, we were exploring how a conversational interface could create a sense of privacy, attention, and presence around a sensitive subject. The technology followed the human need. This project also brought together many things I still care about: technical execution, visual sensibility, accessibility, collaboration across disciplines, representation, and building things that have consequences beyond the screen.

I want to build things that have a tangible impact in the world and can make people’s lives better.

Next projectShipping an AI moderation platform