Many PullRequest reviewers have experience at big tech companies, like Facebook, Amazon, or Netflix. The following Q&A with one of our reviewers describes their path to getting their certification to review code at Google called "code readability."
How does code review at Google work?
In order to push JavaScript to production at Google, you're required to have a code reviewer with JS readability to review and approve the code. Readability is an internal certification that shows you understand Google's coding style and best practices for a specific language. Every CL must be written or reviewed by an engineer with readability in that language. Period.
Our team didn't have a reviewer with readability, so we always needed to ask other teams to review the code on our behalf. As a hard requirement, this blocked us from pushing changes and hurt overall velocity.
To solve the bottleneck, our tech lead and I started the process to get JS readability, which is like going through a sort of "code review code review."
What's a "code review code review?"
In order to apply for JS readability, engineers submit CLs [Change Lists] to a team of readability reviewers who go through the code with fine-tooth combs. An assigned reviewer makes comments and approves the code only after you've proven you understand Google's style guide and best practices.
What was it like to get your Google code reviewer certification?
I submitted an Angular component to make a calendar for an internal tool. It came back with red ink all over the place. Every little thing from how many spaces need to be above constants, to removing extra spaces in these function declarations. The path to Readability changed shortly after I went through it. It's no longer a single CL but several reviews of different CLs now. So now as you go through the process and do more quality reviews you get a percent complete. Although, if you do a bad CL review you can actually decrease your completion percentage.
How was the reviewer pointing out details different than a regular code review?
Unlike a traditional code review, the readability process is the one time where the assigned readability reviewer holds nothing back. Every single minor thing that could possibly be pointed out, will be. But in the end, going through the readability process made me a better programmer and code reviewer.
It was a proud day for everyone when I got my official stamp of approval to review and approve any JavaScript at Google. I received congratulatory emails from everyone on the team because they knew how long and how challenging the path to JS readability is.
What's it like doing code review at PullRequest after reviewing code at Google?
What's right for Google doesn't necessarily mean it's right for every team. I learned a great deal about the code review process and why readable code is so critical through my path to JS readability. I keep the spirit of these lessons learned in mind when I review code for other teams, and focus on being positive and as constructive as possible.
At PullRequest, we're here to help. We're passionate about code quality, and we have a community of on-demand reviewers who are vetted and ready to help add more rigor to your code review process. Chat with our team with our team for more info.