Refactoring Legacy Code

Development teams constantly make decisions between building software right and building software fast. Even though building it right (quality) is always paramount, at times development teams compromise quality to gain speed (build fast). Rushing delivery of a feature or user story without ever going back to refactor the code to express your learnings leads to technical debt. In layman terms, it is like cutting corners to meet deadlines.

15+ Years Experience
Learn from industry leaders
Tailor-made Learning Journeys
Become the expert you want to be!
Hands-On Approach
Immediately start applying your craft
Rated 8,0
Highly reviewed by your peers

Upcoming courses

  • Software Developer
  • Dutch
  • English
2 days
09:00 - 17:00
Lunch incl.

Short summary

Some teams postpone improvement work. There is an increasing cost of delay due to technical debt. Moreover, postponing improvement to a later point in time is a sign of waterfall mindset. Some teams plan for a refactoring sprint or stabilization sprint or any other name they want to put but all of them boil down to doing major changes without any business value. This course will help attendees understand these aspects and gives them hands on experience with refactoring.

Our Trainer


Phani Bhushan
Technical Consultant & trainer

Phani works as a Technical Consultant and a Institute trainer at DevOn, helping organizations to make the transition to the Agile way of working.

Course objectives

  • Understanding that avoiding/reducing technical debt is not a choice for the team but it’s a responsibility they have every sprint.
  • Preferring not to make any big bang refactoring to reduce technical debt. More often they will not result the desired outcome as they involve a higher risk of dealing with uncertainty.
  • Understanding and experiencing how to continuously refactor even with complicated legacy code.

Course topics

• The importance of refactoring:
• The definition of refactoring
• Lehman’s law of increasing complexity
• Technical debt
• Dealing effectively with legacy code
• The definition of legacy code.
• Working with feedbacks
• Legacy code dilemma
• Identify change points
• Find tests points
• Make the code testable (break dependencies)
• Write the right tests
• Hands-on exercise

Target audience

  • This course is intended for software developers and teams who have struggled or are struggling with legacy code. Basic knowledge of writing unit tests is required.

Top reviews of our trainings

  • Hands-on demo’s really helped to understand concepts

    Pieter v/d Heijden / Software Architect at Calvi Docker & Containerization
  • Good practical examples

    Simeon Poot / DevOps Engineer at BinckBank N.V. DevOps Foundation
  • Good practical examples

    Simeon Poot / DevOps Engineer - BinckBank DevOps Foundation
  • Good explanation, easy talker

    Jeffrey van der Linden / DevOps Security Engineer bij CALVI Kubernetes & Continuous Delivery
  • Lots of room for discussions

    Jos DevOps Foundation
  • Good enthusiastic storyteller

    Ruud Deul / Teammanager domein Zorg at WiGo4it Masterclass Leading a DevOps Transformation

Training dates

Payment methods

Need help?

Please contact us via email or call us by the number stated below. We are more than happy to help you.

+31 (0)15 - 241 19 00

What’s next for me?

Take a look at what trainings you should follow next to become a true expert in your field.


Quality Code using SOLID principles

3-days training


What if I book a date, but then have to reschedule?

After your registration has been confirmed, you are still able to change the date up to 20 days before the first day of the training. You are able to do this once. Please send your request to or call +31(0)15-24 11 900 for further assistance.

What if not enough people have signed up for the course?

Two weeks before each training, we will check if we have enough participants for the training course to be valuable and continue. If this is not the case, we will inform you by e-mail, with options for a new date and location. After this notification, you will have the right to cancel or change your registration within 5 working days.

How can I pay?

On the website you can choose to pay via iDeal, creditcard or by invoice with a payment period of 30 days.

Which languages do you offer your courses in?

Most of our courses are available in both English and Dutch. We have a selection of training courses which are only available in English, which will be on that training page. Our rule of thumb for courses in the Netherlands is – the course is in English unless everybody speaks Dutch, then the course is in Dutch. If you want to be sure you are in a Dutch course, please get in touch with in case the information on a specific date is not available on the course page.

What do the costs include?

Unless mentioned otherwise, the course fee includes the cost of training material, exam cost, the use of the location, catering and parking.

Only one or two locations are visible. How is that possible?

When you click on the orange arrow, the menu will unfold further. More locations and dates might appear.

Is VAT included in the prices shown?

The costs that apply to our programs initiated from the Netherlands are exempt from sales tax as per Article 11-1-o of the 1968 Sales Tax Act. In other locations/countries, the prices shown are excluding VAT, which will be added.

Can I still register for the training?

Is the ‘register’ headline visible? This means you can register and attend the training. Does the headline say ‘full’? Give us a call and we’ll try and help you out!

What language is the course material in?

All course material for the open registrations is in English.

When will I receive my exam code?

If you are doing the PSD ( or one of the certified DevOps Institute trainings, you will receive your exam code on the final day of the training.

What is your payment term?

We have a payment term of up to 30 days

Not sure if this course is for you?