Skip to content

Rubel286/AI-Technical-Interview-System

Repository files navigation

AI Technical Interview System

📌 Project Overview

AI Technical Interview System is a standalone AI-powered technical screening platform designed to automate candidate interviews through conversational assessments, voice interaction, answer evaluation, and real-time candidate monitoring.

The platform conducts structured technical interviews, evaluates responses using NLP-based similarity scoring, tracks candidate behavior through browser telemetry and face monitoring, and generates detailed performance reports for recruiters.


Features

AI-Powered Technical Interviews

  • ✅ Automated technical screening workflows
  • ✅ Structured Python and SQL interview question banks
  • ✅ Stateful interview progression and session management
  • ✅ Dynamic question delivery and answer recording
  • ✅ AI-assisted conversational interview experience

Candidate Evaluation

  • ✅ TF-IDF based answer scoring
  • ✅ Keyword matching and response relevance analysis
  • ✅ Performance report generation
  • ✅ Strength and weakness identification
  • ✅ Detailed question-by-question evaluation

Interview Monitoring

  • ✅ Real-time face tracking
  • ✅ Face absence detection
  • ✅ Browser tab-switch detection
  • ✅ Candidate activity monitoring
  • ✅ Interview integrity enforcement

Voice & Interaction

  • ✅ Neural text-to-speech responses
  • ✅ Voice-guided interview flow
  • ✅ Audio response generation

Session Management

  • ✅ Session persistence and recovery
  • ✅ Local interview state caching
  • ✅ Resume interrupted interviews
  • ✅ Stateful candidate tracking

Technology Stack

Backend

  • Python
  • Flask

Artificial Intelligence

  • Google Gemini API
  • TF-IDF Vectorization
  • Cosine Similarity Scoring

Frontend AI Models

  • TensorFlow.js
  • Tiny Face Detector
  • COCO-SSD Object Detection

Database

  • MongoDB

Voice Processing

  • Edge TTS

Project Structure

AI_Interview_Standalone/
│
├── app.py
├── evaluator.py
├── interview_engine.py
├── questions.py
├── state_manager.py
├── requirements.txt
├── start.bat
├── .env
├── .gitignore
│
├── static/
│   ├── audio/
│   └── models/
│       ├── tiny_face_detector_model-shard1
│       ├── tiny_face_detector_model-weights_manifest.json
│       └── coco-ssd/
│
├── templates/
│   ├── index.html
│   ├── interview.html
│   └── result.html
│
└── README.md

Installation & Setup

1️⃣ Clone the Repository

git clone https://github.com/Rubel286/AI-Technical-Interview-System.git
cd AI_Interview_Standalone

2️⃣ Create & Activate Virtual Environment

Windows

python -m venv venv
venv\Scripts\activate

macOS / Linux

python3 -m venv venv
source venv/bin/activate

3️⃣ Install Dependencies

pip install -r requirements.txt

4️⃣ Configure Environment Variables

Create a .env file in the project root:

SECRET_KEY="your key"

MONGO_URI=mongodb://127.0.0.1:27017/recruitmentDB

GEMINI_API_KEY="your api key"

Run the Application

Verify MongoDB Connection

mongosh

Start the Server

python app.py

Or use the Windows launcher:

start.bat

Access the Application

Open your browser and navigate to:

http://127.0.0.1:5050

Integration with PeopleOps

This service can operate independently or integrate directly with the PeopleOps recruitment platform.

Workflow

  1. Recruiter creates an interview request inside PeopleOps.
  2. A secure interview token is generated.
  3. The candidate receives a personalized interview link.
  4. The candidate completes the AI-powered screening session.
  5. Interview results are automatically stored in MongoDB.
  6. Recruiters review performance reports inside the recruitment platform.

Stored Evaluation Data

The service generates:

  • Interview Score
  • Question-by-Question Evaluation
  • Candidate Strengths
  • Candidate Weaknesses
  • Detailed Interview Reports
  • Interview Completion Status

Screenshots

Landing Page

Landing Page

Interview Portal

Interview Portal

Result Dashboard

Result Dashboard


Important

This project uses Google Gemini API.

Get your API key from:

https://aistudio.google.com/app/apikey


License

This project is licensed under the MIT License.

See the LICENSE file for details.

About

A standalone AI Technical Screening microservice that conducts automated candidate screens. Features Gemini-powered conversation flow, Edge-TTS neural audio responses, real-time client-side face-tracking for cheating detection, and direct MongoDB database synchronization with a parent enterprise recruitment platform.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors