Code review checklist
Verify feature requirements
Is there any missing functionality?
Are there any poorly implemented functions?
Could they add any related functions the user would like?
Assess readability
Can you easily identify the code block starting and ending point?
Can the lines fit on a standard laptop screen (14 inches) or desktop
screen (22-24 inches)?
Does the code speak for itself and convey its purpose?
Does it prioritize clarity and brevity?
Does it avoid obscure language?
Can you discern the role of specific functions, methods, or classes?
Did the dev break the code into easy-to-understand chunks?
Test maintainability
Can you easily identify the code block starting and ending point?
Can the lines fit on a standard 14-inch screen?
Does the code speak for itself and convey its purpose?
Does it prioritize clarity and brevity?
Does it avoid obscure language?
Can you discern the role of specific functions, methods, or classes?
Did the dev break the code into easy-to-understand chunks?
Check for security vulnerabilities
Does the code use outdated tools or ones with known security problems?
If you wanted to steal data or access a system, do you see vulnerabilities?
Does the code leverage authentication and authorization for security?
Is the user’s input sanitized to prevent security attacks?
Does the code securely store user data?
Consider speed and performance
Does the code contain inefficient string concatenations, logging, or
allocations of objects?
Can you identify duplicate code?
Will the program negatively affect system performance overall?
Does the code rely on poorly optimized assets or multiple API requests?
Confirm adequate documentation
Does the documentation explain the code’s purpose?
Does the documentation teach the user how to use the code?
Do any new features or code changes warrant
additional documentation?
Is the documentation clear and well written?
Inspect naming conventions
Have you reviewed the names of variables, constants, class fields,
properties, and methods?
Are the names simple and legible?
Do the names fit your business’s overall naming conventions?
Do the names convey what a function or variable is?
Do the names explain the context or scope of the overall codebase?