Published Feb 26, 2020

Episode 400: Michaela Greiler on Code Reviews

Michaela Greiler, a code review expert, shares actionable insights on leveraging constructive feedback, integrating advanced tools, and setting clear goals to optimize code review processes. Discover how team dynamics and tailored strategies can enhance collaboration and the effectiveness of reviews.
Episode Highlights
Software Engineering Radio - the podcast for professional software developers logo

Popular Clips

Episode Highlights

  • Experience

    Michaela Greiler emphasizes the importance of experience and familiarity with codebases in conducting effective code reviews. She notes that reviewers unfamiliar with a particular technology or codebase often struggle to provide valuable feedback, especially when dealing with complex files like YAML. Greiler suggests that new team members, even if they are senior, may take up to six months to offer consistent, valuable feedback due to their lack of familiarity with the codebase 1.

    Experience has a lot to do with the way you can give valuable feedback and you can contribute.

    ---

    To mitigate these challenges, she recommends in-person code reviews for new hires to foster a supportive learning environment 2.

       

    Dynamics

    Team dynamics and seniority significantly impact the quality of feedback during code reviews. Michaela Greiler highlights the need for a safe space where team members can grow and learn without fear of judgment. She warns against assuming a safe environment exists without continuous effort to maintain it 3.

    There must be a constant and continuous effort from the team, from the people, towards working to such a safe space.

    ---

    Felienne Hermans adds that seniority can influence the feedback dynamic, with senior members potentially overshadowing juniors, even in supportive settings 4.

       

    Language

    Different programming languages pose unique challenges during code reviews. Michaela Greiler explains that while the mechanics of code reviews are similar across languages, the effectiveness and focus areas can vary significantly. For instance, reviewing C code involves different considerations than Java or C#, due to language-specific features like garbage collection 5.

    The code reviews look different for the different programming languages, even though from the outside it looks all the same.

    ---

    She also stresses the importance of traceability in code reviews, advocating for documentation of review outcomes to enhance accountability and clarity 6.

Related Episodes