Code Review Checklist
Checklist
- Are all requirements implemented?
- Single responsibility of a single PR. No mixed changes.
- Is the code change the best way to implement the feature?
- Are there any regression issues introduced in the existing features?
- If it’s a breaking change, is it well communicated?
- Is the code change complete?
- Documents updated
- Migration included
- Configurations updated
- Other systems updated/notified
- Infrastructure(Database, etc.)
- Non-functional requirements
- Metrics
- Tracing
- Logging
- Are there any major issues found?
- Performance
- Security
- Thread safe
- Edge cases
- Are errors are gracefully handled?
- Are there sufficient level of unit tests/e2e tests?
- Is the code change generally readable?
- Can I get an understanding of the desired behavior just by doing quick scans through unit and acceptance tests?
- Do the methods do what the name of the method claims that they’ll do? Same for classes?
- Method is too long
- Method has too many parameters
- Deeply nested if/else controls
- Are general coding best practices followed?
- No hard coded stuff
- No duplications
- Separate of concerns
- Easy to extend
- Comments
- Naming convention followed
General Rules
- Automating the Easy Stuff
- Lint
- Test coverage
- Git hooks