4. @sallygoble
In debt
● What technical debt is, and why it occurs
● Some examples of technical debt
● How do you know you’re in debt?
Out of debt
● How to pay back your debt
● Managing repayments
● How to avoid accumulating more debt by creating good habits
9. @sallygoble
“Technical Debt is the implied cost of
additional rework caused by choosing
an easy (limited) solution now instead of
using a better approach that would take
longer”
35. @sallygoble
Dedicated
teams
● Doesn’t interrupt delivery
● No context switching
● Can deliver bigger pieces of
TI
● Nobody wants to do it!
● Uses your senior engineers
● Engineers don’t get
exposure to the pain points
● Contractors don’t know the
of the code
36. @sallygoble
Ad hoc
repayments
● Flexible and efficient
● Cross team collaboration
● Product delivery trumps all
● Schedule clashes
● Lack of transparency
● Some tech debt too big
45. @sallygoble
Matching TI to teams, consider
● Urgent delivery deadlines
● Skill in teams
● Alignment with teams
● Development goals/interests
● (Sense checked with PMs/TLs!)
51. @sallygoble
Has it worked? ● We’ve managed to get
through a fair bit
● Teams embraced it!
● Engineers don’t feel guilty
● Transparency
● Career progression
● Feels a bit top down
● Mid cycle moves
53. @sallygoble
Good habits
● Be aware of compromises
● Document your trade offs
● Use lean UX methods
● Invest in knowledge
● Upgrade technologies
● Keep updating your TI list!
● Reward continuous
improvement
54. @sallygoble
Conclusion
● What technical debt is, and how it is inevitable
● Some examples of technical debt
● Visible manifestations of tech debt and how to spot it
● Business impact of tech debt (slow to market,
unreliable, attrition)
● Sustainable ways of reducing it (backlog, incorporate
in teams, in SLDC)