DEV Community

Mark Adel
Mark Adel

Posted on Edited on

Backend Code Review Checklist

I have put together this checklist, which I believe will be applicable to most backend code reviews.

Some of these checks, such as Code Style, should ideally be enforced and detected in the CI pipeline. However, I have included them here for the sake of completeness.

You can use this checklist as a starting point and customize it to suit your specific needs.

Code Style

  • Verify that the code adheres to the agreed-upon coding style guidelines.

Code Maintainability

  • Verify that the code adheres to the clean code principles (or any other agreed-upon principles).

Requirements

  • Verify that the code fulfills the specified requirements.
  • Verify that new code doesn't break any existing functionality.

API Design

  • Verify that any new APIs adhere to the agreed-upon API design guidelines.

Documentation and Comments

  • Verify that complex logic or non-obvious decisions are covered by clear comments.
  • Verify that any required internal or external code documentation is provided, depending on your agreed-upon documentation processes.

Error Handling

  • Verify that exceptions are handled correctly and that error messages are informative.

Security

  • Verify that inputs are validated properly.
  • Verify that sensitive data (passwords, tokens) are securely stored and aren't leaked to logs.
  • Examine the code for potential security vulnerabilities, such as SQL injection or authentication issues.

Dependencies

  • Verify that dependencies are up-to-date and don't have known security vulnerabilities.
  • Verify that any breaking changes are handled when updating dependencies.

Logging

  • Verify that critical places in the code are covered by logs that are useful for debugging.
  • Verify that logging adheres to the agreed-upon logging guidelines.

Testing

  • Verify that the code is covered by the appropriate types of automated tests.

Performance

  • Evaluate the code for performance issues (memory, CPU, network).
  • Verify that database queries are optimized.

Version Control

  • Verify that the agreed-upon version control workflow and practices are followed.

Spelling

  • Verify that the spelling is correct, as this makes the code more searchable.

Conclusion

I hope you found this checklist useful. Please feel free to suggest additional checks that you think are necessary.

Top comments (18)

Collapse
 
bensonthedean profile image
softwarepanda •

Very informative article indeed.

Collapse
 
markadel profile image
Mark Adel •

Thanks a lot!

Collapse
 
2005emmanuel profile image
Hilary Emmanuel •

Good article

Collapse
 
markadel profile image
Mark Adel •

Thanks a lot!

Collapse
 
viveksah4u profile image
Vivek Kumar Sah •

Great explanation

Collapse
 
markadel profile image
Mark Adel •

Thanks a lot!

Collapse
 
rmiah209 profile image
Raheem Miah •

This is really helpful, thank you.

Collapse
 
markadel profile image
Mark Adel •

Thanks a lot. I'm glad you found it helpful.

Collapse
 
rajneeshrai profile image
Rajneesh Rai •

Good article.

Collapse
 
markadel profile image
Mark Adel •

Thanks a lot!

Collapse
 
jordansnow_thelegend profile image
Jordan Snow •

Excellent checkllist, I'll be using this as a template moving forward! Thanks for sharing!

Collapse
 
markadel profile image
Mark Adel •

Thanks a lot! I'm glad you found it useful.

Collapse
 
andresfgr profile image
Andres Gonzalez •

This article is really helpful, thank you!

Collapse
 
markadel profile image
Mark Adel •

Thanks a lot!

Collapse
 
juanvegadev profile image
Juan Vega •

I would add a side note: automate as much as possible each step in your CI, to ensure reviewers are focused on most valuable aspects. A good example would be the code style or the version control. What do you think!

Collapse
 
markadel profile image
Mark Adel •

Definitely! And I did mention that in the second paragraph.

Collapse
 
qhoirulanwar profile image
Qhoirul Anwar •

Please also share about front end Code Review Checklist

Collapse
 
markadel profile image
Mark Adel •

Of course. Thanks for the suggestion.