Upgrade to Pro — share decks privately, control downloads, hide ads and more …

.NET Day 2026 The impact and relevance of code ...

Sponsored · Ship Features Fearlessly Turn features on and off without deploys. Used by thousands of Ruby developers.
Avatar for .NET Day .NET Day
September 01, 2026

.NET Day 2026 The impact and relevance of code reviews on software quality

Avatar for .NET Day

.NET Day

September 01, 2026

More Decks by .NET Day

Other Decks in Technology

Transcript

  1. The impact and relevance of code reviews on software quality

    Dennis Doomen @ddoomen | www.dennisdoomen.com | www.avivasolutions.nl
  2. About Me • Coding Architect • .NET/C#, bit of TS/JS/React/Vue

    • 29 years of “pro” experience • Author/maintainer of • FluentAssertions • Mockly • Pathy • PackageGuard • Reflectify • .NET Library Starter Kit • Fallout (successor of Nuke) • www.dennisdoomen.com • BlueSky, Twitter, Mastodon, LinkedIn
  3. The Myth Tests succeeded Build succeeds Static analysis passes AI

    generated most of it “The code works, so why review it?” @ddoomen | Principal Consultant | Microsoft MVP
  4. Why Developers Need Reviews Common reasons • Losing track of

    the big picture • Tunnel vision • Local optimization • Familiarity blindness. @ddoomen | Principal Consultant | Microsoft MVP Image by Snowscat on Unsplash
  5. AI Changes Code Reviews AI can • Write code faster

    • Read more code • Handle larger context windows But tends to produce • Longer methods • More abstraction • More documentation than necessary Human reviewers become more important, not less. @ddoomen | Principal Consultant | Microsoft MVP
  6. Knowledge Sharing • Domain knowledge • Architectural knowledge • Coding

    conventions Often more valuable than the defects found @ddoomen | Principal Consultant | Microsoft MVP Image by TSD Studio on Unsplash
  7. Ownership Transfer This matters because • Reduces bus factor risk

    • Connects reviews to team quality, not individual quality • Builds collective accountability. From “my code” to “our code” @ddoomen | Principal Consultant | Microsoft MVP Image by krakenimages on Unsplash
  8. Pair Programming Is Not A Review Pair programming provides •

    Immediate feedback • Shared context But reviewers provide • Fresh eyes • Distance • Different perspectives • Pairing reduces defects. Reviews catch blind spots. @ddoomen | Principal Consultant | Microsoft MVP
  9. What Reviews Actually Protect Functional correctness Maintainability Understandability Evolutionary flexibility.

    @ddoomen | Principal Consultant | Microsoft MVP Image by Jakub Żerdzicki on Unsplash
  10. Testing Scope Matters Too much testing? • Brittle tests •

    Difficult refactoring Too little testing? • Missing confidence Are we testing behavior or implementation? Image by saltsup on Unsplash
  11. Traceability Can I answer • Why was this added? •

    Which requirement does it solve? • Which ticket introduced it? So reviewers should verify • Meaningful commits • Clear PR descriptions • Traceability to business requirements. @ddoomen | Principal Consultant | Microsoft MVP
  12. Detecting Design Problems Things reviewers should actively look for •

    Unexpected coupling • Circular dependencies • Hidden assumptions • Leaky abstractions Ask: What future changes became harder because of this code? @ddoomen | Principal Consultant | Microsoft MVP Image by Drazen Nesic on Unsplash
  13. Detecting Bad Reuse Missing reuse • Same logic repeated everywhere

    Premature reuse • Abstracting after seeing only one use case Wrong reuse • Sharing code that evolves differently. @ddoomen | Principal Consultant | Microsoft MVP Image by Koen Speelman on Unsplash
  14. Proper Use of OO Review questions • Is inheritance actually

    needed? • Is composition better? • Are abstractions justified? Many AI-generated solutions over-engineer OO @ddoomen | Principal Consultant | Microsoft MVP Image by Cash Macanaya on Unsplash
  15. Reviewers should challenge • Factories • Strategies • Decorators •

    Pipelines • Generic frameworks Ask: Is this complexity solving a real problem today? Image by Simone Hutsch on Unsplash
  16. Build vs Buy • Is this code solving a solved

    problem? • Does an OSS package already exist? • Are we reimplementing a standard library? @ddoomen | Principal Consultant | Microsoft MVP
  17. Psychological Safety Poor review culture produces • Defensive authors •

    Nitpicking • Approval theater Great reviews focus on improving code, not judging developers Image by Simi Iluyomade on Unsplash @ddoomen | Principal Consultant | Microsoft MVP
  18. Image by kues1 on Magnific Review Latency A brilliant review

    delivered 10 days later has little value @ddoomen | Principal Consultant | Microsoft MVP
  19. Reviewer Fatigue Large PRs create Superficial approvals Rubber-stamping Missed issues.

    @ddoomen | Principal Consultant | Microsoft MVP Image by Markus Spiske on Unsplash
  20. AI Self-Review • Copilot Review • Copilot CLI /review •

    ChatGPT review prompts • Claude Review AI is the first reviewer, not the final reviewer.
  21. Reviewing Tests First Review order 1. Test names 2. Test

    implementation 3. Production code. Image by Jakub Zerdzicki on Unsplash
  22. Refactoring vs Functional Changes Bad PR — all in one

    commit • Rename classes • Move files • Change behavior • Add features Refactor first. Change behavior second. @ddoomen | Principal Consultant | Microsoft MVP Image by Jubbar J. on Unsplash
  23. AI Makes This Easier AI can • Separate refactorings •

    Create fixup commits • Reorganize changes • Generate commit messages But someone still needs to review whether the change makes sense. @ddoomen | Principal Consultant | Microsoft MVP Image by Jason Lung on Unsplash
  24. Static Analysis vs AI Static analysis is • Faster •

    Cheaper • Deterministic • Repeatable AI should NOT be finding • Formatting issues • Null checks • Naming violations — machines should.
  25. One PBI, Multiple PRs Example feature can become • PR

    #1: Database migration • PR #2: Domain changes • PR #3: API changes • PR #4: UI changes Benefits • Faster reviews • Better feedback • Easier rollback. @ddoomen | Principal Consultant | Microsoft MVP
  26. Commit Hygiene • Atomic commits • Fixup commits • Interactive

    rebase • No merge commits Reviewers should be able to read the story commit-bycommit. @ddoomen | Principal Consultant | Microsoft MVP
  27. Communicate intent Emoji examples Needs to be changes Let’s discuss

    that Planting a seed Nitpick Suggest refactoring Opportunity for improvement. @ddoomen | Principal Consultant | Microsoft MVP Image by Mizuno K on Pexels
  28. Key Takeaways Code reviews are primarily about maintainability Review tests

    before reviewing implementation Separate refactorings from behavioral changes Automate everything that can be automated AI increases the need for good reviews Small, focused PRs produce better software Great reviews build shared ownership.