A bunch of scripts on node.js aimed at improving the interview process. Can be reused between different departments (only the questions database should be prepared).
- Automation of many manual processes.
- A more comprehensive evaluation.
- Feedback standardization.
Export prepared questions database as HTML files and save each page to the data folder.
The interview system supports 2 modes by default: Department and Partnership. Default durations are: Department mode - 55 min and Partnership mode - 25 min. In the case of the Partnership mode, it's enough to conduct a superficial interview. Usually, the main technical interview with the customer is the next step. So, it's important to double-check if everything is good with the candidate before the main technical interview. In the case of the Department mode, the interview must be deeper. The full responsibility for the candidate is on the interviewer. That's why the duration is longer. Moving forward, each interview contains 2 stages: theory and practice. For the practice part, the amazing resource https://edabit.com/ is used. In the case of the Partnership mode, the candidate should just describe the possible solution for the provided task in order not to waste the time. In the case of the Department mode, the candidate should share his screen and resolve the task in real-time.
- Run
generateQuestionsscript. The next fileoutputs/output-${firstName}-${lastName}/questions.txtwill be generated:
- Check out the generated questions:
@topic@JavaScript@topic@ ≈7 questions
1. What is hoisting? (requiredFor: junior) (key: @questionKey@js1@questionKey@)
2. What is a scope? (requiredFor: junior) (key: @questionKey@js2@questionKey@)
3. What are closures? (requiredFor: junior) (key: @questionKey@js3@questionKey@)
@topic@TypeScript@topic@ ≈3 questions
1. What are the benefits and drawbacks of using TypeScript? (requiredFor: middle-) (key: @questionKey@ts1@questionKey@)
2. What is the tsconfig.json file? (requiredFor: middle) (key: @questionKey@ts2@questionKey@)
3. What are the components of TypeScript? (requiredFor: middle) (key: @questionKey@ts3@questionKey@)- Mark the suitable questions with
'+ 'at the beginning:
@topic@JavaScript@topic@ ≈7 questions
+ 1. What is hoisting? (requiredFor: junior) (key: @questionKey@js1@questionKey@)
+ 2. What is a scope? (requiredFor: junior) (key: @questionKey@js2@questionKey@)
3. What are closures? (requiredFor: junior) (key: @questionKey@js3@questionKey@)
@topic@TypeScript@topic@ ≈3 questions
+ 1. What are the benefits and drawbacks of using TypeScript? (requiredFor: middle-) (key: @questionKey@ts1@questionKey@)
2. What is the tsconfig.json file? (requiredFor: middle) (key: @questionKey@ts2@questionKey@)
3. What are the components of TypeScript? (requiredFor: middle) (key: @questionKey@ts3@questionKey@)- Run
generateInterviewPDFscript, and the next files will be generated:
outputs/output-${firstName}-${lastName}/forInterviewer.pdf:
Will be used for the interview.outputs/output-${firstName}-${lastName}/resultDraft.txt:
@topic@JavaScript@topic@
1)
2)
3)
@topic@TypeScript@topic@
1)
2)
3)outputs/output-${firstName}-${lastName}/resultNotesDraft.txt:
@englishLevel@
Fluency: 0/3
Accuracy: 0/3
Coherence: 0/3
Range: 0/3
Pronunciation: 0/3
@englishLevel@
@softwareSkills@
-
@softwareSkills@
@technicalSkills@
-
@technicalSkills@
@supposedLevel@
-
@supposedLevel@
@recommend@
Yes / No
@recommend@- Fill
resultDraft.txtfile in:
@topic@JavaScript@topic@
1) 3
2) 5
3) 4
@topic@TypeScript@topic@
1) 2
2) 5
3) 3- Fill
resultDraft.txtfile in:
@englishLevel@
Fluency: 3/3
Accuracy: 2/3
Coherence: 1/3
Range: 3/3
Pronunciation: 3/3
@englishLevel@
@softwareSkills@
Pleasant in communicationю
@softwareSkills@
@technicalSkills@
Good theory and practical skills.
@technicalSkills@
@supposedLevel@
middle+
@supposedLevel@
@recommend@
Yes
@recommend@- Run
generateResultPDFscript andoutputs/output-${firstName}-${lastName}/result.pdffile will be generated.
| Script | Description |
|---|---|
validateDatabase |
Validates the questions database. Checks for the correct format for each question in the database. |
generateQuestions |
Generates suitable questions based on the input params and puts them to the .txt file. |
generateInterviewPDF |
Generates a PDF document for the interview and .txt drafts for the result. |
generateResultPDF |
Generates a PDF document with the interview result. |
| For interviewer: | Result: |
|---|---|
| forInterviewer.pdf | result.pdf |
- Finish ready-to-use question sets.
- Send files to
Slack.











