Job interviews are a skill. Like any skill, practice helps. But how do you practice answering "Tell me about a time you handled conflict" without:
- Bothering friends to roleplay
- Paying $200/hour for a career coach
- Uploading your resume to yet another service
I built HotSeat AI to solve this problem entirely on my own hardware.
The Privacy Stakes
Interview preparation involves sensitive information:
- Your complete work history
- Companies you're targeting
- Salary expectations
- Recorded practice sessions with your face/voice
- Honest assessments of your weaknesses
Cloud-based interview prep tools collect all of this. Some sell it for "recruitment insights." Others get breached. All of them have your data forever.
Running locally means: your career stays your business.
The Components
Building a full interview coach for local deployment was an ambitious project that evolved multiple times as the requirements for various AI capabilities changed:
Voice Conversation
- Speech-to-Text: whisper.cpp transcribes your spoken answers
- Text-to-Speech: Piper TTS gives the AI a voice
- LLM: Ollama (Gemma 3 or Qwen 2.5) generates questions and feedback
Body Language
MediaPipe runs in the browser, analyzing your webcam feed:
- Posture (are you slouching?)
- Eye contact (looking at camera vs. away)
- Nervous movements (excessive fidgeting)
Resume Analysis
The same LLM that conducts interviews can:
- Score ATS compatibility
- Find keyword gaps vs. job descriptions
- Suggest professional improvements
How a Session Works
-
Select Mode
- Quick Start: Random questions
- Targeted: Paste a job description
- Custom: Choose question categories
-
Choose Persona
- 20+ AI interviewers: friendly, tough, technical
- Different industries and seniority levels
-
Practice
- AI asks a question via voice
- You respond naturally
- Body language feedback
- AI follows up based on your answer if necessary
-
Review
- Phase-by-phase breakdown
- Scores: clarity, confidence, technical accuracy, STAR method
- Specific suggestions for improvement

Technical Challenges
Latency Matters
Interviews are conversational. If the AI takes 10 seconds to respond, the practice feels unnatural. Optimizations:
- Streaming transcription (starts processing before you finish speaking)
- Aggressive model quantization (smaller = faster)
- Response streaming (starts speaking before generation completes)
With decent hardware, the loop feels close to real-time.
Multi-Modal Coordination
The app juggles several simultaneous streams:
- Microphone → whisper.cpp → text
- Text → LLM → response
- Response → TTS → audio
- Camera → MediaPipe → body language metrics
Each has different latency characteristics. Synchronizing them required careful async programming.

Hardware Requirements
| Component | Minimum | Recommended |
|---|---|---|
| RAM | 8GB | 16GB |
| Storage | 10GB | 20GB |
| GPU | Optional | Significantly helps |
CPU-only works but responses will be slower. A mid-range GPU or Apple Silicon makes conversations feel natural.
The Feedback Loop
After each session, the app provides detailed analytics:
Per-Question Scores
- How clearly did you communicate?
- Did you use specific examples?
- Was your answer structured (STAR method)?

Behavioral Competencies
- Leadership examples
- Conflict resolution
- Technical problem-solving
Progress Over Time
- Trend charts across sessions
- Identify persistent weak areas
- Track improvement

What I Learned
Local AI is Conversational
I was skeptical that local models could hold realistic interviews. They can. Gemma 3 4B asks probing follow-ups, catches contradictions, and provides specific feedback.
Body Language Analysis Works
MediaPipe is surprisingly accurate at detecting posture and eye contact. The post-practice report showing "low eye contact" made me immediately aware of habits I hadn't noticed, changing how I approached my next session.
Privacy Enables Honesty
Knowing no one else would see my practice sessions made me more willing to be honest about weaknesses. I practiced answering difficult questions I'd never record on a cloud service.
Results
The app delivers on its core promise:
- Realistic interview practice with AI-generated follow-up questions
- Immediate feedback on answer structure and body language
- Progress tracking across sessions to identify improvement areas
- Complete privacy with zero data leaving your device
No career coach fees. No data uploaded anywhere. Just practice, feedback, improvement.
Source Code
HotSeat AI is open source: github.com/fullstackgrower/fsg-hotseat-ai
