The latest episode of Building Better Developers, Season 23’s “Building Better Habits” series, dives into one of the most sensitive yet vital aspects of personal and team growth: giving and receiving criticism. Rob Broadhead and Michael Meloche explore how developers can better approach feedback loops in professional settings, mainly focusing on code reviews—a microcosm for the challenges and rewards of constructive criticism.

Why Criticism Matters

Criticism can be uncomfortable, but it’s essential for personal growth and team efficiency. Whether you’re offering or receiving feedback, how you engage in the process directly impacts your productivity, your team’s dynamics, and the quality of your work. Rob opens the discussion by pointing out that criticism—especially in code reviews—isn’t an attack on your ability or creativity but an opportunity to refine your work and learn from your peers.

“Code reviews should always include feedback,” Rob says. “If a code review comes back without critique, someone isn’t doing their job.”

The Challenge of Receiving Criticism

As developers, our code often feels like an extension of ourselves. It’s no wonder that hearing someone question or critique it can feel personal. However, Rob emphasizes that the purpose of feedback is to improve—not to insult.

One of the central themes is detaching ego from your work. Instead of viewing a critique as an attack, developers should focus on the why behind the feedback. For instance, comments questioning your variable names or suggesting a different function structure aren’t there to belittle you but to make your code more understandable and maintainable.

Giving Constructive Feedback

On the flip side, giving criticism also requires tact. Michael stresses the importance of providing actionable and thoughtful feedback rather than nitpicking. Feedback should be:

  1. Specific: Avoid vague comments like “This could be better.” Instead, explain how and why something should change.
  2. Contextual: Understand the problem the code solves and the project’s broader goals before critiquing.
  3. Collaborative: Treat the review as a conversation, not a directive.

For instance, suggesting, “This section might be clearer if we break it into two functions,” is more constructive than simply saying, “This is too complicated.”

The Code Review Trap: Balancing Critique with Encouragement

Michael brings up a common pitfall: handling extensive code reviews for complex tickets. Developers may feel deflated by critical feedback after spending hours or even weeks on a task. To prevent this, Michael suggests:

  • Pause before responding: After submitting the code for review, step away to clear your mind before addressing feedback. This reduces defensiveness and fosters a collaborative mindset.
  • Break-up reviews: For significant changes, consider scheduling a walkthrough with teammates to clarify the context and reduce misinterpretation.

Self-Criticism: The Key to Writing Better Code

Both hosts encourage developers to critique their work before submitting it. Taking a fresh look at your code the next day can often reveal areas for improvement, from simplifying a function to adding better comments. Rob suggests making this a daily habit: spend 10–15 minutes reviewing your code to make at least one improvement.

“Even if it’s just rephrasing a comment or renaming a variable, those small improvements add up,” Rob explains. “It’s about building the habit of constant refinement.”

Tips for Embracing Criticism

  1. Detach emotionally: Remember, criticism is about the work, not you as a person.
  2. Focus on the intent: Feedback is aimed at improving the product—and, by extension, you.
  3. Celebrate progress: Every piece of constructive feedback is an opportunity to improve.

A Challenge for the Week

Rob and Michael leave listeners with a practical challenge: for the next seven days, review your own code at the end of each day. Please spend a few minutes identifying one thing you can improve, whether it’s cleaning up logic, simplifying comments, or reorganizing a function. This habit enhances your skills and prepares you to give and receive feedback more effectively.

Final Thoughts on Embracing Criticism

Criticism is an inevitable and invaluable part of a developer’s journey. By embracing it with the right mindset and approach, you can transform every piece of feedback into a stepping stone toward becoming a better developer. Whether you’re on the giving or receiving end, remember that the ultimate goal is growth for yourself and your team.

Stay Connected: Join the Developreneur Community

We invite you to join our community and share your coding journey with us. Whether you’re a seasoned developer or just starting, there’s always room to learn and grow together. Contact us at [email protected] with your questions, feedback, or suggestions for future episodes. Together, let’s continue exploring the exciting world of software development.

Additional Resources

Leave a Reply