Code Renovation
Advanced practices for making
old, legacy code shine again

About the training

This training module is designed specifically for developers who are already familiar with all the intricacies of a legacy system and how it works. They'll learn practical skills to break down monolithic codebases, isolate dependencies, and retrofit tests effectively so they can add new functionality without risks.

The "Code Renovation" module is our advanced masterclass, inspired by Michael Feathers' book "Working Effectively with Legacy Code" but enriched with modern topics and our own classification of "Legacy Code Smells". We recommend taking this course after the completion of the Foundation Training Program.

CODE RENOVATION

Break dependencies & retrofit tests

Make old, legacy code shine again

The course develops over hands-on sessions on Refactoring Calisthenics and Characterization & Mutation Tests, enabling the participants to tackle even the most complex code issues confidently.

In the final challenge (which has been called "end-level monster"), the participants have to solve collaboratively a realistic "big ball of mud" scenario, applying everything they have learned in the previous lessons.

By the end, they'll not only manage but master legacy systems, ensuring their maintainability and extensibility for future challenges. This hands-on training ensures your team can implement immediate improvements, turning legacy burdens into assets.

VIEW Syllabus
ADVANCED MODULE
Group Size

From 6 to 10 people

Level

Beginner to Advanced

Delivery

Live, 100% Remote
(via Zoom)

Duration

6 half-day lessons
(~3.5 hours each)

Pace

1 or 2 weekly lessons

Coding Language

Any

Target Audience

Software Developers, Architects, and Quality Engineers of any seniority

Prerequisites

Knowledge of Unit Tests in the target language. Completion of the Foundation Training is highly recommended.

Format

Slides + hands-on coding (JetBrains IDE provided) and modeling (Miro boards)

Coding Style

Collaborative, in Mob Programming

Held hostage
by your own system?
  • Resource drain by high maintenance
  • Integration nightmares
  • Security risks and vulnerability
  • Scaling challenges hindering growth
  • Talent retention issues

Did someone suggest a complete rewrite?

Forget it, it's a financial black hole.

Without solid regression test automation in place, tweaking the system is like defusing a bomb blindfolded. Too slow, too risky.

The best option is learning the advanced practices of this course, so you can safely retrofit tests in your system and make it maintainable. Your old legacy code will shine again!

 
 
 

Presentation Day?

It's our alternative to certifications!

We forgo traditional certifications, choosing to celebrate the participants’ achievements during the "Presentations Days", where they teach others something they learned during the module. This practice significantly enanche their communication and presentation skills — competencies often overlooked.

Their work is available on our Community of Practice page to promote a knowledge-sharing mindset and community spirit.

Knowledge retained after training