Impulsojunte-se à Impulso
Mulher de blusa de manga estampada e braços cruzados, sorrindo - artigo da Impulso: 5 habilidades necessárias para ser uma pessoa programadora excelente

17/02/22

9 min de leitura

Mulher de blusa de manga estampada e braços cruzados, sorrindo - artigo da Impulso: 5 habilidades necessárias para ser uma pessoa programadora excelente

Habilidades para ser uma pessoa programadora excelente

Italo AurélioItalo Aurélio

A função de uma pessoa programadora se tornou essencial para as empresas crescerem no mercado, independente do ramo de atuação. De forma que quase todas as áreas de produção ou serviço possuem um sistema, aplicativo que pode ser otimizado por devs. Com esta crescente demanda de profissionais, vemos muitas pessoas iniciando na área e querendo saber como melhorar ou se destacar.

Por isso, existem muitos pontos que podem fazer você ser uma pessoa programadora melhor e eles vão muito além de finalizar mais tarefas. Claro que concluir seu trabalho é essencial, mas as sutilezas de habilidades que ficam em “off” podem fazer – e muito – a diferença.

Entendimento

Entendimento Habilidade

Antes de começar a programar qualquer coisa, você precisa entender o que vai resolver.  Afinal, um bom entendimento trará clareza para você, assim, suas ideias e soluções surgirão a partir de uma base de conhecimento boa e estruturada. Portanto, invista um tempo para entender o que e porque você precisa resolver.

A maioria dos problemas difíceis só são por dificuldade de entendimento.

Mas quando você sabe que entendeu o problema? No momento em que consegue explicá-lo de maneira simples!

Provavelmente você já passou por uma situação em que estava preso(a) em um problema e tentou explicar para si mesmo o que estava fazendo, e BOOM! Magicamente a solução apareceu em sua mente.

Por exemplo, existe uma “brincadeira” na área de desenvolvimento que é conhecida como Debug com pato de borracha, onde você, basicamente, debuga seu código explicando para um pato 🦆 o que está sendo feito e o que deseja resolver. Parece mentira, mas, isso realmente faz com que você assimile melhor todo o contexto e solução. Por isso, quando você vai pedir ajuda à alguém e precisa explicar o problema, a solução, muitas vezes, acaba aparecendo “sozinha”.

Enfim, entenda e problema e depois comece a encontrar maneiras de resolvê-lo.

Comunicação

Comunicação - Habilidade para ser uma pessoa programadora excelente

Pois é, os dias de uma pessoa programadora com telas verdes, onde você fica trancada em um quarto, fazendo o que quer, estão contados — principalmente se você atua em equipe e não é uma pessoa cracker. Provavelmente você precisará conversar com outras pessoas, explicar ideias, conceitos, os porquês das decisões e tudo isso envolve comunicação.

Como tudo, comunicação é uma habilidade, e se você, assim como eu, possui uma dificuldade neste fator, entenda que é necessário treino, estudo e aprendizado para conseguir se comunicar de forma eficiente. A percepção e entendimento de outras pessoas nunca serão os mesmos que o seu, e isso muda totalmente como ela entende e recebe qualquer palavra sua. Entender isso, portanto, pode ser um ponto de partida. Afinal, cada pessoa possui suas experiências e emoções que afetarão diretamente no entendimento de qualquer assunto. Por isso, tente de forma sutil entender o “tipo” de pessoa que você está conversando e isso será muito bom.

Vamos a um exemplo: digamos que você irá falar com a pessoa que está na gestão de vendas de sua empresa para apresentar as novas funcionalidades do sistema — quais dos dois assuntos abaixo você acredita que seria mais interessante para ela?

1- Falar o quanto de memória o novo servidor tem e como isso irá beneficiar a linguagem de programação nova que você está utilizando;

2- Mostrar como um novo fluxo da aplicação pode facilitar o contato dela com os clientes e aumentar as vendas.

Entenda o que a pessoa que você está conversando quer ouvir. Falar a quantidade de memória ou velocidade do servidor pode não ser tão interessante para um setor de vendas. Mas, informar quantos processos é capaz de automatizar com esses recursos pode ser um ótimo assunto.

Neste exemplo é quase que “natural” saber que a opção 2 é correta. Mas, em muitos casos, você pode acabar em uma situação onde está explicando algo que quem recebe a informação sequer entende o que está sendo falado.

Normalmente, isso pode ser equilibrado com comunicação. Para a sua liderança, não importa muito como você faz o código, mas sim, normalmente, são buscados outros fatores — perceba e apresente-os. Controle as percepções que as outras pessoas tem de você. Você não vai impressionar seus clientes com suas habilidades de programção orientada a objetos.

Se quiser entender mais sobre alguns pontos de comunicação, indico alguns livros que me ajudaram/ajudam bastante;

  • Inteligência Emocional Daniel Goleman
  • A Bíblia de vendasJeffrey Gitomer
  • Como Fazer Amigos e Influenciar Pessoas Dale Carnegie

Comunicar é um fator essencial. Você é o que você consegue explicar.

Resolução de problemas

Resolução de problemas - Habilidade para ser uma pessoa programadora excelente

Esta habilidade não é uma novidade. Essa é a função de uma pessoa programadora — abstrair problemas em soluções com tecnologia. O segredo está em resolver os problemas certos. Foque em problemas que tragam um maior impacto para a solução que deseja apresentar e um valor real para o negócio.

Se você atua em uma empresa, tente entender os problemas de cada setor e ver como pode ajuda-lá a entregar uma solução eficiente, trabalhar em conjunto para um benefício comum. Vá além do código, busque entender sobre a área do negócio que você atua. Dominar e entender as necessidades do projeto ou empresa que você está trabalhando será um grande diferencial e trará novas soluções eficientes para suas ideias. Provalvelmente você saberá onde “atacar” com maior retorno.

Ao invés de simplesmente completar listas de tarefas, você pensará e terá opinião nas novas implementações, com uma visão menos técnica e mais empreendedora.

Se existem pequenos processos repetitivos, automatize-os para que possa cortar as tarefas chatas e robóticas — se você tem uma tarefa que toma 5 minutos de seu tempo, todo dia, que tal levar 1 hora para automatizá-la e otimizar o trabalho? Tarefas repetitivas são chatas, mas alguém precisa resolvê-las. Muitas vezes, as soluções simples podem ter um impacto positivo inesperado.

A resolução de um problema pode ser resumida em:

Entendimento ➡️ Planejamento ➡️ Divisão ➡️ Execução.

  1. Entendimento: Como mostrado acima, conheça bem o problema que deseja resolver antes de qualquer ação.
  2. Planejamento: Alinhe sua programação de maneira organizada, pense no problema que deseja resolver e veja como ele será resolvido, assim como qual linguagem utilizar, framework, padrão, otimização… enfim, tenha controle da situação. Não saia digitando aleatoriamente, procurando uma solução e colando vários códigos de fóruns até que funcione.
  3. Divisão: Divida o problema em pequenas partes e resolva uma a uma de maneira distinta. Um problema grande é muito assustador e “trava” o cérebro. Então, pense nas pequenas frações e resolva em partes até que tenha a solução completa.
  4. Execução: Com todos os pontos alinhados, parta para a execução e mostre como resolver um problema com maestria.

❗Lembre-se que esses passos podem ser repetidos diversas vezes.

Conhecimento constante

Conhecimento constante - Habilidade para ser uma pessoa programadora excelente

O mundo tecnológico evolui rapidamente, e ninguém consegue estar sempre atualizado sobre as últimas novidades do mercado. Mas, o interessante é que você, como pessoa programadora, tenha a habilidade de se adaptar quando necessário.

Foque em entender os conceitos básicos da ciência da computação e, independente da linguagem de programação que escolher, você ainda poderá partir de um mesmo princípio. Teoricamente, todas as linguagens derivam de um mesmo local e entender esses conceitos “core” lhe garantem uma vantagem.

O conhecimento base é essencial. Já os conceitos principais sempre são os mesmos, o que muda é a nova forma de resolver um problema. Pois sempre terá alguém com uma nova teoria, framework, linguagem e diversos recursos interessantes — vai de sua experiência e entendimeto saber quais são úteis para seus projetos.

O que engloba, portanto, os conceitos básicos?

Envolve aprender: variáveis, tipos de dados, funções, estruturas de repetição —  como e quando usar cada um deles, estruturas de decisão, escopos locais e globais, entre outros assuntos.

Não se preocupe caso erre ou faça alguma escolha equivocada. Aprenda com este erro e continue estudando. Afinal, esta área é uma ciência, e isso quer dizer que tudo é experimentado, testado e mudado constantemente. O segredo é não deixar seu conhecimento estagnado. Mantenha-se atualizado(a).

Se você se deparar com um novo conceito, pratique um pouco e tente entender quais problemas ele resolve. Caso veja que é algo interessante e essencial, aplique no seu dia a dia. Entendendo diversos conceitos, você conseguirá definir quando utilizar cada um e como resolver um mesmo problema de diversas maneiras. Isso garante um leque muito maior de caminhos que podem ser tomados — e o melhor, você consegue explicar os porquês de suas ações.

Sua eficiência na produção de código é resumida por dois fatores: entendimento e prática. Primeiro, você precisa entender o que deve estudar. Depois, saiba os conceitos base do que está estudando e, então, comece a praticar.

Lembre-se: a melhor maneira de aprender programação é programando. Pratique!

💡Dica de alguns sites para praticar: Code WarsHacker RankCoder ByteCode Signal.

🧑‍💻 Curso Gratuito de Harvard (em inglês, com certificado) que ensina os princípios da Ciência da Computação: acessar página do curso.

Saber filtrar

Saber filtrar

Na área de desenvolvimento existe uma gama imensa de materiais gratuitos e pagos para que você possa estudar sem limites — inclusive, a faculdade de Ciência da Computação do MIT em casa (ele fez isso)! Em um primeiro momento, este conteúdo quase infinito pode parecer algo muito bom, afinal, você tem a resposta para quase tudo na palma de sua mão. Porém, ao iniciar seus estudos, é comum ficar “perdido” com tantos conceitos divergentes, várias soluções para um mesmo problema e outros diversos impedimentos pelo excesso de informação.

Por isso, eu recomendo que você escolha uma fonte única, porém não fixa, de absorção de conteúdo. Encontre um(a) professor(a), blog, livro, compilado, ou qualquer outra forma de estudo que lhe agrade, e foque nela até que tenha extraído o máximo de informação útil. Então, inicie novamente a busca por novos conhecimentos.

Além disso, é sempre importante se perguntar sobre os conceitos que são explicados. Entenda os “porques?” e “como?” dos conteúdos que você absorve. Isso lhe ajudará no aprendizado de novos conceitos e, também, construirá uma base sólida para suas abordagens futuras.

Conclusão

Por fim, esses são pontos que podem ajudar seu desenvolvimento na programação. Mas, o mais importante é manter a constância em seus estudos e evolução. Mantenha uma rotina com consistência e vai conseguir se tornar uma pessoa desenvolvedora de sucesso!

Até mais! 👨‍💻

Nós usamos cookies para melhorar sua experiência no site. Ao aceitar, você concorda com nossa Política de Privacidade

Assine nossa newsletter

Toda semana uma News com oportunidades de trabalho, conteúdos selecionados, eventos importantes e novidades sobre o Mundo da Tecnologia.

Pronto, em breve você vai receber novidades 👍