Refactoring is the process of improving code without changing what it does. It's a vital skill for keeping projects healthy and growing. Without it, implementing new features will take more time and effort.
Most teams rarely refactor. Usually, a senior developer removes him or herself from working on new features and refactors the code base as an exercise to reduce technical debt, reduce complexity, or introduce a programming pattern. This practice makes sense to me since refactoring is inherently an intimidating practice. Approaching a screen full of code to improve it—without altering the behavior—is challenging, even with a clear plan. As such, the people best at refactoring tend to be more senior. They are aware of the 60+ refactoring methods, many design patterns, and the scope and behavior of the specific project.
I want to empower developers at every level to improve the code their working on every time they implement a new feature. Doing so should keep the project healthier and reduce the need for extensive refactoring. Attendees will walk away from this talk assured they can use one of two simple techniques to refactor their code.