Technical debt is another term thrown around like crazy. I don’t like this term because when non-technical people hear about it, it’s like they got a get out of jail free card.
Why? Because you don’t need to pay back the technical debt if you don’t keep using that piece of software.
Imagine you want to open a restaurant, you ask for 100K to the bank and then the restaurant blows up and you say to the bank “oh well, it didn’t work out…”
I’d prefer some other term like “technical scaffolding”. Basically supporting stuff that holds your product while it’s being build up. But as soon as it starts to grow, you make sure the building is stable.
What happens in many software companies is that they are just a pit of technical debt, so when you go work there, you maintain a badly structured architecture. You maintain the scaffolding, and sometimes this gets so bad you don’t know if it’s scaffolding or rubble from a previous incident under all the scaffolding.
I’m not saying to not cut some corners when you are starting a project, but like cutting corners in a building, be sure you don’t build a tower of Pizza.