O verdadeiro motivo para evitar dívidas técnicas

Quando você deixa de escolher bons nomes para namespaces, classes, métodos ou variáveis, você faz com que o programador que precisará dar manutenção nesse código (talvez, você mesmo) precise de mais tempo para o entender.

Criando classes e métodos grandes, pouco coesos, você, além de deixar o código mais difícil de entender, torna o versionamento mais complexo.

[tweet]Adotando uma estratégia ruim para escrever códigos pequenos, você torna seu código muito mais difícil de depurar.[/tweet] O cursor fica, literalmente, “saltando” de um arquivo para outro até que ninguém consiga entender o fluxo de execução.

Implementando “todos os padrões do mundo” só porque os conhece, sem boas justificativas e sem conexão com o domínio, você dá a entender que esta seria a forma certa. Assim, influencia programadores menos experientes embora, talvez, não menos competentes, a fazer o mesmo, perpetuando e proliferando complexidade desnecessária.

Ao ignorar padrões, técnicas e algoritmos consolidados para resolver determinadas categorias de problemas, escrevendo código de maneira ingênua, você aumenta as chances de que o sistema seja menos performático ou muito menos seguro do que deveria.

Quando você escreve código acoplado, você torna o código mais difícil de testar, seja de forma automática ou manual.

[tweet]Toda vez que você deixa de escrever um teste automatizado porque o código que está alterando não é testável, você está o tornando ainda menos testável.[/tweet]

Quando você adiciona camadas em seu sistema que fazem nada além de “repassar a mensagem”, você está criando código a mais para entender e manter sem agregar valor algum.

[tweet]Quando você “programa do jeito certo” sem entender as motivações para as técnicas que está aplicando, provavelmente está o fazendo pelos motivos errados.[/tweet]

Nos parágrafos anteriores, relacionamos apenas alguns dos tipos de dívidas técnicas mais comuns. Alguns tem o mérito de, pelo menos, reduzir o tempo para desenvolver uma feature. Outros, nem isso.

Quanto mais dívidas técnicas um código tiver, mais tempo será necessário para entender, alterar, testar e entregar. Logo, menor será a quantidade de features que o time consegue implementar. Aliás, [tweet]é importante ressaltar que qualquer “boa prática” que impacte negativamente o velocity do time é, na verdade, uma dívida técnica.[/tweet]

[tweet]Bons programadores estudam para entregar código mais performático, escalável e tolerante a falhas. Os melhores programadores também se empenham para gerar mais valor em prazos mais curtos.[/tweet]

Compartilhe este insight:

Comentários

Participe deixando seu comentário sobre este artigo a seguir:

Subscribe
Notify of
guest
2 Comentários
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Mauro Leal
Mauro Leal
5 anos atrás

Com minha experiência nos projetos percebi que, além de tornar a evolução mais difícil, o acúmulo de débitos faz o time ter uma performance fictícia por um determinado tempo. Por exemplo, entrega 40 pontos por Sprint. Depois fica difícil justificar para os stakeholders porque a performance está diminuindo ou porque passar a planejar apenas 30 pontos porque precisa de tempo para resolver débitos

Felipe Almeida
Felipe Almeida
5 anos atrás

Muitos começam a desenvolver sem saber o porque aquele software existe ou precisa existir. Só se liga no o que vai fazer e talvez o como. Falha no recrutamento? Talvez… Mas eu penso que é mais comum do que parece. Esse é o ponto mais crítico, mas vamos supor que o time saiba o porque, temos outra questão que é o nível de customização, eu preciso criar novas entidades/colunas ou foi estruturado pro comportamento mudar a nível de registro? Estamos falando de gravar um JSON e a tela mudar totalmente de comportamento… Isso faz com que as mudanças sejam rápidas e gere valor para o negócio, se o time sabe o pq e sabe o como, o que elas vão fazer será algo parecido com o que eu disse para que as alteraçōes sejam as mínimas possíveis.

AUTOR

Elemar Júnior
Fundador e CEO da EximiaCo atua como tech trusted advisor ajudando empresas e profissionais a gerar mais resultados através da tecnologia.

NOVOS HORIZONTES PARA O SEU NEGÓCIO

Nosso time está preparado para superar junto com você grandes desafios tecnológicos.

Entre em contato e vamos juntos utilizar a tecnologia do jeito certo para gerar mais resultados.

Insights EximiaCo

Confira os conteúdos de negócios e tecnologia desenvolvidos pelos nossos consultores:

Arquivo

Pós-pandemia, trabalho remoto e a retenção dos profissionais de TI

CTO Consulting e Especialista em Execução em TI
2
0
Queremos saber a sua opinião, deixe seu comentáriox
Masterclass

O Poder do Metamodelo para Profissionais Técnicos Avançarem

Nesta masterclass aberta ao público, vamos explorar como o Metamodelo para a Criação, desenvolvido por Elemar Júnior, pode ser uma ferramenta poderosa para alavancar sua carreira técnica em TI.

A sua inscrição foi realizada com sucesso!

O link de acesso à live foi enviado para o seu e-mail. Nos vemos no dia da live.

Muito obrigado!

Deu tudo certo com seu envio!
Logo entraremos em contato

O verdadeiro motivo para evitar dívidas técnicas

Para se candidatar nesta turma aberta, preencha o formulário a seguir:

O verdadeiro motivo para evitar dívidas técnicas

Para se candidatar nesta turma aberta, preencha o formulário a seguir:

Condição especial de pré-venda: R$ 14.000,00 - contratando a mentoria até até 31/01/2023 e R$ 15.000,00 - contratando a mentoria a partir de 01/02/2023, em até 12x com taxas.

Tenho interesse nessa capacitação

Para solicitar mais informações sobre essa capacitação para a sua empresa, preencha o formulário a seguir:

Tenho interesse em conversar

Se você está querendo gerar resultados através da tecnologia, preencha este formulário que um de nossos consultores entrará em contato com você:

O seu insight foi excluído com sucesso!

O seu insight foi excluído e não está mais disponível.

O seu insight foi salvo com sucesso!

Ele está na fila de espera, aguardando ser revisado para ter sua publicação programada.

Tenho interesse em conversar

Se você está querendo gerar resultados através da tecnologia, preencha este formulário que um de nossos consultores entrará em contato com você:

Tenho interesse nessa solução

Se você está procurando este tipo de solução para o seu negócio, preencha este formulário que um de nossos consultores entrará em contato com você:

Tenho interesse neste serviço

Se você está procurando este tipo de solução para o seu negócio, preencha este formulário que um de nossos consultores entrará em contato com você:

× Precisa de ajuda?