A habilidade mais importante para um desenvolvedor é a comunicação
Tags: documentation, techwriter, beginners, productivity
Published: 2023-08-08 01:21:08

### Nem sempre escrever código vai resolver os maiores desafios na carreira de um desenvolvedor

Podemos dizer que 90% dos problemas de uma empresa são causados pela falta de comunicação. Isso em nível de colegas de equipe e até entre áreas inteiras. Então, como podemos melhorar a forma como nos comunicamos e evitar dores de cabeça com problemas simples que acabam crescendo com o tempo? Neste artigo, proponho-me a trazer algumas dicas de como se expressar melhor, transmitir ideias de forma escrita e verbal.

Muito além das habilidades técnicas, um bom desenvolvedor precisa entender como compartilhar suas soluções e problemas com outras pessoas.

## O poder de um bom texto…

Você já deve ter participado de uma reunião que poderia ter sido substituída por um e-mail… Frequentemente, ela ocorreu apenas porque acreditavam que seria “impossível” transmitir a ideia por escrito. Posso afirmar que a maioria delas realmente deveria ter sido um texto objetivo. No entanto, para alcançar esse patamar, é necessário compreender previamente como redigir textos de qualidade.

1. Cuidado com erros de digitação
2. Conheça seu público algo
3. Faça as perguntas certas

## Cuidado com erros de digitação

O primeiro é o mais simples de todos: Evite equívocos de digitação ou de português, você não precisa redigir a redação do ENEM, nem ser formal constantemente. O dilema ocorre quando tais equívocos podem prejudicar a compreensão do leitor, portanto revise sempre que possível antes de clicar em “ENVIAR”. Alguns segundos adicionais não comprometerão sua oportunidade de compartilhar algo, mas substituir “significado” por “sinificado” pode gerar confusão para o leitor.

## Conheça seu público

O segundo aspecto está intimamente relacionado à elaboração de palestras; um palestrante competente sempre pesquisa o público-alvo de seu conteúdo, a fim de aprimorar a forma como é apresentado. No texto, devemos ter a mesma preocupação; não é adequado chegar a uma reunião com profissionais de negócios discorrendo sobre conceitos altamente técnicos. Vejamos um exemplo:

![Abordagem muito técnica trazendo informações desnecessárias para o contexto - Olá, pessoal! Atualizei a lib do DynamoDB, e na tabela info_meios_pagamento não estamos mais utilizando GlobalSecondaryIndexs para consulta.](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zqmcgmnljux7663v9zu5.png)

A melhor forma de expressar isso seria abstraindo essas informações e focando no que é importante para esse público:

![Exemplo de uma interação certa com pessoas sem conhecimento técnico mais aprofundado - Olá, pessoal! Realizei a atualização no aplicativo e com isso melhoramos a pesquisa de meios de pagamento, acredito que nossos clientes já consigam sentir a diferença.](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/64lhea2q270ugu6ye337.png)

## Faça as perguntas certas

O último ponto é importante independente da senioridade, ele se baseia no “saber perguntar”, um dos sites mais famosos para desenvolvedores é o [stackoverflow](https://stackoverflow.com/), nele é crucial descrever de maneira precisa o problema a fim de buscar auxílio de programadores de todo o mundo. Essa prática também ocorre dentro das empresas, quando surge uma dúvida, é necessário enviar uma mensagem no Teams ou no Slack para alguém com maior experiência ou algum profissional de negócios.

Muitas vezes partimos do pressuposta que as outras pessoas tem o mesmo contexto que nós, que sabem todo o caminho que passamos para chegar até aquele ponto, mas nem sempre (grande parte das vezes) não é este o caso. Quando entrei na área, esse foi um dos melhores conselhos que recebi: “Mostre como você chegou a essa conclusão”. Segue mais um exemplo:

![Exemplo de uma conversa com mais contexto e fácil de ser compreendida por colegas de equipe
Bruce Wayne: Bom dia, tudo bem? Ontem realizei alguns testes na aplicação, mas não consegui conectar ela ao banco de dados (RDS), estou fazendo a tarefa JIRA-X1999 (Link tarefa).
 Consegui configurar as variáveis de ambiente
 <print das variáveis>
 Atualizei as dependências também
 <print do endpoint atualizado>
 Tony: Você já tentou trocar as credenciais da AWS?
  Bruce Wayne: Deu certo, obrigado!](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/vocdv2bsrf4xqsv2bjil.png)

Costumo incluir também imagens, pois isso evita que a pessoa precise navegar por vários links para me auxiliar em algo simples. Caso seu colega possua alguma deficiência visual, adicione o texto, se possível, ou descreva o que anteriormente seria uma imagem. Quanto mais detalhes forem acrescentados, mais valor você está dando ao tempo de seus colegas de equipe.

## Don’t ask to ask, just ask

Um site que encontrei por acaso e enfatiza bastante esse aspecto é o [Don’t ask to ask, just ask](https://dontasktoask.com/). Ele concentra-se nas interações que ocorrem principalmente em fóruns da internet, onde alguém chega com a seguinte pergunta:

![Exemplo de um péssimo pedido de ajuda em fórum, sem detalhamento - Tony: Algum expert em java aqui?](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/v0370yfnbqf22q7on2h7.png)

Como mencionado no tópico sobre formular as perguntas adequadas, é necessário sempre trazer o contexto do problema, preferencialmente descrevendo as medidas já tomadas para tentar solucioná-lo.

![Exemplo de uma boa abordagem em um fórum, pergunta direta e com detalhes - tony: Como eu implemento uma função em Java para filtrar todos os meios de pagamento com saldo maior que 1.000?](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0q74t30zsorkimurffcb.png)

Ao adotar esse método, você obterá uma resposta mais rápida, pois a pessoa não precisará enviar uma nova mensagem perguntando sobre qual tipo de ajuda você precisa. Além de ajudar quem for pesquisar sobre este assunto futuramente, muitas vezes será você mesmo.

Aqui tem alguns [exemplos do próprio stackoverflow](https://stackoverflow.com/help/how-to-ask) de como escrever bons questionamentos (tradução livre feita por mim):

```
Bad: C# Problema de matemática
Good: Por que usar float em vez de int me dá resultados diferentes quando todas as minhas entradas são números inteiros?

Bad: [php] dúvida sobre sessões
Good: Como posso redirecionar usuários para páginas diferentes com base em dados de sessão em PHP?

Bad: problemas com if-else no Android
Good: Por que str == “valor” retorna falso quando str é definido como “valor”?
```

## Iniciando uma conversa

Outra questão bastante comum é como iniciar uma conversa. Provavelmente, você já recebeu uma mensagem no chat com um simples “Oi, tudo bem?” que permaneceu ali até que você respondesse com um “Oi” de volta. No entanto, essa troca pode levar tempo, enquanto novas prioridades surgem e você não tem ideia da urgência daquela saudação sem contexto. Não devemos deixar as pessoas em “espera” como em uma ligação telefônica. Seja direto, fornecendo todas as informações necessárias de forma objetiva junto à saudação.

Não faça isso:

![Exemplo de uma abordagem lenta - Bruce: Oi Alfred: Olá, tudo bem? Bruce: Como rodo o script na minha máquina? Alfred: sh open_batcaverna.sh](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gij31stg0k8yple5qzlx.png)

Prefira uma abordagem direta:

![Exemplo de uma abordagem direta - Bruce: Oi, como faço para rodar o script na minha máquina? Alfred: Olá! sh open_batcaverna.sh](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1csofc6g6xyz1tt5rjrl.png)

## TechWriter

Em nossa área temos diversas vertentes, uma delas é a de TechWriters, que são profissionais especializados em escrever e comunicar informações técnicas de maneira clara e compreensível. Eles criam documentação, manuais de usuário e guias de instruções, ajudando a traduzir conceitos complexos em linguagem acessível. Embora os desenvolvedores não precisem ser TechWriters, é importante que aprendam com esses profissionais a compartilhar informações, garantindo o sucesso e a usabilidade de produtos e de software.

Se você tiver a oportunidade de trabalhar com estes profissionais peça algumas dicas, com certeza eles lhe ensinarão algo novo, assim como você ensinará a eles.

## Inteligência artificial

Uma ótima ferramenta para lhe ajudar a escrever textos melhores é a Inteligência artificial (IA). Essa tecnologia tem se mostrado cada vez mais promissora na hora de revisar textos. Através de algoritmos avançados, as ferramentas de IA podem identificar erros gramaticais, sugerir correções e até mesmo oferecer alternativas de palavras e frases para melhorar a clareza e a fluidez do texto.

Algumas das opções mais utilizadas atualmente incluem o [ChatGPT](https://chat.openai.com/), [Clarice.ai](https://clarice.ai/), [copy.ai](https://www.copy.ai/) e várias outras.

> Se você pretende utilizar essas ferramentas em ambientes corporativos, certifique-se de não violar nenhuma política interna relacionada ao compartilhamento de informações.

![Exemplo de como melhorar um texto no ChatGPT](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/l7mf12xdnl0nq4cizko6.png)

## Timidez, uma barreira para se expressar

Aqui está outra vantagem de se expressar por texto. Sempre fui uma pessoa muito tímida e busquei por muito tempo não dar minha opinião em conversas no trabalho. Por isso, comecei a escrever. Na escrita, você se expõe menos e tem a chance de revisar mais de uma vez o que será enviado. Apenas tome cuidado para não ficar lapidando um texto até chegar na versão “perfeita”, porque ela não existe. É mais importante você ter uma versão direta com as informações mais importantes do que cobrir todos os cenários.

Além disso, a comunicação escrita também proporciona uma forma de registro e referência para futuras consultas. Ao expressar ideias por meio de textos, você cria um histórico que pode ser utilizado como base para tomadas de decisão, análises retrospectivas e aprendizados.

## Algumas dicas extras

- Leia bastante, quem escreve bem é aquele que lê muito
- Pegue feedback com seus colegas de trabalho
- Não tenha medo de expor suas ideias

---

## Conclusão

Escrevi esse artigo para compartilhar com vocês ações que me auxiliaram muito em minha carreira, ainda estou aprendendo a me expressar melhor a transmitir minha ideias para as pessoas, isso tudo é um processo que só vai melhorar com muita prática, assim como programar!

Pratique realizando anotações sobre a tarefa que está fazendo, se possível documente seu projeto, vai ajudar você e será uma forma fácil de compartilhar com novas pessoas que entrarem em sua equipe (sem passar horas em reuniões de overview).

Espero que tenha gostado e sempre que ver alguém fazendo uma pergunta sem muito contexto compartilhe esse artigo com essa pessoa! Vamos melhorar a forma que nos comunicamos e criar um mundo com menos desentendimentos!

---

Caso tenha alguma crítica, dúvida ou sugestão, fique à vontade para comentar abaixo ou nos envie uma mensagem:

Jean Jacques, Backend Software Engineer — <https://www.linkedin.com/in/jjean-jacques10/>

Até a próxima!

## Referências

- <https://dontasktoask.com/>
- <https://nohello.net/en/>
- <http://catb.org/~esr/faqs/smart-questions.html>
- <https://stackoverflow.com/help/how-to-ask>