Skip to content

General

  • The HiringMeister is responsible for testing prospective candidates for full-time and part-time positions within our organization
  • To see who is the HiringMeister now refer to Rotation Meisters
  • The HiringMeister:
  • Ensures candidate evaluation through PR and pointing them to documentation
  • Maintains hiring standards
  • Fosters skill assessment through task assignments
  • Continuously improves the recruitment process

On-boarding issue

  • As the invitation to the repo are accepted by the selected candidates, create an On-boarding GitHub issue for each candidate
  • The name of the issue must be On-board <Candidate Name> and assignee is the GitHub username of the candidate
  • The contents of the issue are

```verbatim

Please follow this checklist. Mark each item as done once completed.

Post any errors you face in this issue. - [ ] Acknowledge the pledge to put time in the project here - [ ] Read How to organize your work - [ ] Read Quick start for developing - [ ] Make sure the Docker dev container works - [ ] Make sure the unit tests run successfully - [ ] Read KaizenFlow Python coding style guide - [ ] Fork, star, watch the KaizenFlow repo so that GitHub promotes our repo (we gotta work the system) - [ ] Learn about the Morning Email - [ ] How to do a review - [ ] If you are graduating soon and you would like to get a full-time job in one of the companies in the KaizenFlow ecosystem reach out to GP at gp@kaizen-tech.io - [ ] Get assigned a warm-up issue ```

  • A reference issue is On-boarding
  • Regularly check the updates made by the candidate and help resolving any errors faced by them

Create and Assign warm-up issue

Warm-up tasks

  • Collaborate with the team to identify potential warm-up tasks for candidates upon completion of their on-boarding process
  • The goal of a warm-up issue is for someone to write a bit of code and show they can follow the process, the goal is not to check if they can solve a complex coding problem
  • It should take 1-2 days to get it done
  • This helps us understand if they can
  • Follow the process (or at least show that they read it and somehow internalized it)
  • Solve a trivial some problems
  • Write Python code
  • Interact on GitHub
  • Interact with the team
  • Ensure that these warm-up tasks are straightforward to integrate, immediately beneficial, unrelated to new features, and do not rely on the ck infrastructure
  • As candidates complete their on-boarding checklist, promptly assign them warm-up tasks from the predetermined list
  • Write specs in a manner that is easily understandable by candidates, address any queries they may have regarding the task, and regularly follow up for updates
  • If a candidate shows lack of progress on their assigned warm-up task, ping them twice for updates. If no progress is made, reassign the task to a more promising candidate
  • Upon submission of a pull request by the candidate for the task, review it to ensure adherence to our processes. Provide constructive feedback on areas for improvement and ascertain if the task's objectives have been fully met
  • Before merging the PR on kaizenflow, create a similar PR on cmamp and merge both of them together
  • Assign more task to the candidate if required to make a final decision

Score candidates

  • Score the candidates every two weeks and notify all the team members for scoring
  • Scoring criteria and template are defined in details in this doc
  • Not all the criteria are used for scoring the new candidates
  • E.g. Scoring sheet
  • The scoring should be done by all of the members of the hiring team
  • The final score of the candidate includes the average score of all the team members
  • The final scored are delivered to the candidates every two weeks
  • The candidate with low score should be dropped

Suggestions

  • In the first couple of weeks we should try to ingrain the following flow into a new team member’s mind
  • Instead of spending hours coding on their own, apply the following steps:
  • Identify a problem and describe it in the issue
  • Design solution or seek guidance from a mentor
  • Let mentor approve/comment and reach consensus on the solution
  • Write code
  • Stick to smaller PRs
  • It's very important to push frequently and ask for feedback early to avoid large refactoring