
Under Fire AI
The interview you can't prepare a script for.
I posted UnderFireAI on IH a while back and landed around #40. The product's been live at underfireai.com for a while now, but looking back, I think the actual insight got buried under the feature list. So I'm taking another swing at the pitch.
The insight
Every interview prep tool on the market gives you questions to rehearse. Real interviews aren't like that. The hardest part isn't the question — it's the human across the table. They have a mood. They have pet peeves. They have a hidden agenda. You have to read all of that on the fly, while answering.
So I built it the other way around.
What it actually does
UnderFireAI gives you an AI interviewer with a hidden personality drawn from one of 8 archetypes — the Skeptic, the Griller, the Friendly, the Silent Judge, the Rapid Fire, the Culture Fit, the Technical Expert, the Executive.
You don't see which one you're getting. You have to figure it out from how they ask questions, what they push back on, when they go quiet.
Each archetype runs on six independent personality traits — directness, depth preference, warmth, patience, technical focus, skepticism, all 0–100 — plus a live mood engine that swings between −100 and +100 based on your answers. Drop a buzzword in front of the Skeptic? Mood plummets. Give a vague answer to the Griller? They go five levels deeper. Ramble at the Rapid Fire? They cut you off.
After the session, the personality is revealed alongside the scorecard, and you can replay every message to see exactly when their mood shifted on you.
What's in the box
6 interview types — behavioral, technical, case study, HR screen, panel (multiple AI interviewers at once, each with their own archetype), phone screen
6 company styles — FAANG, startup, consulting, finance, enterprise, government — each with style modifiers (FAANG = +20 technical depth, startup = −20 formality, etc.)
Voice mode — Cartesia Sonic 3, ~40ms time-to-first-audio, 6 voices matched to interviewer personality. Voice is a different skill than typing answers, and that's the whole point.
Live coding — Judge0 sandbox, 7 languages, visible + hidden test cases, scored on correctness, efficiency, code quality, and approach
Salary negotiation simulator — separate module, AI recruiter pushes back hard, generates a "Simulated Final Offer" as a real dollar figure showing what your technique closed and what you left on the table
Resume vulnerability scanner — flags vague metrics, buzzword stacking, scope overstatement, employment gaps, then generates the exact probing questions an interviewer would ask. Resume context auto-injects into every session so the AI targets your real weak spots.
JD gap analyzer — paste a job description, get skill-gap breakdown, generate practice questions specific to the role
Custom interviewer builder — blend two archetypes, override the six trait sliders, add constraints (heavy follow-ups, time pressure, compensation pushback)
Full replay — playback controls, mood evolution chart, per-message scoring, code submission replay
3D HUD (React Three Fiber) — feature-flagged, falls back gracefully to 2D when WebGL isn't available
Outbound webhooks — HMAC-SHA256 signed
session.completedevents you can pipe into Notion, Slack, or your own dashboard
Tech stack (the honest version)
Next.js 15 + React 19 + TypeScript strict, Supabase (17 tables, RLS on everything), Stripe v17.
For the AI side: OpenRouter as the gateway, DeepSeek V3 for the live interview conversation (cheap, fast, surprisingly good at sustained personality work), Mistral Small 3.1 for analysis — deliberately a different provider so analysis calls don't collide with interview-session rate limits on DeepSeek. The Anthropic SDK isn't in the runtime at all; OpenRouter end-to-end.
Voice is Cartesia Sonic 3. Code execution is Judge0 via RapidAPI. 3D is Three.js r169 via R3F.
Pricing — the part nobody else does
Credit packs, one-time, no subscriptions, every feature unlocked with every purchase:
Starter — $25 / 6 interviews
Pro — $35 / 11 interviews
Refill — $10 / 5 interviews
This was a deliberate call. Nobody needs interview prep every month. You need it hard for a few weeks before a job hunt, then you don't think about it again for a year or two. Charging $29/mo recurring for a tool people actively want for three weeks felt wrong, and the churn would be brutal anyway. One-time packs respect the actual use case. Credits don't expire. Refill whenever.
Why I'm posting this again
The first time around I led with the feature list. That was the mistake. The product isn't the features — it's the philosophy: train under fire so the real thing feels easy. Hidden personalities. Mood that responds to every word. Voice mode where the latency makes you sweat. Resume scanner that tells you the exact questions you're going to get hammered on. Negotiation sim that produces a real dollar number at the end so you can feel what you left on the table.
If you've ever walked out of an interview thinking "I knew that — why couldn't I deliver under pressure?" — this is the tool I wish I'd had.
Two things I'd love your take on
Selling credit-pack pricing into a market trained on subscriptions — what messaging actually worked for you?
The hidden-personality mechanic is the strongest differentiator I've ever shipped, but it's the hardest to communicate cold. How would you pitch it in one sentence?
Happy to dig into the architecture, the prompt design for the personality and mood engine, or the pricing model in the comments.
— Chris underfireai.com
AI-Powered Interview Coaching
Under
Fire AI
Train under fire so the real thing feels easy. AI interviewers with hidden personalities, voice mode, salary negotiation training, live coding challenges, resume vulnerability scanning, and real-time STAR scoring. Credit-based pricing — no subscriptions, every feature unlocked from day one.
StatusProduction Ready
StackNext.js 15 · React 19 · Supabase
PricingCredit packs — from $25 one-time
239
Source Files
47K+
Lines of Code
8
Archetypes
17
DB Tables
37
API Routes
6
Interview Types
Overview
The interview you can't prepare a script for.
UnderFireAI is an AI-powered interview coaching platform built on a single insight: real interviews are unpredictable. Traditional prep gives you questions to rehearse. UnderFireAI gives you an AI interviewer with a hidden personality — and makes you discover and adapt to it in real time, exactly as you would with a real person across the table.
Beyond mock interviews, the platform includes a full salary negotiation simulator, resume vulnerability scanning, job description gap analysis, live code execution in 7 languages, deep progress tracking, and a 3D HUD overlay built with React Three Fiber. Pricing is credit-based — one-time packs, every feature unlocked with every purchase, no subscriptions, no tiers. Production-deployed and ready to monetize immediately.
The Secret Sauce
Eight hidden archetypes.
Each interviewer runs on six independent personality trait scores — directness, depth preference, warmth, patience, technical focus, and skepticism — all 0–100. Mood evolves in real time on a −100 to +100 scale across 14 tracked triggers. The personality is hidden during the session and only revealed in the post-session analysis.
The Skeptic
"Can you give me a specific example? With numbers?"
Skepticism: 90/100. Doubts everything, demands proof. Will challenge every claim you make — and every claim you can't back up.
red flags: vague answers, buzzwords, unverifiable claims · green flags: data, concrete outcomes · difficulty: +1
The Griller
"Let's go five levels deeper on that."
Depth preference: 95/100. Follow-up tendency: 95%. Goes deep on every topic. Surface knowledge gets exposed immediately.
red flags: bluffing, memorized answers · green flags: depth, honest gaps · difficulty: +2
The Friendly
"That's great! Tell me about the hardest part."
Warmth: 90/100. Warm and supportive — then throws curveballs when your guard is down. 50% curveball frequency.
red flags: arrogance, taking all credit · green flags: humility, team focus · difficulty: −1
The Silent Judge
"Mm-hm. Continue."
Verbosity: 20/100. Zero feedback, zero reassurance. Poker face the entire time. Tests whether you can drive without validation.
red flags: need for approval, rambling · green flags: confidence, structure · difficulty: +1
The Rapid Fire
"Good. Next — 30 seconds."
Patience: 20/100. Curveball frequency: 70%. Fast-paced, may interrupt. Punishes long-winded answers and rewards crisp delivery.
red flags: rambling, slow thinking · green flags: concise, prioritized · difficulty: +1
The Culture Fit
"Tell me about a time your team disagreed."
Warmth: 70/100. Obsessed with team dynamics, collaboration, and conflict resolution. Follow-up tendency: 70%.
red flags: blame-shifting, lone wolf · green flags: collaboration stories, humility · difficulty: ±0
The Technical Expert
"Walk me through the time and space complexity."
Technical focus: 100/100. Depth preference: 90/100. Tests architecture decisions, trade-offs, and current best practices without mercy.
red flags: buzzword soup, overconfidence · green flags: nuanced reasoning · difficulty: +2
The Executive
"How does this align with the broader strategy?"
Formality: 80/100. Big picture over tactics. Cares about business impact, leadership presence, and clear communication of outcomes.
red flags: narrow focus, passive attitude · green flags: vision, strategic clarity · difficulty: +1
Platform Features
Everything a real interview has. Plus the feedback it doesn't.
🔥
AI Mock Interviews
Six complete interview types covering every format. Behavioral — STAR method, 5–8 questions, 70% follow-up rate. Technical — system design, 4–6 questions, 80% follow-up intensity. Case Study — business problems, 90% follow-up rate. HR Screen — culture fit, 6–10 questions. Panel — multiple AI interviewers simultaneously, each with distinct archetype, conviction score, and area of focus that evolves as you answer. Phone Screen — rapid-fire first impression rounds. Six company styles with distinct modifiers: FAANG (high formality, +20 technical depth), Startup (−20 formality, +20 pace), Consulting (+30 formality, case focus), Finance, Enterprise, and Government. Difficulty 1–10 with configurable session length.
6 interview types · panel multi-interviewer · 6 company styles · difficulty 1–10 · configurable length
🎤
Voice Interview Mode
Speak naturally and the AI interviewer responds via Cartesia Sonic 3 — 40ms time-to-first-audio, streaming delivery. Six selectable AI voices matched to interviewer personality: Kiefer (professional, direct — suggested for Skeptic, Griller), Kyle (dynamic, energetic — Rapid Fire), Leo (deep, authoritative — Executive, Technical Expert), Katie (professional, clear — Silent Judge), Tessa (warm, engaging — Culture Fit, Friendly), Maya (friendly, approachable — Friendly, Culture Fit). Reads answers are easy. Delivering them confidently out loud under pressure is the skill that actually closes offers.
Cartesia Sonic 3 TTS · 6 AI voices · 40ms latency · streaming · personality-matched voice suggestions
💻
Live Coding Interviews
Real code execution via Judge0 sandboxed environment. Seven languages: JavaScript, TypeScript, Python, Java, Go, Rust, and C++. Syntax-highlighted editor with challenge description, starter code, and optional hints. Run against visible test cases, then submit for evaluation against full hidden test suite. Timer counts down. Hints system tracks usage and factors into score. Submissions evaluated on Correctness, Efficiency (time/space complexity), Code Quality, and Problem Solving approach. Code replay panel after session shows every submission, test results, execution time, and AI evaluation alongside the message transcript.
Judge0 sandboxed execution · 7 languages · visible + hidden tests · hints system · complexity analysis · code replay
📊
Real-Time STAR Scoring
Every response analyzed across six dimensions with type-specific weighting. Behavioral interviews weight STAR at 25%. Technical interviews weight Depth at 35% and drop STAR to 5%. Case Study drops STAR to 0% entirely. HR weights Confidence and Communication highest. Filler word detection counts exact instances per response. Response time and word count tracked. Per-response coaching notes are specific and actionable — not generic advice. Session scorecard: overall score, five category breakdowns, Strengths, Improvements, Key Moments, and an AI-generated Interviewer Impression written from the hidden personality's actual point of view.
6 dimensions · type-weighted scoring · filler word counts · coaching notes per response · interviewer impression
💰
Salary Negotiation Simulator
A fully separate module — dedicated session management, its own API routes (/api/negotiate/), and independent scoring pipeline. Enter your offer and target, then negotiate against an AI recruiter who pushes back hard and makes counter-offers. The recruiter won't volunteer extra budget — you have to earn it. Scored on four dimensions: Confidence (strength of your asks), Framing (value positioning), Strategy (leverage and timing), and Composure (handling pressure). AI generates a Simulated Final Offer — a concrete figure showing exactly what your technique closed and what you left on the table. Full session history and replay included.
dedicated session module · realistic AI recruiter · 4 scoring dimensions · simulated final offer · replay
📄
Resume Vulnerability Scanner
Upload your resume for analysis from a simulated skeptical senior interviewer. Produces an overall health score with full breakdown, then identifies specific vulnerabilities: vague metrics without numbers, buzzword stacking, unverifiable claims, employment gaps, scope overstatement, missing context (team size, budget), and technical depth concerns. For every vulnerability you get the exact probing questions an interviewer would ask — including follow-ups — severity (high/medium/low), and copy-paste rewritten resume text. Not advice like "add metrics." Actual replacement language. Resume context is injected into every interview session so the AI targets your real weak spots automatically.
health score · vulnerability categories · exact probing questions · copy-paste fixes · session context injection
🎯
Job Description Analysis
Paste any job description and get instant AI gap analysis. Skill gap breakdown between JD requirements and your resume — must-have vs. nice-to-have. Match percentage with coverage by technical skills, soft skills, experience level, and industry knowledge. Save JDs to profile. Generate practice questions specific to the job's requirements and your identified gaps. Run interview sessions that specifically target where you're exposed for the role — resume alignment context injected automatically so the AI probes the exact questions you need to be ready for.
skill gap analysis · match percentage · saved jobs · targeted practice generation · auto-injected session context
🎭
Custom Interviewer Builder
Build AI interviewers from scratch. Blend two archetypes with configurable mix ratios. Override all six personality trait sliders independently — directness, depth preference, warmth, patience, technical focus, skepticism — all 0–100. Set custom red flags, green flags, pet peeves, and favorite topics. Add behavioral constraints: heavy follow-ups, time pressure, compensation pushback, requires specific examples. Choose voice. Save to library and reuse. For panel interviews, select preset panel configurations (Engineering Loop, Cross-Functional, Exec Panel, Startup Founders) or build a fully custom panel with individually configured interviewers each with their own archetype and area of focus.
archetype blending with ratios · 6 trait sliders · behavioral constraints · panel presets · saved library
⏪
Full Interview Replay
Every session recorded and available for detailed playback. Playback controls with play/pause, skip, jump to start/end, and speed (0.5×, 1×, 1.5×, 2×). Visual timeline marks strong moments, weak moments, and turning points across the session. Stats bar shows average scores across all six dimensions. Click any message to expand per-response analysis with coaching notes. Code replay panel for technical interviews shows every submission with test results, execution time, language, and AI evaluation. Mood evolution chart shows exactly when the interviewer warmed up, went cold, or shifted — message by message across the session.
playback controls · visual timeline · per-message expansion · code replay panel · mood evolution chart
📈
Progress & Badge System
Track improvement with data. Dashboard shows total sessions, practice hours logged, current streak, and longest streak. Recharts-powered score trends show trajectory across all six scoring dimensions over time — improving, plateauing, or regressing. Breakdowns by interview type reveal which formats need work. Badge system across four categories: Milestone (first interview, 5, 10, 25 sessions), Performance (first 80+ score, first 90+), Streak (3-day, 7-day, 30-day consistency), and Special achievements. Four badge tiers: Bronze, Silver, Gold, Platinum. Badges earned permanently and tied to profile.
streak tracking · 6-dimension score trends · type breakdowns · 4 badge categories · 4 tiers · Recharts
🔗
Webhook API Integration
Connect UnderFireAI to any external tool with outbound webhooks. Receive real-time session.completed events with full session data: all scores, coaching feedback, strengths, improvements, and AI interviewer impression. HMAC-SHA256 signature verification on every payload. Exponential backoff retry up to 3 attempts with full delivery log history. Configure multiple endpoints per account targeting specific events. Test delivery from the UI before going live. Pipe results into Notion, Slack, Airtable, or custom analytics dashboards. Full webhook management system: create, update, delete, test — built and deployed.
session.completed events · HMAC-SHA256 · retry with backoff · delivery logging · test from UI
🌐
3D HUD Overlay
A React Three Fiber powered 3D overlay rendered live during interview sessions, built on Three.js r169. Four HUD components: MetricGauges (real-time dimension scores as 3D gauges), StarRing (STAR method completion visualized as a 3D ring), HistoryChart (score history in three-dimensional space), and MoodIndicator (interviewer mood rendered dynamically). WebGL detection built in — checks at session start, gracefully falls back to the standard 2D layout when unavailable. Feature-flagged via NEXT_PUBLIC_ENABLE_3D_HUD — toggle per Vercel environment without a redeploy. Audio context tracks microphone levels for visual feedback during voice mode.
React Three Fiber · Three.js r169 · WebGL detection · graceful fallback · env feature flag · audio context
Scoring Engine
The feedback real interviews never give you.
Per-Response Analysis
Six scoring dimensions with type-specific weights. Behavioral: STAR 25%, Communication 15%. Technical: Depth 35%, STAR 5%. Case Study: STAR 0%, Depth 30%. HR: Confidence 20%, Communication 20%. Per-response: filler word detection with exact counts, response time in seconds, word count, and coaching notes that are specific and actionable — not generic. Each response also tracked against the interviewer's live mood state so you see exactly which answers moved the needle positively or negatively.
Session Scorecard
Comprehensive scorecard at session end. Overall Score (0–100) as type-weighted composite. Five category breakdowns: Communication, Technical Depth, Behavioral Examples, Culture Fit, Problem Solving. Strengths (what landed), Improvements (exactly what to fix). Key Moments — strong moments that won the room, weak moments that cost points, turning points where momentum shifted. AI Interviewer Impression — a paragraph written from the hidden personality's actual perspective describing how they felt about you as a candidate.
Personality Traits & Mood Engine
Six independent 0–100 trait scales per interviewer: Directness, Depth Preference, Warmth, Patience, Technical Focus, and Skepticism. Mood engine tracks a −100 to +100 score per session updated after every message. 14 mood triggers tracked: green flags (specific examples, STAR format used, honesty detected, favorite topic discussed), red flags (vague response, deflection, pet peeve triggered, STAR format missing), and follow-up quality. Mood state stored per message and visible in replay — so you can see exactly which answers impressed and which lost ground.
Coding & Negotiation Scoring
Coding submissions: Correctness (visible + hidden test cases), Efficiency (time and space complexity analysis), Code Quality (style, readability, best practices), and Problem Solving (approach and methodology). Hint usage deducted. Execution time and memory captured per submission. Negotiation scoring: Confidence, Framing, Strategy, and Composure — all tracked across the full conversation. Simulated Final Offer generated as a concrete dollar figure showing what the technique closed versus the gap left on the table. Full negotiation session replay included.
Architecture
Production-grade from day one.
Next.js 15React 19TypeScript 5.7SupabasePostgreSQLStripe SDK v17Tailwind CSSRadix UIFramer Motion 11GSAP 3.14Zustand 5TanStack Query 5ZodRechartsReact Three FiberThree.js r169Cartesia Sonic 3OpenRouterJudge0Lenis
Frontend
Next.js 15 App Router with React 19. Full component library on Radix UI with Tailwind CSS. Framer Motion 11 and GSAP 3.14 for animations. Zustand 5 for client state. TanStack Query 5 for server state. Recharts for analytics. React Three Fiber + Three.js r169 for 3D HUD — WebGL-detected with automatic 2D fallback. Lenis for smooth scroll. Sonner for toasts.
Backend & Database
Supabase (PostgreSQL) with SSR Auth integration. 17 database tables: interview_sessions, interview_messages, session_scores, session_interviewers, interviewers, interviewer_personality, coding_challenges, code_submissions, negotiation_sessions, user_resumes, resume_insights, job_descriptions, user_progress, interview_purchases, profiles, webhooks, webhook_deliveries. Row Level Security enforced on every table.
AI Pipeline
Multi-model via OpenRouter. DeepSeek (deepseek/deepseek-chat) for live interviews — temperature 0.8, frequency_penalty 0.3. Mistral Small 3.1 24B for analysis — separate provider to avoid DeepSeek rate limit collisions, temperature 0.3. Claude Haiku as fallback for complex reasoning. Cartesia Sonic 3 for TTS with 6 voice options. Full backstory generator, mood engine (−100 to +100), and response sanitizer running per session.
Payments & API
Stripe SDK v17 with checkout, customer portal, and webhook lifecycle. Credit-based pricing: Starter Pack ($25 / 6 credits), Pro Pack ($35 / 11 credits), Refill Pack ($10 / 5 credits) — all one-time, no subscriptions. 37 API routes across interview creation, session chat, STAR analysis, voice synthesis, resume upload/analysis/insights, job description parsing, code execution, negotiation sessions, progress, webhooks, and Stripe. Outbound webhook system with HMAC-SHA256 and exponential backoff retry.
Security
Production-hardened.
✓
Row Level Security
All 17 tables enforce RLS policies. Users can only read and write their own data. No cross-user data access possible at any level.
✓
Auth Middleware
Supabase SSR Auth with session verification on every protected route. Middleware runs before any page or API handler executes.
✓
Stripe Webhook Verification
All incoming Stripe events verified against signing secret before processing. Replay and spoofed events rejected at the gate.
✓
HMAC Outbound Webhooks
Every outbound webhook payload signed with HMAC-SHA256. Receiving systems can verify authenticity on their end without trusting the IP alone.
✓
Sandboxed Code Execution
Live coding challenges run inside Judge0's isolated execution sandbox. No user code ever touches the application server.
✓
Input Validation
All API inputs validated with Zod schemas before any processing. TypeScript 5.7 enforces type safety end to end.
Pricing Model
Credits. One-time. No subscriptions.
Every purchase unlocks every feature immediately — no tiers, no feature gating, no recurring charges. Credits never expire. Buy a pack, use at your own pace, refill whenever you need more.
Starter Pack
6 Interviews
One-time purchase · all features unlocked
$25 one-time
~$4.17 per interview
✓ All 6 interview types
✓ Voice mode (Cartesia Sonic 3)
✓ All 8 interviewer archetypes
✓ STAR scoring & coaching
✓ Resume vulnerability scanner
✓ Job description analysis
✓ Custom interviewer creator
✓ Salary negotiation simulator
✓ Full analytics & replay
✓ Badge & progress tracking
Pro Pack — Best Value
11 Interviews
One-time purchase · all features unlocked
$35 one-time
~$3.18 per interview
✓ All 6 interview types
✓ Voice mode (Cartesia Sonic 3)
✓ All 8 interviewer archetypes
✓ STAR scoring & coaching
✓ Resume vulnerability scanner
✓ Job description analysis
✓ Custom interviewer creator
✓ Salary negotiation simulator
✓ Full analytics & replay
✓ Badge & progress tracking
Refill Pack
+5 Interviews
Add credits anytime · lowest per-interview rate
$10 per refill
$2.00 per interview
✓ All 6 interview types
✓ Voice mode (Cartesia Sonic 3)
✓ All 8 interviewer archetypes
✓ STAR scoring & coaching
✓ Resume vulnerability scanner
✓ Job description analysis
✓ Custom interviewer creator
✓ Salary negotiation simulator
✓ Full analytics & replay
✓ Badge & progress tracking
Train under fire.
Own the platform.
UnderFireAI is available for acquisition. Complete source code, AI interview engine, salary negotiation trainer, 3D HUD, live coding, voice mode, scoring pipeline — production-deployed and ready to scale.
1 Like
Comment
About
UnderFireAI exists because interview prep is broken. The entire industry gives people a list of questions and lets them rehearse scripted answers in front of a mirror. But real interviews aren't scripted.

Comment