There have been various surveys studying the hiring biases in a job interview, the most significant one being in South Korea which indicated that about 46% of interviewers have some bias based on a person's appearance. This bias can turn into a severe problem in a country like India where people can associate a certain name with a certain caste, increasing the problem of not having inclusivity while hiring. To tackle this interview bias problem, we have made an interview portal which protects the personal details of the interviewee by hiding all their personal details like name, appearance, sexual orientation and age.
Our platform helps the company by conducting the interview process all at one place and it helps the interviewee by protecting them against unfair interview biases. All the interviewee's information will be stored in our database, but the interviewer can only access the interviewee's educational background and Work Experiences but has no access to their personal data until the interviewee is accepted to the company.
The interview will also take place on our platform. The interviewee will have to grant camera access for the AI proctoring system. Other than that, the video stream is never sent to the interviewer. The interview takes place over voice call. In the future, we would like to add voice mod functionality so that the interviewee's gender cannot be figured out from their voice.
The AI proctoring system displays a pop-up whenever more than one person is detected in the camera frame and there is some level of fairness from the interviewee's side too.
The first problem, or learning experience for us was the use of a new tech stack - MERN. We had no previous experience developing applications in MERN stack and this was our first project with it and we found it very challenging to write code which works smoothly in all of the frameworks.
The next problem we faced was communication between the frontend and the backend. Sending and receiving appropriate requests from the frontend to the backend and receiving appropriate data was a little challenging as it took careful coordination in our team.
While testing the application we also faced the issue where our database was different in all our devices and hence to fix it we learnt how to attach a sample database in the backend so that we can test our application efficiently.
Even after receiving the appropriate data from the backend, we faced some issues rendering the data on the frontend and we learned how to make our frontend more dynamic by using effects and states from react to compensate for it.
After rendering the data on the front end, we faced issues in routing requests from one page to another and passing data corresponding to it. We solved this issue by using react routers and Link module in react.
We also ran into the cors issue when we tried to execute cross port requests. This took a lot of time to solve and we had to change our browser as Chrome did not support cors requests.
The next challenge we faced was integrating teachable machine with the interviewee's webcam so that the AI proctoring could run in the background without sending the video to the interviewer.
We also faced some issues in configuring the hierarchy and attributes of flexboxes and hence learnt how to keep our frontend more modular.
Discussion