Soft Skills Todo programador ou cientista de dados deve dominar

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

Jun Wu Seg. 17 de jul · 9 min ler @youxventures unsplash.com

As pessoas tendem a ter uma imagem estereotipada de um tecnólogo (programador ou cientista de dados): alguém que se senta com seus fones de ouvido, digitando em um computador por 12 horas por dia. Essa imagem pode ser verdade para algumas partes do dia de um tecnólogo. No entanto, com mais frequência, o tecnólogo participa de reuniões, socializa-se com seus pares e apresenta seu trabalho para uma audiência. Na maioria das vezes, as habilidades sociais diferenciam os tecnólogos. Nas entrevistas, são as habilidades sociais que vão atrair a atenção dos gerentes e clientes que estão conduzindo a entrevista. No trabalho, as habilidades leves consolidarão o lugar do tecnólogo em uma equipe. São as habilidades leves que permitirão ao tecnólogo promover sua carreira.

À medida que a tecnologia avança, as habilidades técnicas são frequentemente adquiridas na velocidade da luz. Ao mesmo tempo, a maioria dos tecnólogos é especializada em sua área de especialização.

Em uma equipe com tecnólogos que possuem uma variedade de habilidades técnicas, o sucesso da equipe geralmente depende das habilidades de cada técnico.

Depois de meus anos ocupados em várias funções técnicas e gerenciais em diferentes tipos de equipes internas de TI, trabalhei em equipes bem-sucedidas e em equipes malsucedidas. A diferença é muitas vezes noite e dia. Em uma equipe bem-sucedida, os projetos são realmente concluídos. Em uma equipe malsucedida, é difícil passar por uma reunião. Muitas vezes é impossível passar por um projeto sem algum tipo de reestruturação da equipe.

Cada vez, o fator determinante sempre foi a habilidade de todos os técnicos da equipe.

Habilidades macias que todo tecnólogo deveria ter

@matthewhenry unsplash.com

Comunicação eficaz com pessoas de diferentes origens

Habilidades de comunicação são uma obrigação em qualquer equipe. No entanto, para um tecnólogo, as habilidades de comunicação são essenciais. Um tecnólogo pode trabalhar com tecnólogos de diferentes origens. As habilidades de um tecnólogo podem ser extremamente especializadas em sua especialidade técnica. Eles também podem trabalhar com clientes, gerentes de produto e outros gerentes de diferentes áreas do negócio. A capacidade de comunicar eficazmente com todos é uma habilidade que leva anos para ser desenvolvida. Comunicação eficaz significa o seguinte:

  • A capacidade de traduzir conceitos técnicos em linguagem cotidiana que pode ser entendida por pessoas sem nenhum conhecimento técnico.
  • A capacidade de entender o negócio suficientemente bem para falar sobre tecnologia em termos do negócio que a tecnologia está apoiando.
  • A capacidade de comunicar claramente no idioma nativo falado no trabalho.

Navegando nas relações de trabalho com empatia e inteligência emocional

Como tecnólogo, é fácil ser pego nas vitórias. Em qualquer campo de trabalho altamente intelectual, há um “alto” associado ao cumprimento de metas. Às vezes, a sensação de ter sucesso naquilo que você gosta de fazer também pode ofuscar seu julgamento e fazer com que você perca de vista o que é importante. Todo membro da equipe é importante. Só porque superamos um obstáculo técnico difícil, ainda precisamos embalar e comercializar o produto para os clientes. Esses aspectos do negócio são tão difíceis, se não mais difíceis, do que desenvolver o produto real.

Como tecnólogo, respeitar todos os aspectos do ciclo de desenvolvimento de negócios e todos os envolvidos na criação da “vitória” são intrínsecos ao sucesso do tecnólogo na empresa. Há altos e baixos em qualquer projeto. A capacidade de permanecer no solo durante os altos e baixos é fundamental para qualquer técnico.

Empatia subjacente e inteligência emocional é a capacidade de ver o ponto de vista de outra pessoa. Em qualquer atividade altamente intelectual, muitas vezes exige que o tecnólogo seja sincero e obsessivo em adquirir o conhecimento necessário para resolver problemas complexos. A capacidade de mudar dessa mentalidade única para a mente aberta é difícil para alguns tecnólogos. É uma habilidade que deve ser praticada. Lidar com as pessoas requer uma mentalidade aberta diferente de lidar com código e sistemas. Esse tipo de mente aberta pode ser praticado em diferentes tipos de relacionamento interpessoal com a família, amigos e colegas de trabalho.

@jmvillejo unsplash.com

Entendendo o negócio e seus objetivos

A menos que você trabalhe para uma empresa de software onde seu produto é o negócio, para um tecnólogo, sempre há uma necessidade de entender o negócio que a tecnologia atende. Existem diferentes aspectos do negócio que afetarão o ciclo de desenvolvimento do produto. Por exemplo, uma equipe de software que está projetando software para clientes internos pode procurar o negócio pelos requisitos do projeto. O orçamento que a empresa está disposta a dedicar ao projeto pode impulsionar os cronogramas do projeto. O teste e o lançamento podem depender de uma parceria com o negócio. Nesse caso, o tecnólogo deve ter uma sólida compreensão do negócio para poder entender os requisitos do projeto. Isso também significa que os engenheiros podem interagir com os membros da equipe de negócios regularmente, à medida que o projeto avança da coleta de requisitos para o teste.

No caso de um cientista de dados e um gerente de tecnologia, entender o negócio é ainda mais crítico. Estes são papéis na tecnologia, onde o tecnólogo está fazendo parceria com o negócio para resolver problemas de negócios. Nestes papéis, ser capaz de falar a língua do negócio é uma obrigação. Nas reuniões, esses tecnólogos muitas vezes precisam atuar como consultores para apresentar soluções para os problemas. Esses tecnólogos não precisam apenas entender o negócio. Às vezes, eles precisam entender o negócio ainda mais do que os gerentes de negócios. Eles precisam entender as melhores práticas dentro do setor para solucionar esses problemas de negócios.

Contação de histórias e apresentação

Codificação e storytelling andam de mãos dadas. Não pode haver uma linha de código escrita sem um comentário explicando para que serve o bloco de código. Se os projetos são gerenciados como deveriam, todas as partes do projeto devem ser apresentadas em um documento de design. Um programador sênior deve ser capaz de percorrer todas as peças e contar a história desse sistema em que todos estão trabalhando. O trabalho do cientista de dados é analisar dados para resolver problemas de negócios. Esse cientista de dados está contando uma história do negócio por meio de dados. Da mesma forma, um gerente técnico geralmente precisa ficar na frente dos gerentes de negócios para explicar o quanto a equipe técnica está ajudando os negócios. Em todas as funções de tecnologia, a narrativa permite que o tecnólogo traduza detalhes técnicos para todos entenderem.

@lukechesser unsplash.com

Gerenciamento de tempo e produtividade

Pode ser difícil administrar o tempo em qualquer atividade criativa. Gerenciar o tempo de uma maneira que não atrapalhe a criatividade é realmente sobre equilíbrio. Equilibrar a concentração, o fluxo e a mania criativa enquanto se mantém dentro do cronograma com os prazos do projeto não é uma tarefa fácil. Produtividade implica resultados. Muitas vezes, pessoas criativas, como um programador ou um cientista de dados, são pegas na perfeição. Esse tipo de necessidade de buscar a perfeição nas tarefas pode se tornar um impedimento para a produtividade.

Um tecnólogo que tem rituais cotidianos frequentemente gerencia o tempo e a produtividade melhor do que os tecnólogos que não têm rituais. Quando há apenas duas horas no dia para codificar uma parte de um sistema, o técnico pode simplesmente escrever o código mais eficiente nesse curto espaço de tempo. Ter vários tecnólogos supervisionando o código uns dos outros por meio de revisões de código também ajuda a reduzir o tempo gasto na codificação. O período de tempo encurtado muitas vezes impede o início do perfeccionismo. Da mesma forma, para um cientista de dados e um gerente, uma boa quantidade de pressão de tempo injetada no projeto significa que o trabalho pode ser conduzido de maneira efetiva.

Adaptabilidade e criatividade

Hoje em dia, uma das habilidades mais subestimadas para um tecnólogo é a adaptabilidade e a criatividade. Eu realmente não achei essa habilidade extremamente útil até alguns anos em minha carreira de programação. No ambiente de trabalho atual, a inovação tecnológica acontece em um ritmo tão acelerado que é possível se adaptar às mais recentes tecnologias. Além disso, os negócios também estão mudando diariamente. Em vez de trabalhar em um projeto por anos, os tecnólogos podem trabalhar em projetos por apenas alguns meses por vez. Os orçamentos podem não ser garantidos para a próxima fase. Como tecnólogos, trabalhar na incerteza significa que devemos adotar o lema de "Fazemos o melhor que podemos para a situação em questão". Nem sempre é possível fazer a coisa "certa". É mais sobre fazer o nosso "melhor" sob a situação dada.

Na incerteza, há sempre um grau de criatividade que a situação exige. Como programador, cientista de dados ou gerente de tecnologia, entendemos a maneira “certa” de fazer as coisas. Como podemos ser tão criativos quanto podemos para fazer o "melhor" que podemos em situações que não são ideais? Para ser capaz de equilibrar a integridade técnica e, ao mesmo tempo, entregar objetivos de negócios, muitas vezes são necessárias soluções criativas incomuns. Como tecnólogos, é nisso que flexionamos nossos músculos criativos. É aqui que vamos dos bons tecnólogos aos grandes tecnólogos.

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 exige muita dedicação e anos de estudo, é muito mais fácil se a pessoa não está apenas interessada no dinheiro. Eu encontrei muitos que pararam suas carreiras de tecnologia no meio do caminho simplesmente devido à falta de motivação. Quando você está no emprego há alguns anos, é fácil sentir que suas habilidades não são suficientes para o novo mercado de trabalho. Sem motivação intrínseca e a curiosidade de aprender constantemente novas habilidades, é impossível para qualquer tecnólogo ter uma carreira duradoura.

Como tecnólogos, em nossos locais de trabalho, estamos freqüentemente encontrando problemas que parecem impossíveis de resolver devido a restrições de negócios. Há tempo, orçamento, dados e restrições de recursos para qualquer projeto. Freqüentemente também estamos forçando nossos limites intelectuais aplicando as mais recentes inovações tecnológicas em nossos projetos. Sem uma dose saudável de motivação intrínseca e curiosidade, é difícil superar as dúvidas que possam surgir. A curiosidade nos inicia no caminho da solução de problemas complexos. Mas, muitas vezes, é a motivação intrínseca obstinada que nos permite continuar pelas horas a fio para encontrar a solução.

@thelankankid unsplash.com

Resolução de problemas e perseverança

No final do dia, o principal trabalho de qualquer tecnólogo é usar a tecnologia para resolver um problema de negócios. Mesmo programadores de jogos que estão programando jogos para crianças estão resolvendo o problema de “entretenimento” do comprador do jogo. Junto com isso, cada problema de programação, ciência de dados ou gerenciamento deve ser resolvido por nós para prosseguir para a próxima etapa do projeto. A inerente lógica, passo a passo, dos programas e projetos exige perseverança. Uma etapa posterior geralmente não pode ser concluída sem primeiro concluir a etapa atual. Mesmo que um tecnólogo não queira lidar com uma questão no momento, muitas vezes, esse tecnólogo precisa continuar procurando uma solução. Como tecnólogo, perseverar nos desafios, apesar das circunstâncias, é a chave para o sucesso.