top of page

Quality Engineering

Forty tutorials across four complete series, all about the same thing: code that still makes sense six months from now. Start anywhere — these paths do not depend on each other.

Refactoring Patterns

Change the shape of code without changing what it does. Ten named patterns, from pulling out a function to strangling a legacy system one route at a time.

1. Why Refactor

2. Extract Function

3. Extract Variable

4. Replace Conditional with Polymorphism

5. Move Function or Module

6. Rename Symbol Safely

7. Introduce Parameter Object

8. Split Phase

9. Refactor to Tests

10. Strangler Pattern Refactor

Start with Part 1 →

Code Reviews That Help

Review that catches real problems without burning the goodwill you need for the next one.

1. Write a Reviewable PR

2. Prioritize What to Comment On

3. Give Feedback That Lands

4. Review a Large PR

5. Spot Security Issues in Review

6. Review for Readability

7. Build Review Conventions

8. Handle Disagreement in Reviews

9. Review Junior Engineer PRs

10. Measure Review Health

Start with Part 1 →

Debugging Systematically

Replace guessing with method. Every tutorial is a technique you can use the next time something breaks.

1. Form a Hypothesis from Symptoms

2. Bisect to Find the Cause

3. Read Stack Traces Effectively

4. Use a Debugger, Not Print

5. Debug Distributed Systems

6. Debug Memory Leaks

7. Debug Race Conditions

8. Debug Production Issues

9. Write a Bug Postmortem

10. Build Debugging Tools Into Code

Start with Part 1 →

AI-Assisted Coding

Use AI coding tools without shipping code you cannot explain. Includes the cases where the right answer is to turn them off.

1. Pick an AI Coding Tool

2. Prompt for Code

3. AI Pair Programming

4. Review AI-Generated Code

5. Use AI for Refactoring

6. Use AI for Tests

7. Use AI for Debugging

8. AI Agents for Engineering

9. When Not to Use AI

10. Team Conventions for AI Tools

Start with Part 1 →

bottom of page