Engenheiro de dados e cientista de dados: qual a diferença?

As profissões de Data Scientist e Data Engineer são frequentemente confusas. Cada empresa tem suas próprias especificidades de trabalhar com dados, diferentes propósitos de suas análises e uma idéia diferente de quais especialistas devem estar envolvidos em qual parte do trabalho; portanto, cada um tem seus próprios requisitos. 

Entendemos qual é a diferença entre esses especialistas, quais problemas de negócios eles resolvem, quais habilidades eles têm e quanto ganham. O material acabou sendo grande, então o dividimos em duas publicações.

No primeiro artigo, Elena Gerasimova, chefe do Departamento de Ciência de Dados e Análise em Netology, conta qual a diferença entre Data Scientist e Data Engineer e quais ferramentas eles trabalham.

Como os papéis dos engenheiros e cientistas diferem


Um engenheiro de dados é um especialista que, por um lado, desenvolve, testa e mantém a infraestrutura para trabalhar com dados: bancos de dados, armazenamento e sistemas de processamento em massa. Por outro lado, é quem limpa e "penteia" os dados para uso por analistas e cientistas de dados, ou seja, ele cria pipelines de processamento de dados.

O Data Scientist cria e treina modelos preditivos (e não apenas) usando algoritmos de aprendizado de máquina e redes neurais, ajudando as empresas a encontrar padrões ocultos, prever eventos e otimizar os principais processos de negócios.

A principal diferença entre um cientista de dados e um engenheiro de dados é que eles geralmente têm objetivos diferentes. Ambos trabalham para garantir que os dados sejam acessíveis e de alta qualidade. Mas o Data Scientist encontra respostas para suas perguntas e testa hipóteses no ecossistema de dados (por exemplo, com base no Hadoop), e o Data Engineer cria um pipeline para atender a um algoritmo de aprendizado de máquina escrito por um cientista de dados em um cluster Spark no mesmo ecossistema. 

Um engenheiro de dados agrega valor aos negócios trabalhando em equipe. Sua tarefa é atuar como um elo importante entre diferentes participantes: dos desenvolvedores aos consumidores de relatórios de negócios e aumentar a produtividade dos analistas - do marketing e do produto ao BI. 

A Data Scientist, pelo contrário, está ativamente envolvida na estratégia da empresa e extraindo insights, tomando decisões, implementando algoritmos de automação, modelando e gerando valor a partir dos dados.


O trabalho com dados obedece ao princípio GIGO (garbage in - garbage out): se analistas e cientistas de dados lidam com dados despreparados e potencialmente incorretos, os resultados, mesmo com os algoritmos de análise mais sofisticados, estarão incorretos. 

Os engenheiros de dados resolvem esse problema criando tubulações para processamento, limpeza e transformação de dados e permitindo que o cientista de dados trabalhe com dados de alta qualidade. 

Existem muitas ferramentas no mercado para trabalhar com dados que abrangem cada um dos estágios: desde a aparência dos dados até a saída, até o painel do conselho de administração. E é importante que a decisão sobre seu uso seja tomada pelo engenheiro, não porque esteja na moda, mas porque realmente ajudará o restante dos participantes no trabalho. 

Condicionalmente: se a empresa precisar fazer amizade com BI e ETL - baixando dados e atualizando relatórios, aqui está uma base herdada típica com a qual o Engenheiro de Dados terá que lidar (bem, se a equipe tiver um arquiteto além dele).

Responsabilidades do engenheiro de dados

  • Desenvolvimento, construção e manutenção de infraestrutura de dados.
  • Tratamento de erros e criação de pipelines confiáveis ​​de processamento de dados.
  • Trazendo dados não estruturados de várias fontes dinâmicas para a forma necessária para o trabalho dos analistas.
  • .
  • , - .
  • .
  • , , .
  • ( ).

Há outra especialização na trajetória do engenheiro de dados - engenheiro de ML. Em resumo, esses engenheiros são especializados em levar modelos de aprendizado de máquina para implantação e uso industrial. Freqüentemente, um modelo recebido de um cientista de dados faz parte do estudo e pode não funcionar em combate.

Responsabilidades do cientista de dados

  • Extraia recursos de dados para aplicar algoritmos de aprendizado de máquina.
  • Usando várias ferramentas de aprendizado de máquina para prever e classificar padrões nos dados.
  • Melhorando o desempenho e a precisão dos algoritmos de aprendizado de máquina, ajustando e otimizando algoritmos.
  • Formação de hipóteses “fortes” de acordo com a estratégia da empresa, que deve ser verificada.

Data Engineer, Data Scientist , .


Hoje, as expectativas dos profissionais de processamento de dados mudaram. Anteriormente, os engenheiros coletavam grandes consultas SQL, escreviam manualmente o MapReduce e processavam os dados usando ferramentas como Informatica ETL, Pentaho ETL, Talend. 

Em 2020, um especialista não pode prescindir do Python e das ferramentas modernas de computação (por exemplo, Airflow), entendendo os princípios de trabalhar com plataformas em nuvem (usando-as para economizar em hardware e observando os princípios de segurança).

SAP, Oracle, MySQL, Redis são ferramentas tradicionais para um engenheiro de dados em grandes empresas. Eles são bons, mas o custo das licenças é tão alto que aprender a trabalhar com elas faz sentido apenas em projetos industriais. Ao mesmo tempo, existe uma alternativa gratuita na forma de Postgres - é gratuita e é adequada não apenas para treinamento. 


Historicamente, Java e Scala são frequentemente solicitados, embora, à medida que as tecnologias e abordagens evoluam, essas linguagens desapareçam em segundo plano.

No entanto, o hardcore BigData: Hadoop, Spark e o restante do zoológico não é mais um pré-requisito para um engenheiro de dados, mas um tipo de ferramenta para resolver tarefas que o ETL tradicional não pode resolver. 

Na tendência, há serviços para o uso de ferramentas sem o conhecimento da linguagem em que foram gravadas (por exemplo, o Hadoop sem o conhecimento de Java), além de fornecer serviços prontos para o processamento de dados de streaming (reconhecimento de voz ou imagem no vídeo).

As soluções industriais do SAS e do SPSS são populares, com o Tableau, o Rapidminer, o Stata e o Julia, também amplamente utilizados pelos cientistas de dados para tarefas locais.


Analistas e cientistas de dados só tiveram a oportunidade de construir pipelines há alguns anos: por exemplo, já é possível enviar dados para o armazenamento baseado no PostgreSQL com scripts relativamente simples. 

Normalmente, o uso de pipelines e estruturas de dados integradas continua sendo de responsabilidade dos engenheiros de dados. Hoje, porém, mais do que nunca, a tendência é forte para especialistas em formato de T - com amplas competências em áreas relacionadas, porque as ferramentas estão sendo constantemente simplificadas.

Por que o engenheiro de dados e o cientista de dados trabalham juntos


Trabalhando em estreita colaboração com os engenheiros, o Data Scientist pode se concentrar na parte da pesquisa, criando algoritmos de aprendizado de máquina prontos para uso.
E os engenheiros se concentram na escalabilidade, reutilização de dados e garantem que os pipelines de entrada e saída de dados em cada projeto individual sejam consistentes com a arquitetura global.

Essa separação de tarefas garante coerência entre equipes de especialistas que trabalham em diferentes projetos de aprendizado de máquina. 

A colaboração ajuda a criar efetivamente novos produtos. Velocidade e qualidade são alcançadas graças ao equilíbrio entre a criação de um serviço para todos (armazenamento global ou integração de painéis) e a implementação de cada necessidade ou projeto específico (pipeline altamente especializado, conectando fontes externas). 

Trabalhar em estreita colaboração com cientistas e analistas de dados ajuda os engenheiros a desenvolver habilidades analíticas e de pesquisa para escrever um código melhor. A troca de conhecimento entre usuários de data warehouses e data lagos melhora, o que torna os projetos mais flexíveis e fornece resultados mais sustentáveis ​​a longo prazo.

Nas empresas que visam desenvolver uma cultura de trabalho com dados e construir processos de negócios baseados neles, o Data Scientist e o Data Engineer se complementam e criam um sistema completo de análise de dados. 

No próximo artigo, falaremos sobre que tipo de educação os engenheiros de dados e os cientistas de dados devem ter, quais habilidades eles precisam desenvolver e como o mercado funciona.

Dos editores da Netology


Se você observar atentamente a profissão de engenheiro de dados ou cientista de dados, convidamos você a estudar os programas de nossos cursos:


All Articles