In the small team of Learning Locker at Learning Pool, collaboration is key to our success. An important part of that is our code review process, which never fails to offer a kaleidoscope of inspirations.
When a ticket hits the code review column, one of the engineers will pick it up and take a look. We have a code review rota where all engineers participate.
Generally, the ticket description gives a clear understanding of what the pull request should try to achieve, so this is a must-read. We also check that the QA notes match the scope of the ticket. Apart from these, there are generally no set rules on the code review process.
Occasionally, there are team reviews too, where multiple team members jump on a quick call to discuss a pull request. To protect efficiency and prevent burdening reviewers, we try to limit to 3 tickets in code review at any one time.
On a basic level, code reviews help the team become familiar with what others are working on. The main purpose of code reviews is to ensure the code is addressing the problem appropriately and to catch any bugs or potential pitfalls.
In our Learning Locker team, we put a big emphasis on quality. To name a few items from our pull request checklist, the author is responsible for checking that they have considered situations such as long running migrations, boundary testing, evergreen browser testing, or if they have included tests for any new features.
Additionally, inside each pull request, Codecov bot provides metrics on whether code coverage has increased, and specifies the lines where changes are not covered with tests.
The team enjoys looking at code thoroughly by asking questions and challenging each other through code review suggestions.
We reference our Engineering Guide as best practises for nitpicks, such as naming conventions (the Engineering Guide is being actively maintained and here's a sneak peek). We never forget to give a thumbs-up to a good spot or an insightful comment. Not to mention, it’s also a good opportunity to see new approaches to problems, different coding styles and the latest syntactic sugar!
Upon a “LGTM” the pull request will be thoroughly checked by the QA team, before finally merged and hitting the production platform - a long but worthwhile journey!
We’re often hiring - you can find all our job listings on our website.