DEV Community + Github Hackathon - InterviewMate
Tags: githubhack23, wackywildcards, openai, interviewmate
Published: 2023-05-24 00:06:08

## What I built 
InterviewMate : an AI based interviewer who will help you be completely prepared for your next real life software engineering interview.

### Category Submission: 
Wacky Wildcards

### App Link
[Live](https://interview-mate-eta.vercel.app/)

### Screenshots 

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/6wy3wjbn8kz7du38pxm3.png)

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/woumhdq884ucw9ueih1m.png)

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wlpsacht4ge6xxdmczvt.png)

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ivaswqvghbn21mcgxzke.png)

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/87gafd19ce6xs3cyvqf3.png)


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mnz4oxd2o24dj5oiqmog.png)

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qt9hyqmbl8po91nr64qq.png)

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/92ww7pysmcpmqsavo9jx.png)



### Description 
InterviewMate is an AI based interviewer.
Give it any software engineering job description from any platform(exp: LinkedIn, wellfound, etc.) and InterviewMate will

- help you extract the necessary skills from the job description, to which you can add new skills and remove unnecessary skills according to your requirement
- allow you to decide the number of questions you want per interview round
- generate relevant interview questions on the extracted skill set
- conduct a chat based interview 
- give feedback on your answers

Thus, it will help you create an interview based on your inputs, practice interview questions on the skills extracted and clarify your doubts if any using explanations.

### Link to Source Code 
[InterviewMate Github](https://github.com/DivyaPankajaNanda/interview_mate)

### Permissive License 
MIT

## Background (What made you decide to build this particular app? What inspired you?) 
Recently I am preparing for interviews and I found it really repetitive and time consuming to filter out the relevant technical skills from a job description and the search relevant interview questions and then again look for their answers to ensure if I my answer is correct or not, thus I built InterviewMate which will simply do all these tasks for me and all I have to do is just a few clicks and CTRL+C,CTRL+V  :) 

### How I built it (How did you utilize GitHub Actions or GitHub Codespaces? Did you learn something new along the way? Pick up a new skill?) 

In this project i used the following technologies and learnt quite a lot from each of them : 
- API : OpenAi api, this was my first time making an application using openai api thus I learnt a few new things like 
1. temperature - which is used to regulate the degree of difference between responses to the same prompt request and it came to my rescue when I was struggling quite a lot while trying to standardize my prompt responses,
2.learnt about the various ai modules openai is providing and their respective api end points which are to be access these modules in a specific way. Example : GPT-3.5 and Davichi models have different api endpoints and different api request body format.
Github feature used - I used Github as a code repository and I created a codespace in between this project's development process and realized in a few seconds all my node modules were already installed, README.md files were much more intuitive since they were actually being rendered directly. It was not doubt a smooth experience using Github codespace for development.
Frontend - SvelteKit, this was my 2nd time trying out SvelteKit for a hackathon project, though I am now a bit familiar with SvelteKit but I feel there is a lot more practice needed to write clean and optimal code in the first go.