Inspiration
When people go for an interview, many people fail. For a large portion, the problem is not their skills or their qualifications: it’s with their lack of preparation. Many people, especially entry-level workers, do not have the proper guidance or preparation on how to successfully take an interview. This lack of preparation, along with first-time nervousness, causes people to underperform when actually sitting with the boss. Therefore, here is the app that we have built, InterviewX. InterviewX allows for people to utilize personalized bots created by companies to be able to analyze the quality of your responses, without being judged, equipping interviewees with the proper preparation required to succeed.
What it does
InterviewX is an app for both companies and candidates. Companies can utilize this software to create bots, personalizing them through the following:
- organization name
- the topics that would be considered for getting selected, along with their weightage
- the job title
- the seniority level
- the hard and soft skills required to do the job After the company creates the bot, they would have received a code for the interviewees to practice. The company is required to share the code with them, so they can do their part.
The interviewee utilizes this software by practicing with the bot. They first have to input the code, upload their resume, and test their microphone to make sure that everything is working normally. The bot would now ask a few sample questions that are likely to come in the real interview. The user can hold a record button, while recording their answer. When they hit, Submit Answer, the bot would then evaluate how the user answered the question, providing verbal feedback.
In the end, the bot would provide a score of the candidate, listing it from a scale of one to 100, along with strengths and improvements.
How we built it
We utilized node.js in order to build the back end of the program. We used an online relational database called Supabase, in order to store the bot details. We then configured and connected it using some CSS frameworks in order to provide a user friendly UI. Regarding the audio, we utilized the google cloud text to speech software for the bot to verbally ask the questions to the reader, providing a real interview look and feel. We utilized the web browser speech synthesis API, in order to be able to allow the user to speak in the microphone.
Challenges we ran into
Initially, we struggled with working together in GitHub, as one of our team members did not have much experience with it. Furthermore, when the person recorded their voice, when they took a pause, the transcription reset, because the app thought that the user was providing a new transcription. To battle this problem, I stored all these “mini-transcriptions” into a final transcription, and then when a pause was detected, it concatenated the mini transcription into the final one.
Accomplishments that we're proud of
We are proud that we could work in a team and effectively collaborate, despite physical distance, time zones, etc. We are also proud of the fact that we divided up the work so that two people create an elegant, user-friendly UI, while the other two would help with the back end and core functionality of the project. We finished quickly, with little to no stress, as each of us were doing their part to the fullest.
What we learned
We learned how to effectively work as a team, recognize the different parts of an application, and the stages of creating an app, which are the following:
- Brainstorming
- Initializing
- Working
- Testing
- Deploying Utilizing this five step process, I am glad to say that we created an express.js, bug free, user friendly application, that seamlessly blends the front end and the back end.
What's next for InterviewX
We are planning to include more features and functionalities of InterviewX, enhancing its capabilities:
- Improve accessibility through modes like High Contrast, increased font size, etc.
- Allowing potential candidates to view the average score received for a particular job, and how their score compares with others.
- Including this app in the App Store and Google Play for mobile users.
- Include multiple different voice options for the bot to personalize user experience
- Add more rows and columns in Supabase to further personalize the bot to the company
Log in or sign up for Devpost to join the conversation.