Arquitetura para pequenos/médios projetos
Boa noite! Gostaria de compartilhar e pedir opiniões sobre algo que tenho refletido ultimamente. Tenho estudado abordagens de arquitetura de software, como hexagonal, clean architecture e até mesmo a abordagem de domínio rico (DDD). Junto a isso, surgem os conhecidos "boilerplates" que frequentemente acabamos adotando, como use-cases, entidades, etc.
No entanto, tenho percebido que isso tem levado a uma diminuição na velocidade de entrega dos meus projetos e um aumento na complexidade em busca de "desacoplar" o código. Entendo que para aplicações grandes, destinadas a escalar e lidar com uma base de código extensa, essas abordagens podem ser mais apropriadas. No entanto, no meu caso, sendo o único desenvolvedor em uma software house responsável pelo backend de 2/3 projetos simultâneos, estou em dúvida.
Considero que uma abordagem mais simplificada, utilizando NestJS para acelerar o desenvolvimento, poderia ser uma opção viável. Contudo, há uma sensação intrínseca de que a abordagem correta seria criar entidades, use-cases e toda essa estrutura, mesmo que isso resulte no mesmo produto final.
Este é um desabafo e um pedido de ajuda. O que vocês fariam? Continuariam com a abordagem mais complexa ou optariam por algo mais básico e bem feito? Vale ressaltar que, em ambas as opções, utilizo testes para cobrir os cenários, mas na opção mais complexa, preciso escrever de 4 a 5 arquivos a mais apenas para separar as responsabilidades.