Trabalho como desenvolvedor de software há muitos anos. Foi minha experiência que os projetos se tornam mais complexos e insustentáveis à medida que mais desenvolvedores se envolvem no desenvolvimento do produto.
Parece que o software em um certo estágio de desenvolvimento tem a tendência de ficar "mais hackier" e "hackier", especialmente quando nenhum dos membros da equipe que definiu a arquitetura trabalha mais na empresa.
Acho frustrante que um desenvolvedor que tenha que mudar alguma coisa tenha dificuldade em obter uma visão geral da arquitetura. Portanto, há uma tendência para corrigir problemas ou fazer alterações de maneira que funcione na arquitetura original. O resultado é um código que se torna cada vez mais complexo e ainda mais difícil de entender.
Existe algum conselho útil sobre como manter o código fonte realmente sustentável ao longo dos anos?