# BharteeAI: Revolutionizing Technical Hiring with AI-Powered Interviews

## Inspiration

In today's fast-paced tech world, finding the right talent efficiently is crucial. Traditional hiring processes are time-consuming and often biased. We created BharteeAI to revolutionize technical hiring, making it faster, fairer, and more effective.

## What it does

BharteeAI is an end-to-end AI-powered interview platform that:

* Screens resumes using advanced NLP and vector search
* Conducts real-time video interviews with an AI interviewer
* Assesses coding skills with an in-browser IDE
* Generates comprehensive candidate evaluations
* Provides a seamless experience for both employers and candidates

## How we built it

We leveraged cutting-edge technologies to create a robust, scalable solution:

* Frontend: Reflex (Python-based reactive framework)
* Backend: Reflex (FastAPI)
* Database: SingleStore for lightning-fast queries
* Vector Database: ChromaDB for efficient similarity search
* AI/ML: Groq for natural language processing
* Voice Processing: VAPI (Cartesia for TTS, Deepgram for STT)
* Video Integration: Agora
* Cloud Storage: AWS S3
* Deployment: DigitalOcean App Platform

## Challenges we ran into

* Integrating multiple AI services seamlessly
* Ensuring real-time performance for video and coding assessments
* Balancing AI automation with a human-like interview experience

## Accomplishments that we're proud of

* Created a fully automated yet personalized interview process
* Developed a scalable architecture capable of handling high-volume hiring
* Implemented bias-reduction techniques in candidate evaluation

## What we learned

* The intricacies of AI-human interaction in high-stakes scenarios
* Optimizing performance in distributed systems
* Balancing technical assessment with soft skills evaluation

## What's next for BharteeAI

* Expanding language support for global hiring
* Integrating more specialized technical assessments
* Developing an AI training module for interviewers

Join us in reshaping the future of technical hiring with BharteeAI!
## Inspiration

Inspired by the need to streamline the job application and interview process, our project aims to eliminate the tediousness of traditional methods. With the growing competition in the job market, we envisioned a platform that not only assists candidates in applying for jobs but also meticulously prepares them for technical interviews. By leveraging advanced AI technologies, we aspire to make the journey efficient, personalized, and insightful, offering clear feedback on areas of improvement and enhancing overall interview preparedness.

## What it does

Our application, HireMeAI, integrates multiple functionalities to assist job seekers throughout the application process. Key features include:
Real-time Video Interview with Personalization: Engage in real-time video calls with a bot that asks questions based on the user's resume, job description, and personalization replicating human interviews although done by a bot.
Pseudo Code Testing: Test and evaluate pseudo code using Generative AI, provided with the topic and context.
Resume Generator: Generate professional resumes tailored to specific job descriptions using the user's profile, job descriptions, and existing resumes.
Cover Letter Generator: Create personalized cover letters based on job descriptions and user profiles.
Interview Preparation: Prepare for coding interviews with dynamically generated questions based on job descriptions and difficulty levels.
Application Tracking: Track applications and interview statuses.

## How we built it

We built the application using a combination of modern web technologies and AI services:
LLM’s: Leveraged OpenAI's Whisper for speech-to-text, Antropic Clude 3 on AWS Bedrock for reasoning purposes, LMNT for the text-to-speech in real-time which was used to mimic any person's voice.
Frontend: Developed with React, ensuring a responsive and interactive user interface. We utilized React Router for navigation and Axios for API requests.
Backend: Built using Flask, which handles generating resumes and cover letters, and all other methods to keep the app running.
Data Storage: Implemented MongoDB to manage user profiles, job listings, and application statuses.

## Challenges we ran into

Building this comprehensive application presented several challenges:
AI Integration: Effectively integrating OpenAI's API to generate meaningful and relevant questions required fine-tuning the prompts and handling the API responses.
Personalization: AI-based interview questions shouldn't be repeated between interviews to prevent redundancy in the questions.

## Accomplishments that we're proud of

Successfully integrating AI to generate dynamic and relevant interview questions that are not redundant but vary based on several factors to match a human-based interview.
With the architecture in place, we can tailor the interviews based on the necessities of the companies
Resumes and cover letters are successfully edited without hallucination, but to just meet the needs based on the job description and experience of the user, not exaggerating it
Ensuring the application is scalable and secure, with efficient handling of user data.
We have created an interview bot that can replicate the interviewing style of a person once we have an input of the person's previous interview data

## What we learned

Throughout the development of this project, we learned:
How to effectively integrate AI services to enhance application functionalities.
The importance of user experience design in building applications with multiple features.
Techniques for secure and efficient data handling in web applications.
The value of iterative development and continuous testing to ensure application robustness.

## What's next for HireMeAI

Moving forward, we plan to:
Enhance the AI capabilities to include more personalized feedback and suggestions.
Expand the job listing database to include more companies and roles.
Integrate video interview functionalities to cover a broader range of interview types.
Develop mobile applications to provide users with access on the go.
## 💡 Inspiration

It's job search season (again)! One of the most nerve-wracking aspects of applying for a job is the behavioural interview, yet there lacks a method to help interviewees prepare effectively. Most existing services are not able to emulate real-life interview scenarios sufficiently, given that the extent of the practice questions asked are limited without knowledge of the interviewee's experience. In addition, interviewers rarely provide constructive feedback, leaving interviewees feeling confused and without a plan for improvement.

## 💻 What it does

HonkHonkHire is an AI-powered interview practice application that analyzes your unique experiences (via LinkedIn/resume/portfolio) and generates interview questions and feedback tailored for you. By evaluating facial expressions and transcribing your responses, HonkHonkHire provides useful metrics to give actionable feedback and help users gain confidence for their job interviews.

## ⚒️ How we built it

HonkHonkHire was built on Node.JS back-end, with MongoDB Atlas Database to store user's data. We also used Firebase to store resume .pdf files. The user interface was designed in Figma, and developed using Javascript, HTML and CSS. The facial recognition was implemented using Google MediaPipe Studio, and Cohere's API was used to generate the personalized questions and feedback.

## 🪖 Challenges we ran into

This project itself was very ambitious for our team, given that it involved learning and applying a lot of unfamiliar technologies in a short period of time. As we had never worked together as a team before, it took some time to familiarize ourselves with each other's strengths, weaknesses, and communication styles.

## 🌟 Accomplishments that we're proud of

Our team is proud that we were able to deliver majority of the MVP features, and to have created something we would all love to use for our future job searches. Learning new technologies such as Cohere's API and OCR Space, and being able to employ them in our application was also very rewarding.

## 🧠 What we learned

Each one of our team members challenged themselves while creating this application. Our designer ventured into the world of programming and learned some HTML/CSS while coding a webpage for the very first time (yay)! Our front-end developer challenged herself by focusing on fundamentals such as Vanilla JS, instead of using more familiar frameworks. Another one of our developers learned about new APIs by reading documentations, and transferring data from front-end to back-end (and vice versa) using Node.JS. Our primary back-end developer challenged himself to explore facial/emotional expression and behavioural motion detection for the first time.

## 👀 What's next for HonkHonkHire

We would love to further enhance user experience by offering more detailed metrics such as talking pace, response length, and tone of voice. Through the use of these metrics, we hope to give users the ability to track their improvements over their professional journey and encourage them to continue to improve upon their behavioural interview skills.