An application to store & manage interview questions for candidates. Also, featuring an interview mode, where you get 20 random questions to ask.
- Pick a technology to interview
- Pick a Seniority level (Jr, Md, Sr)
- Enable (optional) interview mode, to randomize the questions
- Enjoy it!
Questions are stored in a Firebase FireStore collection called questions
. You can create your own and add questions there. There's still a pending work to enable you to add questions through the UI
{
"tech": {
"level": [
{
"question": "blablabla",
"answer": "blablabla",
"screening": false
}
]
}
}
The tech
key is the id
for the firebase document. This should be written in lowercase to avoid issues.
The key level
can be any value of junior
medium
or senior
. No key needed for all
levels.
After creating the question list, just refresh the page and they should be there!
App supports Screening mode, where a set of questions previously defined as useful for screening will be shown for the interviewer. This screening questions also take into consideration the level
of the question, so you will see different screening questions for each level. The amount of them may vary too.
If a question is marked as "screening": true
it will still show up with the other questions. There's no difference in the interview mode for screening questions
{
"candidateEmail-tech-screening-level": {
"appreciatedLevel": string
"candidateAnswers": Array<Object> {
"question-id": {
"appreciation": string,
"overall": string
}
},
"fullName": string,
"interviewer": string,
"interviewedAt": string,
"level": string,
"questionList": Array<string>,
"tech": string
}
}
Each candidate is represented with this structure to having all the required information for a user. Currently, each candidate supports a Screening session & an interview session. There's a plan to support multiple interviews per user, but this is not possible yet. Even when you can save multiple interviews, the Reporting section will show just the last interview.
-
Install the Gatsby CLI.
npm install -g gatsby-cli
-
Fork and clone this project.
-
Copy
.env.example
to.env
-
Set the environment variables to your own Firebase API keys
-
Start the site in
develop
mode.cd interviu/ gatsby develop
-
Open the source code and start editing!
The site should be running at
http://localhost:8000
.
At this point, you’ve got the project working. After that, make a Pull Request & wait for it to be deployed!