hack4impact-uiuc / h4i-recruitment

H4I recruitment platform
https://h4i-recruitment.vercel.app
17 stars 3 forks source link

Interview Rounds #203

Closed angadgarg25 closed 5 years ago

angadgarg25 commented 5 years ago

Our interview process changes every semester. Maybe we'll find a consistent format to stick to in the future, but as of now we're constantly adapting. Rather than changing the tool to fit our format every semester, lets make interview format configurable. Basically an interview configuration would contain things like which round number it is, how scoring is performed (Facemash's elo scoring, rubric scoring, etc.). Configuration would probably be some json.

Admin actions would include importing a new configuration, and changing interview rounds. There's some scoping to be done here (what kinds of things make sense to configure, what functionality should change between rounds, how do we keep track of multiple rounds of score, etc).

(Eventually we would make configuration in UI too preferably, but to reduce scope to our limited time frame, lets start with this)

tko22 commented 5 years ago

i would recommend creating a data folder, which would hold a .js file that exports a javascript object (dictionary) or list. then in the interview component, you would import that file

The data file, possibly named like interviewData.js

export default [
     {
          round: "1",
          type: "mass_interview",
          categories: [
                { 
                       title: "Overall Score",
                       minScore: 0,
                       maxScore: 5,
                       description: <p style={{color: "grey"}}>description here which would show up as grey. Note that you could make this an actual react component here</p>
                 }
          ]
]

An example we use for our website is here https://github.com/hack4impact/uiuc.hack4impact.org/blob/user/tiko/revamp-next/data/projectData.js and we use it here https://github.com/hack4impact/uiuc.hack4impact.org/blob/user/tiko/revamp-next/components/projects/semesterProjectList.js

tko22 commented 5 years ago

As an interviewer, for the mass interview rounds, we have 4 minutes per candidate, interviewing 5 candidates in the span of 20 minutes and having 5 minutes to submit their scores. What should the interview screen look like? Should it show all the candidates in that specific interview time slot and input forms for each candidate to score them? Should there be a general text form for interviewers to take down notes (possibly a text form for each candidate)? Other ideas? maybe Links to each candidate page? Maybe show the time of that interview, just in case the interviewer is in the wrong interview page? Each interviewer, during the mass interview round, has a specific question to ask -> the interview form should allow the interviewer to put that in.

tko22 commented 5 years ago

Specific implementation details:

tko22 commented 5 years ago

you might want to look into react form libraries to help with this https://codebrahma.com/form-libraries-in-react/ and look into #118