Code review is a software quality assurance activity where one or more reviewers examine source code changes to verify code quality, find bugs, and ensure it follows best practices. Key roles include the author who created the code and the reviewer who examines it. Code reviews help reduce bugs and technical debt, improve code readability and consistency, and allow code to be better maintained over time by different developers. Best practices for code reviews include automating reviews when possible, using checklists, providing timely and respectful feedback, and being open to follow up questions.