Habilidades comportamentais que todo programador ou cientista de dados deveria dominar

Rogério Marques

02 setembro 2019 - 09:00 | Atualizado em 29 março 2023 - 17:38

Pessoas com as mãos unidas

Seja você um engenheiro de software, um programador, um cientista de dados ou um gestor técnico, essas habilidades o ajudarão a se destacar.

As pessoas tendem a ter uma imagem estereotipada de um tecnólogo (programador ou cientista de dados): a de alguém com fones de ouvido que fica sentado 12 horas por dia digitando. Sim, essa descrição se aplica a algumas partes de seu dia. Porém, no mais das vezes, o tecnólogo participa de reuniões, socializa com seus colegas e faz apresentações de seu trabalho. Com frequência, habilidades comportamentais (soft skills) diferenciam tecnólogos. Em entrevistas, são elas que chamam a atenção de gestores e clientes. No trabalho, são elas que fortalecerão seu lugar na equipe. E na carreira, são elas que facilitarão o seu sucesso.

À medida que a tecnologia avança, habilidades técnicas (hard skills) são urgentemente requisitadas. Ao mesmo tempo, a maioria dos tecnólogos já é referência em sua área de atuação.

Em uma equipe formada por tecnólogos com diferentes habilidades técnicas, o sucesso da equipe depende diretamente das habilidades comportamentais.

Após muitos anos de experiência em cargos técnicos e gerenciais em diferentes tipos de equipes internas de TI, coordenei equipes exitosas, outras nem tanto. A diferença é normalmente gritante. Em uma equipe exitosa, projetos são finalizados. Em uma equipe fracassada, é difícil ter até mesmo uma reunião exitosa: é praticamente impossível finalizar um projeto sem algum tipo de reestruturação.

Em todos os casos, o fator determinante foi as habilidades comportamentais de cada tecnólogo da equipe.

 Habilidades comportamentais que todo tecnólogo deveria ter

 Comunique-se efetivamente com pessoas de áreas diferentes

 Habilidades de comunicação são fundamentais para qualquer equipe. Para um tecnólogo, no entanto, as habilidades de comunicação são essenciais. Um tecnólogo pode trabalhar com profissionais de outras áreas; pode trabalhar especificamente em sua área de especialização; pode trabalhar com clientes, gestores de produto e de outras áreas do negócio. A habilidade de comunicação eficiente é uma habilidade que leva anos para se desenvolver. Comunicação efetiva significa o seguinte:

  • A habilidade de traduzir conceitos técnicos em linguagem popular que pode ser entendida por pessoas sem capacidades técnicas.
  • A habilidade de entender o negócio bem o suficiente para falar de tecnologia em termos do negócio a que ela está servindo.
  • A habilidade de comunicar-se claramente no idioma falado na empresa.

Conduza as relações laborais com empatia e inteligência emocional

Como tecnólogo, é fácil se distrair com as vitórias. Em qualquer área de atuação fortemente intelectual, existe um “pico” associado com a conquista de objetivos. Às vezes, ter sucesso no que você ama fazer pode também ofuscar seu julgamento, fazendo-o perder de vista o que é importante. Todo membro da equipe é importante. Só porque superamos um problema técnico difícil, ainda temos de finalizar o produto e comercializá-lo no mercado. Esses aspectos do negócio são tão difíceis, senão mais difíceis, do que o próprio desenvolvimento do produto.

Respeitar todo aspecto do ciclo de desenvolvimento do negócio, bem como todos os envolvidos na “vitória” é um fator intrínseco ao sucesso do tecnólogo na empresa. Existem altos e baixos em qualquer projeto. A habilidade de manter o foco durante esses momentos é fundamental.

Empatia e inteligência emocional é a habilidade de ver o ponto de vista do outro. Qualquer desafio intelectual requer do tecnólogo a determinação obsessiva pela aquisição do conhecimento requerido para a resolução de problemas complexos. A habilidade de migrar de mente focada para mente aberta é difícil para alguns: ela deve ser cultivada. Lidar com pessoas é diferente do que lidar com códigos e sistemas. Essa habilidade pode ser praticada em diferentes tipos de relacionamentos interpessoais com família, amigos e colegas de trabalho.

 Entenda o negócio e seus objetivos

 Para um tecnólogo, exceto se trabalhar para uma empresa de software onde o seu produto é o negócio, há sempre a necessidade de entender o negócio atendido pela tecnologia. Existem diversos fatores do negócio que podem afetar o ciclo de desenvolvimento do produto. Por exemplo, uma equipe de software que está projetando software para clientes internos precisa avaliar as necessidades do próprio negócio para estabelecer os requisitos do projeto. O orçamento que o negócio está disposto a dedicar ao projeto pode mudar seus prazos de entrega. Teste e lançamento podem depender das prioridades do negócio. Nesse caso, o tecnólogo precisa ter uma compreensão sólida do negócio poder estabelecer os requisitos do projeto. Também significa que os engenheiros terão de interagir regularmente com membros da equipe de negócios conforme o projeto evoluiu do estabelecimento de requisitos para a fase de testes.

 Para um cientista de dados ou um gestor de tecnologia, entender o negócio é ainda mais crítico. Esses são cargos em tecnologia, onde o tecnólogo faz parceria com o negócio para resolver os problemas do negócio. Nesses cargos, é um dever ser capaz de falar a linguagem do negócio. Nas reuniões, eles precisam agir como consultores que apresentam soluções aos problemas. Não é o bastante apenas entenderem o negócio: às vezes, precisam entendê-lo melhor do que os próprios diretores da empresa. Eles precisam conhecer as melhores práticas de sua indústria para proporem soluções adequadas.

 Apresente as suas ideias

 Programação e narrativa andam de mãos dadas. Não existe linha de código sem um comentário explicando para que ela serve. Se projetos forem geridos como deveriam, todos os detalhes devem estar esmiuçados desde o início. Um programador-sênior deveria ser capaz de ler o documento e explicar a história por trás desse software. A função do cientista de dados é analisar dados e resolver problemas do negócio, isto é, contar a história do negócio através dos dados. Da mesma forma, é comum que um gestor técnico tenha de mostrar a importância da equipe técnica para os diretores da empresa. Em todo cargo tecnológico, a arte da narrativa permite ao tecnólogo traduzir detalhes técnicos em linguagem acessível.

 Administre tempo e produtividade

 Pode ser difícil administrar o tempo em projetos criativos. Administrar o tempo sem prejudicar a criatividade é uma questão de equilíbrio. Equilibrar concentração, fluxo e criatividade enquanto se mantém prazos não é uma tarefa fácil. Produtividade implica resultados. Com frequência, pessoas criativas, tais como programadores ou cientistas de dados, acabam presos na busca da perfeição. Essa necessidade de perfeição nas tarefas pode ser uma inimiga da produtividade.

 Um tecnólogo com rituais diários normalmente administra tempo e produtividade melhor do que outro que não têm. Quando há apenas duas horas no dia para programar parte de um sistema, ele precisa programar o código mais eficiente nesse período. Ter muitos tecnólogos supervisionando o código uns dos outros também ajuda a aumentar a eficiência. E períodos curtos de programação evita a armadilha do perfeccionismo. Da mesma forma para um cientista de dados ou gestor de tecnologia, um quantidade saudável de pressão no projeto fomenta a eficiência.

 Adapte-se e seja criativo

Hoje, algumas das habilidades menos valorizadas são adaptação e criatividade. Confesso que só entendi seu valor depois de alguns anos como programador. No mundo atual, a inovação tecnológica ocorre tão rápido que ser capaz de se adaptar é um dever. Além disso, o negócio muda diariamente. Em vez de trabalhar num projeto por anos, hoje a duração de um projeto dificilmente passa de alguns meses. Pode faltar orçamento, também. Como tecnólogos, lidar com a incerteza significa adotar o lema “fazemos o melhor que podemos frente às circunstâncias”. Nem sempre se trata de fazer a coisa “certa”, mas de fazer o “melhor” de acordo com as circunstâncias.

Na incerteza, há sempre um grau de criatividade exigido pela situação. Como programador, cientista de dados ou gestor de tecnologia, sabemos a forma “certa” de fazer as coisas. Como ser criativos o bastante para fazermos o “melhor” que podemos em situações não ideais? Ser capaz de equilibrar integridade técnica e, ao mesmo tempo, de entregar os objetivos do negócio exige soluções criativas. São nessas situações que se diferenciam tecnólogos bons de tecnólogos ótimos. 

Tenha motivação intrínseca e curiosidade

Não conheço bons tecnólogos que não sejam intrinsecamente motivados. Ser um tecnólogo de sucesso requer muita dedicação e anos de estudo, e é muito fácil para ele se gostar do que faz. Conheci muitos que abandonaram suas carreiras em tecnologia por falta de motivação. Quando o mesmo emprego por vários anos, é fácil pensar que não há outras vagas no mercado. Sem motivação intrínseca e curiosidade para aprender constantemente é impossível ter uma carreira de sucesso.

Como tecnólogos, é frequente deparar com problemas que parecem impossíveis de resolver devido a restrições do próprio negócio. Tempo, orçamento, dados e recursos impactam qualquer projeto. Com frequência, temos de chegar ao limite de nossa capacidade intelectual na aplicação das melhores inovações tecnológicas em nossos projetos. Sem uma dose saudável de motivação e curiosidade intrínseca, é difícil superar as dúvidas que podem surgir. A curiosidade nos põe no caminho da solução de problemas complexos, porém é a motivação intrínseca que nos faz trabalhar horas e horas para encontrar uma solução.

 Persevere e resolva problemas

 No final das contas, a principal função de qualquer tecnólogo é usar a tecnologia para resolver os problemas do negócio. Mesmo programadores de jogos infantis estão resolvendo o problema de “entretenimento” dos pais da criança. Ademais, cada problema de programação, ciência de dados ou gestão deve ser resolvido por nós para seguirmos com o projeto. Cada fase do projeto é um exercício de perseverança: uma fase futura não pode ser concluída se a fase atual ainda estiver em andamento. Mesmo se um tecnólogo postergar a busca de solução de um problema, eventualmente terá de fazê-lo. Como tecnólogo, encarar desafios e perseverar apesar das circunstâncias é a chave do sucesso.

 Não importa se você é um tecnólogo novato ou experiente, o importante é que entenda como essas habilidades comportamentais podem ajudá-lo em sua carreira. Com a mentalidade correta, podem ser aprendidas e praticadas diariamente. A tecnologia atual exige um ambiente de trabalho dinâmico, formado por diversos tipos de profissionais. Teremos sucesso quando usarmos nossas habilidades comportamentais em conjunto com nossas habilidades técnicas.

 

Este artigo foi traduzido e adaptado do original “Soft Skills Every Programmer or Data Scientist Should Master“, publicado por Jun Wu no Better Programming.

Recomendados para você

Holograma com um robo, códigos fonte e um cérebro
Redes Neurais Artificiais – uma breve introdução ...
Pessoas em jardim utilizando computadores
10 razones del por qué usted debería estudiar computación, aunque no trabaje en ...
Pessoa digitando em comptuador
Usar framework Adobe PhoneGap ou desenvolver app de forma nativa? ...