AI-powered interview preparation tool created for the SunHacks Hackathon at ASU. Our team of four won the AI Innovation Award for this project.
- Overview
- Key Features
- Technologies Used
- Installation
- Usage
- Architecture
- Future Enhancements
- Contributors
The AI Mock Interview Prepper is a tool designed to simulate real-life job interviews. It allows users to upload their resume and job description, select an interviewer voice, and go through an interactive interview where AI asks questions based on the provided inputs. The platform evaluates the interview, generates a performance report, and provides voice-based feedback.
Winner of the AI Innovation Award at SunHacks Hackathon 2024.
- Resume & Job Description Analysis: Upload your resume and job description to generate tailored interview questions.
- Voice-based Questions & Responses: Using AWS Polly and AWS Transcribe, candidates can interact via voice for a real-time interview experience.
- Customizable Interviewers: Choose from different virtual interviewers (e.g., "Matthew" or "Ruth").
- Performance Report: AI generates an interview report highlighting the candidate's strengths, weaknesses, and overall score based on their responses.
- Interactive UI: Smooth user experience with real-time feedback and voice responses via WebSockets.
-
Frontend:
- React.js
- Material UI
- Socket.io for WebSockets
- ReactMarkdown for report display
-
Backend:
- Node.js
- Express
- AWS SDK (S3, Polly, Transcribe)
- ffmpeg for audio processing
- OpenAI API for chat-based interaction
- Socket.io for real-time communication
-
Cloud Services:
- AWS S3 for storage
- AWS Polly for speech synthesis
- AWS Transcribe for voice-to-text conversion
-
Clone the repository:
git clone https://github.com/Sujithrt/interview-prep.git cd interview-prep -
Install the required dependencies for both frontend and backend:
# Backend dependencies cd back-end npm install # Frontend dependencies cd front-end npm install
-
Create a
.envfile in the root directory and add the following environment variables:OPENAI_API_KEY=your_openai_api_key ACCESS_KEY=your_aws_access_key SECRET_KEY=your_aws_secret_access_key BUCKET_NAME=your_s3_bucket_name REGION=us-east-1 -
Start the back-end server:
node index.js
-
Start the front-end server:
npm run start
The application will be available at
http://localhost:5001.
- Upload your resume and job description.
- Select an interviewer voice.
- Start recording your responses via voice.
- View your performance report after completing the mock interview.
- Listen to AI-generated feedback using the provided audio.
- Frontend: Handles user input, displays interview results, and plays audio responses.
- Backend: Manages WebSocket communication, processes audio via ffmpeg, uploads files to AWS S3, and interacts with AWS Polly, Transcribe, and OpenAI.
- AWS Services:
- Polly: Converts AI-generated text into spoken audio.
- Transcribe: Converts user speech into text.
- S3: Stores audio files and transcription results.
- Enhanced UI/UX for an even smoother experience.
- Improve real-time response latency.
- Include practice modes with instant feedback.
- Automatic voice input detection for hands-free interaction.
- Incorporate a code editor for coding interviews
- Sujith Tellakula
- Suprad Parashar
- Sriranjini Ramesh Vasista
- Venkat Nikhil Mangipudi