# Anna Filina: How Every Decision Introduces Technical Debt 

EP-001 | April 15, 2019 | 35:32



Topics: Technical Debt, Architecture


Robby speaks with Anna Filina, a software consultant at Zenika Montreal who specializes in legacy code. They discuss why engineers don't have to ask permission to write tests, why convincing people to get on board with your technical plans matters, and what a "software archaeologist" really does.



## Guest

**Anna Filina** — Software Development Consultant, FilinaCo

Specializes in rescuing legacy projects, writing tests for untested code, and training development teams on best practices.



## Show Notes

Robby speaks with Anna Filina, a software consultant at Zenika Montreal who specializes in legacy code. They discuss why engineers don't have to ask permission to write tests, why convincing people to get on board with your technical plans matters, and what a "software archaeologist" really does.

## Helpful links:

- [Working Effectively with Legacy Code by Michael Feathers](https://www.amazon.com/Working-Effectively-Legacy-Michael-Feathers/dp/0131177052)
- [Zenika Montreal](https://www.zenika.ca/)
- [Anna Filina on Twitter](https://twitter.com/afilina)
- [Anna Filina on Youtube](https://www.youtube.com/c/AnnaFilina)

### Subscribe to Maintainable on:

- [Apple Podcasts](https://podcasts.apple.com/us/podcast/maintainable/id1459893010)
- [Overcast](https://overcast.fm/itunes1459893010/maintainable)

Or search "Maintainable" wherever you stream your podcasts.

[Join the discussion in the Maintainable Discord Community](https://discord.com/invite/u8BwA2kvyu)

_Brought to you by the team at_ [_Planet Argon_](https://www.planetargon.com/)_._






## Frequently Asked Questions


### How does Anna Filina view technical debt?

Anna explains that every software decision introduces some form of technical debt. The key is making conscious decisions about which debt to take on and having a plan to manage it over time.


### What is Anna Filina's approach to rescuing legacy projects?

Anna specializes in legacy project rescue by first adding tests to understand existing behavior, then refactoring incrementally. She emphasizes that understanding the business context is as important as understanding the code.


### How does Anna Filina recommend teams handle untested code?

Anna advocates starting with high-level integration tests to capture existing behavior, then gradually adding unit tests as you refactor. She recommends focusing testing efforts on the parts of the codebase that change most frequently.





## Transcript



