Volunteer Assignment Reviewers Guide

Hello and thank you for volunteering your time to help review assignments. This is a huge help to the program because it frees up the on-site Apprentice Manager’s time to pair and work with the apprentices directly.

TL;DR on the Process

Questions about this doc or process, please reach out to the current Apprentice Manager (SEAM) in Slack.

Managing the Overall Workflow

We’ll be using Trello to manage the tasks. You should receive an invite to the board using the email you use on our Slack instance. If no tickets are assigned to you, you don’t have to do anything.

Steps

  1. You get a notification a task has been assigned (typically a batch of ~4 Pull Requests)
  2. Review the assignment complexity and see if your schedule permits finishing it by the due date
  3. If so, reply on the card that you can do it (or that you won’t be able to this time – no hard feelings!)
  4. Move the card to in-progress and review them
  5. If the item is a Pull Request, review using GitHub’s commenting UI
  6. If it’s not a PR, you can add your comments to Trelllo and the SEAM will handle sending them to the code author
  7. Add a high-level 👍👎 for each assignment so the SEAM can see at a glance if there are any issues to address
  8. Move the card to done!
  9. You are off the hook until a new task is assigned to you (round robin)
  10. Thank you!!!

Turnaround Time / Due Dates

In general, I will put a due date one week out for the ticket. If something in your work life or life life comes up and you don’t think you’ll be able to meet the due date, ping me ASAP on Slack so I can reassign the work.

Code Reviewing: A Philopsophy

IMHO reviewing code is like reviewing someone’s writing. Don’t tell the writer what you would’ve done, review what they did on their terms and leave comments that let them make the best version of their implementation as they can.

Tips

This is something I tell all code reviewers on my teams, especially when reviewing code from less senior engineers.

Reviewing a Single Pull Request

You shouldn’t spend more than 20 minutes on any individual review. If there are so many issues that this isn’t possible, ping the SEAM on Slack. For example, a submission is riddled with issues, don’t feel compelled to comment on every issue you are saying. You can simply add feedback saying there are a lot of issues and escalate it to the SEAM.

Expectations from the Code

At the start of the process, participants are just expanding on their JavaScript fundamentals, and it’s not as important to comment on very specific aspects of their code, such as formatting, etc. These lists will evolve over time as the participants progress, but as of now these are where to focus your energy.

Always Appreciated

Important Facets

Grading Level 0

Grading Level 1

In addition to lower levels, also check in on:

Grading Level 2

At this stage, they should be comfortable with JavaScript

Grading Level Z

At this stage, they should have built a lot of practiced skills.

Unimportant Facets (regardless of Level)

Summary

See the workflow above or ping the SEAM on Slack if you have any questions!