As habilidades mais procuradas na profissão de engenheiro de dados

Segundo as estatísticas de 2019 , o engenheiro de dados é atualmente uma profissão cuja demanda está crescendo mais rapidamente do que todas as outras. O engenheiro de dados desempenha um papel crítico na organização - cria e mantém pipelines e bancos de dados que são usados ​​para processar, transformar e armazenar dados. De quais habilidades os representantes dessa profissão precisam antes de tudo? A lista é diferente do que é exigido dos cientistas de dados? Você aprenderá sobre tudo isso no meu artigo.

Analisei as vagas para a posição de engenheiro de dados na forma em que estavam em janeiro de 2020, para entender quais habilidades em tecnologia são mais populares. Depois, comparei os resultados com as estatísticas das vagas na posição de cientista de dados, e algumas diferenças interessantes foram reveladas.

Podemos fazer sem longas apresentações - aqui estão as dez principais tecnologias mais frequentemente mencionadas nos textos de emprego:



Mencionando tecnologia em empregos para engenheiro de dados em 2020

Vamos acertar.

Responsabilidades do engenheiro de dados


Hoje, o trabalho que os engenheiros de dados realizam é ​​de grande importância para as organizações - são essas pessoas responsáveis ​​por armazenar informações e trazê-las de maneira que outros funcionários possam trabalhar com elas. Os engenheiros de dados constroem pipelines para simplificar o recebimento de dados, fluxo ou pacotes, de várias fontes. Em seguida, os pipelines realizam operações de extração, transformação e carregamento (em outras palavras, processos ETL), tornando os dados mais adequados para uso posterior. Depois disso, os dados são transferidos para analistas e cientistas de dados para um processamento mais profundo. Por fim, os dados terminam sua jornada em painéis, relatórios e modelos de aprendizado de máquina.

Eu estava procurando informações que nos permitissem concluir quais tecnologias são mais procuradas no trabalho do engenheiro de dados no momento.

Métodos


Coletei informações de três sites de busca de emprego - SimplyHired , Indeed e Monster, e verifiquei quais palavras-chave surgiram com o engenheiro de dados em textos de emprego para residentes nos EUA. Para esta tarefa, usei duas bibliotecas Python - Requests e Beautiful Soup . Entre as palavras-chave, incluí as que estavam na lista anterior para analisar vagas para o cargo de cientista de dados e as que selecionei manualmente ao ler ofertas de emprego para engenheiros de dados. O LinkedIn não foi incluído na lista de fontes, pois fui banido depois da minha última tentativa de coletar dados.

Para cada palavra-chave, calculei a porcentagem de acessos do número total de textos em cada site separadamente e, em seguida, calculei o valor médio de três fontes.

Resultados


Abaixo estão trinta termos técnicos da engenharia de dados com as pontuações mais altas nos três locais de trabalho.



E aqui estão os mesmos números, mas projetados na forma de uma tabela:



Vamos em ordem.

Visão geral dos resultados

Tanto o SQL quanto o Python aparecem em mais de dois terços das vagas revisadas. São essas duas tecnologias que fazem sentido estudar primeiro. Python é uma linguagem de programação muito popular usada para trabalhar com dados, criar sites e escrever scripts. SQL significa Structured Query Language; ele assume um padrão implementado por um grupo de idiomas e é usado para extrair dados de bancos de dados relacionais. Ele apareceu há muito tempo e se estabeleceu como altamente estável.

Sobre o Spark diz cerca de metade das vagas. O Apache Spark é "um mecanismo combinado de análise de big data com módulos internos para streaming, SQL, aprendizado de máquina e processamento de gráficos". É especialmente popular entre aqueles que trabalham com grandes bancos de dados.

A AWS aparece em aproximadamente 45% das ofertas de emprego. Esta é a plataforma de computação em nuvem da Amazon; Possui a maior participação de mercado entre todas as plataformas em nuvem.
Em seguida, vem o Java e o Hadoop - um pouco mais de 40% para o irmão. Java é uma linguagem amplamente testada em batalha, que na Pesquisa de Desenvolvedores de Estouro de Pilha de 2019 conquistou o décimo lugar entre as linguagens que horrorizam os programadores. Por outro lado, o Python acabou sendo a segunda linguagem mais amada. Java executa a linguagem Java e tudo o que você precisa saber sobre isso pode ser entendido nesta captura de tela da página oficial de janeiro de 2020.



Como uma máquina do tempo
O Apache Hadoop usa o modelo de programação MapReduce com clusters de servidor para big data. Agora esse modelo está sendo cada vez mais descartado.

A seguir, vemos Hive, Scala, Kafka e NoSQL - cada uma dessas tecnologias é mencionada em um quarto das vagas apresentadas. O Apache Hive é um programa de armazenamento de dados que "facilita a leitura, gravação e gerenciamento de grandes conjuntos de dados localizados em armazenamentos distribuídos usando SQL". Scala é uma linguagem de programação usada ativamente ao trabalhar com big data. Em particular, o Spark foi criado no Scala. No ranking já mencionado de idiomas temíveis, Scala está na décima primeira linha. O Apache Kafka é uma plataforma distribuída para o processamento de mensagens de streaming. Muito popular como meio de transmitir dados.

Os bancos de dados NoSQL se contrastam com o SQL. Eles diferem na medida em que não são relacionais, não estruturados e têm escalabilidade horizontal. O NoSQL ganhou popularidade, mas a mania febril dessa abordagem, até as profecias de que ela substituirá o SQL como paradigma de armazenamento dominante, parece ter terminado.

Comparação com termos em vagas de cientistas de dados


Aqui estão os trinta termos tecnológicos mais usados ​​pelos empregadores no campo da ciência de dados. Eu recebi essa lista da mesma maneira que descrevi acima para engenharia de dados.



Mencionando tecnologia em empregos para cientista de dados em 2020

Se falarmos sobre o número total, em comparação com o conjunto revisado anteriormente, houve 28% mais vagas (12 013 contra 9396). Vamos ver quais tecnologias são menos comuns em vagas para cientistas de dados do que para engenheiros de dados.

Mais popular em engenharia de dados

O gráfico abaixo mostra palavras-chave com uma diferença média em valores maiores que 10% ou menores que -10%.



As maiores diferenças na frequência de palavras-chave entre engenheiro de dados e cientista de dados

O aumento mais significativo é encontrado pela AWS: na engenharia de dados, ele aparece 25% mais regularmente do que na ciência de dados (aproximadamente 45% e 20% do número total de vagas, respectivamente). A diferença é palpável!

Aqui estão os mesmos dados em uma apresentação ligeiramente diferente - no gráfico, os resultados para a mesma palavra-chave nas vagas para as posições de engenheiro de dados e cientista de dados estão localizados lado a lado.



As maiores diferenças na frequência de palavras-chave entre engenheiro de dados e cientista de dados

O próximo maior salto que notei no Spark - um engenheiro de dados geralmente precisa trabalhar com big data. Kafka também cresceu 20%, ou seja, quase quatro vezes em comparação com a vaga de cientista de dados. A transferência de dados é uma das principais responsabilidades de um engenheiro de dados. Por fim, o número de referências acabou sendo 15% a mais no campo da engenharia de dados para Java, NoSQL, Redshift, SQL e Hadoop.

Menos popular em engenharia de dados

Agora vamos ver quais tecnologias são menos populares nas ofertas de emprego para engenheiros de dados.
O declínio mais acentuado comparado ao campo da ciência de dados ocorreu em R : lá apareceu em cerca de 56% das vagas aqui - apenas em 17%. Impressionante. R é uma linguagem de programação que é popular entre cientistas e estatísticos, além do vencedor do oitavo lugar no ranking de linguagens aterrorizantes.

O SAS também ocorre nas vagas para a posição de engenheiro de dados significativamente menor - a diferença é de 14%. SAS é uma linguagem proprietária projetada para trabalhar com estatísticas e dados. Um ponto interessante: a julgar pelos resultados de minha pesquisa sobre vagas para cientistas de dados , recentemente ele perdeu muitas posições - mais do que qualquer outra tecnologia.

Exigido em engenharia de dados e ciência de dados

Note-se que oito das dez primeiras posições em ambos os conjuntos são iguais. SQL, Python, Spark, AWS, Java, Hadoop, Hive e Scala estão entre os dez primeiros no setor de engenharia de dados e na ciência de dados. No gráfico abaixo, você pode ver as quinze tecnologias mais populares dos empregadores de engenheiros de dados, e ao lado delas está a taxa de vacância dos cientistas de dados.



Recomendações


Se você deseja se engajar na engenharia de dados, aconselho você a dominar as seguintes tecnologias - listo-as em ordem de prioridade aproximada.

Aprenda SQL. Eu o convido especificamente ao PostgreSQL, porque ele possui código-fonte aberto, é muito popular na comunidade e está em fase de crescimento. Você pode aprender a usar o idioma no livro My Memorable SQL - sua versão piloto está disponível aqui .

Aprenda Python, embora não no nível mais grave. Meu memorável Python é para iniciantes. Você pode comprá-lo na Amazon , uma cópia eletrônica ou física de sua escolha, ou fazer o download em pdf ou epub neste site .

Depois de se familiarizar com o Python, vá para o pandas, a biblioteca Python usada para limpar e processar dados. Se você está focado em trabalhar em uma empresa que exige a capacidade de escrever em Python (e a maioria é), pode ter certeza de que o conhecimento dos pandas será assumido por padrão. Agora estou terminando o guia introdutório para trabalhar com pandas - você pode se inscrever para não perder o momento do lançamento.

Mestre da AWS. Se você deseja se tornar um engenheiro de dados, não pode ficar sem uma plataforma em nuvem no zashnik, e a AWS é a mais popular delas. Os cursos da Linux Academy me ajudaram bastante quando estudei engenharia de dados no Google Cloud , acho que eles também terão bons materiais na AWS.

Se você já dominou toda a lista e deseja crescer aos olhos dos empregadores como engenheiro de dados, sugiro adicionar o Apache Spark para trabalhar com big data. Embora minha pesquisa sobre vagas de ciência de dados tenha mostrado um declínio no interesse, ela ainda pisca para os engenheiros de dados em quase todos os segundos empregos.

No final


Espero que esta revisão das tecnologias mais populares para o engenheiro de dados pareça útil para você. Se você estiver curioso sobre como os analistas funcionam, leia meu outro artigo . Engenharia de sucesso!

Source: https://habr.com/ru/post/pt484120/


All Articles