It’s interesting to think about “bad code” as technical debt that was accepted explicitally due to urgency of the hiring process or the quality of engineers you could afford.
Setting a dream team on whatever you’re trying to achieve is expensive in both opportunity cost (what else might they have achieved elsewhere) and actual budget costs. So I think you can invoke “bad code” tech debt quite explicitally by trying something but knowing the team is weaker so the quality and application sustainability may suffer. Repayments here include learning, or drafting in outside help like yourself at a critical junction when success of product has arrived without the underlying quality needed.
It’s interesting to think about “bad code” as technical debt that was accepted explicitally due to urgency of the hiring process or the quality of engineers you could afford.
Setting a dream team on whatever you’re trying to achieve is expensive in both opportunity cost (what else might they have achieved elsewhere) and actual budget costs. So I think you can invoke “bad code” tech debt quite explicitally by trying something but knowing the team is weaker so the quality and application sustainability may suffer. Repayments here include learning, or drafting in outside help like yourself at a critical junction when success of product has arrived without the underlying quality needed.