A diferença entre cientistas e engenheiros(as) de dados
Muitas pessoas não têm uma compreensão clara da diferença entre cientistas e engenheiros ou engenheiras de dados. Entenda algumas das principais competências desses profissionais, juntamente com suas áreas sobrepostas
(Adaptação do artigo originalmente publicado aqui, em inglês) Traduzido por Thabata
Muitas pessoas não têm uma compreensão clara da diferença entre cientistas e engenheiros ou engenheiras de dados.
Neste post, falaremos sobre algumas das principais competências desses profissionais, juntamente com suas áreas sobrepostas, como:
- Cientistas de dados: áreas de matemática e estatística, ciência da computação, Machine Learning, IA/Deep Learning, análises avançadas e narrativa de dados.
- Engenheiros(as) de dados: programação em nível de produção, sistemas distribuídos, transformação de dados, análise de dados e pipelines de dados.
- Áreas sobrepostas: análise de dados e programação.
Vamos mergulhar nessas áreas separadamente para entender melhor os diferenciais das funções.
Acompanhe!
Habilidades de cientistas de dados
As pessoas cientistas de dados geralmente vêm de uma formação em matemática aplicada e/ou estatística associada à ciência da computação.
O Machine Learning é baseado nos fundamentos matemáticos do aprendizado estatístico; por isso, tentar se destacar em ciência de dados sem conhecimento de matemática proporciona uma perspectiva incompleta da área.
Cientistas de dados também precisarão interagir com especialistas no domínio de negócios para cultivar os insights desejados.
Essas pessoas também precisam analisar dados (análise exploratória de dados) para ajudar a empresa a utilizar seus ativos de dados. Também terão experiência para escolher algoritmos de Machine Learning apropriados, treiná-los e para desenvolver métodos para testar sua precisão.
Além disso, os cientistas de dados devem ser bem versados na arte de contar histórias de dados quando os resultados de um projeto de ciência de dados precisam ser transmitidos às partes interessadas do negócio de uma maneira compreensível.
Esse esforço requer a habilidade de comunicar verbal e visualmente resultados e observações complexas de uma forma que as partes interessadas possam entendê-los (e possam agir sobre eles).
Cientistas de dados também terão desenvolvido habilidades de programação por necessidade, a maioria optando pelos ambientes de linguagem R ou Python.
Entretanto, as habilidades de programação de um cientista de dados não estão normalmente no nível que você veria para um engenheiro ou engenheira de dados — nem deveriam ser!
Habilidades de engenheiros e engenheiras de dados
Pessoas engenheiras de dados têm experiência em programação, possivelmente como resultado de um diploma em ciência da computação.
A formação dessas pessoas é geralmente em linguagens como Python, Java ou Scala. Sua ênfase está em sistemas distribuídos e Big Data.
Em comparação com cientistas de dados, suas habilidades de programação são mais avançadas e especificamente adequadas para construir sistemas de produção de alta disponibilidade.
Usando essas habilidades de programação, engenheiros(as) de dados criam pipelines de dados em escala. Isso envolve a integração de várias tecnologias de Big Data.
Os engenheiros de dados têm a tarefa de decidir quais ferramentas são adequadas para o trabalho a ser feito.
Essas pessoas também têm um conhecimento aprofundado das tecnologias e estruturas de dados e de como integrá-los aos pipelines de dados. Além disso, trabalham em estreita colaboração com o pessoal responsável por clusters, DevOps e DataOps.
As engenheiras de dados também implementam algoritmos de Machine Learning escolhidos por cientistas de dados para um ambiente de produção.
Por exemplo, isso pode envolver a implantação de um algoritmo de classificação usado pela cientista de dados em R para uma plataforma de produção mais robusta.
Habilidades sobrepostas
Certamente, existem habilidades sobrepostas em relação à programação, embora as habilidades de programação de um engenheiro de dados geralmente superem as de um cientista de dados.
Por exemplo, ter uma cientista de dados programando um pipeline de dados de produção pode ser um exagero, ao passo que esse tipo de tarefa está diretamente na rotina de uma engenheira de dados.
Aqui, as habilidades são complementares, pois a cientista de dados pode projetar o pipeline de dados e a engenheira de dados irá programá-lo e mantê-lo.
Em geral, não se espera que uma cientista de dados programe pipelines de dados.
Outra área de sobreposição é da própria análise de dados. As habilidades analíticas do cientista de dados geralmente são muito mais evoluídas do que as habilidades analíticas de um engenheiro de dados.
Engenheiros e engenheiras de dados podem ser capazes de fazer algumas análises básicas, mas não seriam capazes de atender às necessidades de análises mais avançadas que um cientista de dados faria.
Desalinhamentos na empresa
Muitas empresas cometem erros ao alinhar os conjuntos de habilidades acima com um cargo.
Em primeiro lugar, não caia na toca do coelho de tentar encontrar uma pessoa, conhecida como unicórnio, que pode fazer o trabalho de cientista e engenheiro de dados.
Claro, pode haver alguns unicórnios por aí, mas eles são muito procurados e recebem um salário muito alto. Além disso, o que acontece se você contratar um unicórnio e ele decidir ir embora?
Outro erro é ter cientistas de dados fazendo o trabalho de um engenheiro de dados.
Criar um pipeline de dados não é fácil e requer conhecimento avançado de estruturas de programação e de produção.
Um cientista de dados pode ser capaz de adquirir essas habilidades, mas esse não é o uso mais eficiente desse recurso.
Cientistas de dados não são engenheiros que constroem sistemas de produção, criam pipelines de dados e expõem resultados de aprendizado de máquina.
Por outro lado, é um erro ter engenheiros de dados fazendo o trabalho de um cientista de dados, embora isso seja muito menos comum.
Alguns engenheiros de dados trabalham para ampliar suas habilidades, melhorando seus conhecimentos de matemática e estatística e, consequentemente, suas habilidades de Machine Learning. Essa carreira às vezes resulta em outra categoria de trabalho, o “engenheiro de Machine Learning”.
Os engenheiros e engenheiras de Machine Learning normalmente vêm de formações em engenharia de dados, mas eles se tornaram proficientes em certos aspectos da ciência de dados e ficam na barreira entre ciência de dados e engenharia de dados.
Um engenheiro de dados que sabe como operacionalizar e otimizar o Machine Learning, pegando o que o cientista de dados cria para a produção.
Como faço para aprimorar minhas habilidades?
No ODSC East 2019, temos áreas de foco inteiras abrangendo várias abordagens em torno dessas áreas. Workshops, palestras e sessões de treinamento são ideias para um ou ambos os tipos de profissionais, veja:
Cientista de dados:
- Programação com dados: Python e Pandas;
- Inferência causal para cientistas de dados;
- Atingindo o Machine Learning em escala da na produção da Salesforce;
- RMarkdown intermediário no Shiny;
- Modelagem no Tidyverse;
- Tensorflow 2.0 e Keras: o que há de novo, o que é compartilhado, o que está diferente;
- Aprendizagem por imitação: aprendizagem por reforço para o mundo real;
- Quando o bootstrap “quebra”;
- Construindo Mecanismos de Recomendação e Modelos de Aprendizado Profundo usando Python, R e SAS;
- Escalando aplicativos de IA com Ray.
Engenheira de dados:
- Programação com dados: Python and Pandas;
- Engineering para Data Science;
- Atingindo o Machine Learning em escala da na produção da Salesforce;
- Ciência de dados reproduzíveis usando o Orbyter;
- Modelagem no Tidyverse;
- Análise preditiva em tempo real com Spark Structured Streaming;
- Aprendizagem por imitação: aprendizagem por reforço para o mundo real;
- Making Data Science: AIG, Amazon, Albertsons;
- Construindo Mecanismos de Recomendação e Modelos de Aprendizado Profundo usando Python, R e SAS;
- Pesquisa visual em Hayneedle.
Conclusão
Em resumo, é importante perceber como cientistas e engenheiros de dados se complementam.
Equipes de ciência de dados talentosas consistem em ambos os conjuntos de habilidades. É um desperdício de bons recursos ter um cientista de dados fazendo o trabalho de um engenheiro de dados e vice-versa.
É altamente improvável que você consiga encontrar um unicórnio — uma pessoa que seja uma engenheira de dados habilidosa e uma cientista de dados especialista.
Portanto, você precisará formar uma equipe, onde cada membro complementa as habilidades do outro e é capaz de trabalhar bem em conjunto.