Working Effectively with Legacy Code

It's a reality that developers will have to deal with Legacy Code more than they would like to admit. Having refactored a larger Django app myself I want to get better at it, since I expect to face this situation again in the future.