The Six-Vertical Pattern
I started building constrAInt for college students.
The pitch was simple. Students compete in pitch competitions. They go on job interviews. They walk into hard conversations with no real way to practice. The audiences they'll face are skeptical investors, exhausted recruiters, and stress interviewers who have heard a thousand pitches and a thousand answers and don't have time for vague ones. Practice against a friend doesn't help. Practice against ChatGPT doesn't help either, because ChatGPT folds under pressure and starts cheering you on by question three.
So I built an architecture that doesn't fold. The personas stay in character. They use what's actually in the student's deck or resume. They challenge specific claims. They score against the frameworks the real audience uses. STAR. SHRM. MEDDIC. Practice runs as many times as the student needs. The data shows progression over multiple sessions.
That was the build. Colleges. Career centers. Pitch competition prep. A clear customer.
Then a 911 dispatch director called.
He runs the dispatch center for the city where I live. He had read about constrAInt and wanted to know if the architecture could simulate the calls his trainees can't really practice for. The unresponsive caller. The third-party suicide. The cardiac emergency where the timing matters and the vocabulary matters and the wrong response costs a life. He told me his current training is roleplay between trainees and supervisors, which works but doesn't scale, and the supervisors don't have time to do enough of it. He wanted infinite reps.
I told him the architecture was the same. The persona is the caller. The constraint engine enforces the call dynamics. The scoring is against NENA standards instead of MEDDIC. He said let's pilot it.
Then a community corrections director, who runs reentry programs across multiple counties, asked if the same platform could help her clients practice job interviews before parole. She said her people walk into interviews with no preparation because there's no realistic way to prepare them. The interviewer is going to ask about the gap on the resume. The interviewer is going to ask about the felony. There's no script. There's no roleplay partner who can sit with that conversation for ten reps. She wanted what the dispatch director wanted. Infinite reps. Realistic pressure. Specific frameworks. Voice, not typing, because her clients can't always type fast enough to keep up with their own thinking.
Then a lead investigator I'm working with at a major Alabama law enforcement department brought up the same problem from a different angle. Officers need to practice high-stakes interrogations against suspects who don't break. They need to practice de-escalation against subjects who escalate. They need to practice CIT conversations against people in crisis without putting real people in crisis through that process. The current training is whatever the department can scrape together with role-players who often don't stay in character because role-players are also officers and they get tired and they want to be helpful. The architecture I built doesn't get tired and isn't trying to be helpful.
Then a multi-location recovery program in Birmingham heard about constrAInt and asked about interview prep for graduates. Then a residential program for high-risk parolees, run by the state Bureau of Pardons and Paroles, asked the same question. Then a college entrepreneurship center, the one I went through as a student, wanted to talk about a summer pilot.
Six verticals in five weeks. Most of them came from someone telling someone else.
The pattern
Every one of these conversations started in the same way and ended in the same way. The opening was different. College students need to pitch. Dispatch trainees need to handle calls. Corrections clients need to interview for jobs. Officers need to interrogate. Recovery program graduates need to land work. Parolees need to reenter the workforce.
Different content. Different stakes. Different vocabulary. But the underlying problem is identical.
People need to practice high-stakes conversations against an audience that doesn't break character and doesn't quietly cheer them on. The audience has to apply the right pressure. The audience has to be available for as many reps as the person needs. The conversation has to be scored against the framework the real-world audience actually uses, so the person can see where they're improving and where they aren't.
That problem doesn't have an industry. It has a structure.
Why this works
The constraint architecture I built, which I call CBAS, is the part that holds across verticals. The personas are different across verticals. The frameworks are different. The user experience is different. But the constraint layer is the same in all of them. It's what keeps the persona in role. It's what stops the AI from giving in to social pressure. It's what makes the practice realistic enough to matter.
Most general-purpose AI tools are cooperative by default. They want to help. They want to make you feel good about your work. They want to find common ground. Those instincts are built deep into how the models are trained, and they're correct for most uses. They're catastrophic for training. Training requires friction. Training requires an interlocutor that doesn't fold. The whole reason a real interview or pitch or interrogation is hard is that the other person has goals that conflict with yours, and constrAInt's job is to simulate that with fidelity.
The same architecture that simulates a Skeptical CFO can simulate a non-compliant subject in a CIT scenario. The same architecture that scores a student's pitch against MEDDIC can score a parolee's interview answer against the structure a hiring manager actually uses. The same constraint engine that holds against a college student trying to charm their way through an answer holds against an officer trying to elicit information from a suspect.
The personas are content. The constraint architecture is infrastructure.
What this means
I built constrAInt thinking I was building for one industry. Five weeks of inbound conversations have made it clear that the platform isn't industry-specific. It's a layer that applies anywhere people need to practice the conversations that decide outcomes.
Higher education. Workforce development. Reentry. Recovery. Public safety. Law enforcement. Six verticals so far, and the pattern is that the next vertical doesn't surprise me anymore. Every time someone reaches out, the surface looks new and the underlying problem is the same one I've been solving since the first day.
I'm running pilots. The college pilot starts in June. The 911 pilot starts when the dispatch director gets back from his conference. The parole and corrections conversations are moving through the next round of approvals. The recovery program is in their internal evaluation cycle.
If you run training in a context where people need to practice high-stakes conversations against an audience that doesn't break, I'd like to talk. The architecture works. The personas adapt. The pilots are scoping smaller than you'd expect.
Built solo from Hamilton, Alabama. Patent-pending architecture. Voice on every account.
constrAInt - It's Time to Train