Engenheiro de Dados: nova oportunidade em TI

Profissões tendem a desaparecer e surgir com outras roupagens em um mundo onde a quantidade de conhecimento cresce exponencialmente. Embora esse fenômeno cause crises em algumas áreas, ele pode ser uma nova oportunidade de turbinar a carreira. Profissionais de TI tem sido privilegiados neste sentido. Por exemplo, um Engenheiro ou Cientista de Computação ou Analista de Sistemas pode se sentir renovado com as novas e urgentes necessidades que o mercado atual exige. Além disso, arrisco a dizer que não necessariamente tendo como profissão original a Computação, mas também profissionais vindos de áreas ligadas diretamente a ela como: estatística, matemática e negócio. Mas e sobre o Engenheiro de Dados?

Infelizmente, até profissionais de TI tem dificuldade de explicar o que faz cada profissional da Computação, em especial, a função do Engenheiro de Computação. Para alguns a explicação é que o Engenheiro de Computação ou trabalha com robótica ou automação de modo geral. É até justificável as dúvidas sobre a atuação na área, até porque o CREA (Conselho Regional de Engenharia e Agronomia) não tem isso claro. Mas os últimos anos têm trazido novidades que tornam mais clara a necessidade deste profissional em áreas como a Internet das Coisas (IoT), Cidades Inteligentes (Smart Cities), Big Data, Data Science, Machine Learning etc. Dentro de todas essas novas oportunidades, há uma imensidão de aplicações que pode resolver problemas importantes e essenciais da nossa sociedade. Soluções que impactarão tanto na política com decisões orientadas a dados (gestão pública participativa) ou até na área da saúde, revelando novos conhecimentos para prevenção e tratamento de diversas doenças. Tudo isso depende de um ativo muito importante: o dado.

A era da informação

O dado é o ativo essencial para uma organização pois é o “novo petróleo” para que os outros ramos profissionais se desenvolvam em plenitude, logo o Big Data merece destaque especial. Big Data são dados gerados em grande escala com alta velocidade e variedade. Estes dados têm sido gerados a partir de diversas fontes como smartphones, sensores, redes sociais e em outros muitos formatos. Portanto, imagine como os dados têm crescido nos últimos anos e, por isso, armazenar e tratar Big Data são grandes desafios dado a grande variedade de fontes e formatos de dados.

Tanto Big Data quanto Ciência de dados são áreas do momento e estão altamente interligadas. A forma como essas áreas estão ligadas é muito importante para entender o porquê do surgimento de um novo profissional: o Engenheiro de Dados. Já tem se tornado bastante conhecido o profissional denominado Cientista de Dados. Este profissional é focado na análise de dados e em gerar “insights” que ajudam o negócio de uma organização, mas que ainda assume outras tarefas que tiram o seu foco principal. Com o amadurecimento da área de Big Data, o mercado entendeu que é essencial deixar que o Cientista de Dados foque apenas no que fazer com os dados.

É importante reforçar que a maioria das empresas armazena dados em diversos formatos seja em bases de dados ou arquivos de texto. E é aí que surge a necessidade de um profissional com perfil diferente do Cientista de Dados. Geralmente, o dado não está preparado para o uso imediato do Cientista de Dados.

O papel do Engenheiro de dados

O mercado de Big Data então começou a demandar profissionais capacitados em criar canais confiáveis para transformação de dados, combinar fontes de dados em diferentes formatos, criar arquitetura de soluções e colaborar com a equipe de Ciência de Dados construindo soluções inteligentes com alto desempenho e escaláveis. Fazer com que os dados sejam transformados em um formato útil para análise de uma equipe de Cientistas de Dados ou de outros analistas é um grande desafio. Para atingir esse objetivo, várias habilidades são essenciais: saber dimensionar a capacidade computacional e de armazenamento de servidores, escolher soluções de Big Data adequadas ao problema tratado, saber quando usar um determinado algoritmo de Machine Learning aproveitando da melhor forma possível as arquiteturas paralelas e distribuídas de computadores atuais. Logo, o Engenheiro de Dados é o profissional que é capaz de potencializar o uso de tecnologias diferentes em hardwares atuais cada vez mais poderosos computacionalmente. Em outras palavras, o Engenheiro de Dados deve ser capaz de criar meios que transformem a massa de dados em formatos analisáveis pelo Cientista de Dados. Esse meio é conhecido na área de Big Data como pipeline. O pipeline é um processo composto pelas operações de ingestão, processamento, armazenamento e acesso de dados.

Além disso, vale destacar que o Engenheiro de Dados tem perfil generalista e é focado no pipeline e em bases de dados em geral. O profissional que deseja ser Engenheiro de Dados deve começar aprendendo uma linguagem de programação como Python, como arquitetar sistemas distribuídos, como o Hadoop e Spark, sobre armazéns de dados, e também criar pipelines confiáveis, como combinar diversas fontes de dados, como colaborar com a equipe de Ciência de Dados. Outro fator importante é a comunicação entre o Engenheiro de Dados e o Cientista de Dados. Este favor é vital para o sucesso da empresa que deseja trabalhar com Big Data, pois um profissional depende que o outro faça seu trabalho de forma eficiente e eficaz. A Engenharia de Dados é uma área promissora que pode ser a especialidade de diversos profissionais de TI que desejam expandir seu leque de conhecimento e habilidades.

Fonte: Texto extraído do Blog da 4Linux (autor: Leonardo Afonso Amorim)

Engenharia e Big Data

Engenharia e Big Data

Segundo o dicionário Aurélio, a palavra Engenharia significa “inventar ou fabricar engenhosamente”. Já uma simples consulta no Google revela que o termo significa “aplicar métodos científicos ou empíricos à utilização dos recursos da natureza em benefício do ser humano”. Sabe-se também que Engenharia é um curso formal em uma faculdade ou universidade em áreas como, por exemplo, Elétrica, Computação, Produção, Civil, Ambiental etc. Porém, a Computação tem as suas peculiaridades. Por ser uma área relativamente nova, não há definições sólidas, ainda, na minha opinião, para separar o que cada campo da Computação faz. Por exemplo, qual a diferença entre Análise de Sistemas e Sistemas de Informações? Qual a diferença entre Engenharia de Computação e Ciência da Computação? Não me canso de ver na Internet perguntas como essas. É claro que não são perguntas tão difíceis de se responder desde de que se recorra às velhas respostas. Um delas é que a Ciência da Computação tem foco na vida acadêmica e Engenharia tem foco em… Mas, o Cientista da Computação não tem um quê de Engenheiro quando sua função é projetar algoritmos mais performáticos? Já conhecemos várias explicações para essas perguntas, mas as divisões de trabalho na Computação continuam uma Torre de Babel.

Outra questão comum é: qual é o órgão responsável pela regulamentação da Engenharia de Computação? O CREA. Quem já tentou ver como a profissão de Engenheiro de Computação se encaixa nas regras do CREA vai saber que elas não são nada claras! Mas, as coisas costumam ter seu lado positivo. E talvez a não regulamentação flexibiliza a oportunidade de trabalho para aquelas pessoas que são de fato “Engenheiras de Soluções” e optaram por adquirir conhecimento de maneira não tradicional, seja por cursos técnicos ou comunidades na Internet. Conheço diversos profissionais em TI que são excelentes desenvolvedores de software, administradores de sistemas e de redes que não possuem graduação em Computação e são referências para mim e para vários outros colegas da área.

Mas, o que o conceito de Engenharia de Computação e suas indefinições no mercado brasileiro tem a ver com o título deste texto? Minha formação é em Engenharia de Computação e, durante toda a minha graduação, testemunhei vários colegas de curso que não sabiam o que fazer após formados. Ou melhor, em qual ou quais especialidades atuar? Na faculdade que me formei, a ênfase do curso foi Automação Industrial. No entanto, Automação Industrial é apenas uma possibilidade do que se pode fazer e, infelizmente, é ainda uma área muito fechada (pelo menos no mercado goiano, onde estou no momento). Outras opções foram ofertadas como ênfase na faculdade: Gestão em Qualidade de Software e Redes de Computadores. Porém, mesmo com essas outras opções, eu não enxergava empolgação em meus colegas, e confesso que também fiquei de certa forma frustrado com o que vi. Então, por que a existência da Engenharia de Computação com ênfase em atividades específicas se há cursos que tratam diretamente estes assuntos? Essa é a conta que não fecha.

Como as profissões tendem a desaparecer e a surgirem com outras roupagens, principalmente em um mundo onde a quantidade de conhecimento cresce vertinosamente, é possível que o profissional que é Bacharel em Engenharia de Computação ou até Elétrica com ênfase em Computação possa se sentir renovado com as novas e urgentes necessidades que o mercado atual exige. Além disso, arrisco a dizer que não necessariamente tendo como profissão original a Computação, mas também profissionais vindos de outras áreas como: biológicas, humanas, negócios etc. Até porque uma coisa que não pode ser esquecida é que o conhecimento de negócio é essencial para a criação de soluções reais. Não é só a tecnologia! É preciso saber aplicar o poder computacional que temos atualmente da maneira correta em outras áreas. Quem é da área de Computação sabe que não é fácil a “interface” de comunicação entre os profissionais de diferentes áreas.

Engenharia de Computação não é só trabalhar com Robótica ou Mecatrônica. Não é só trabalhar com Automação Industrial ou Predial, mas sim criar soluções projetadas com foco em desempenho, acurácia, segurança, isto é, em soluções que são capazes de crescer conforme a demanda do cliente sem muito esforço ou custo exorbitante. Diversas oportunidades têm surgido nos últimos anos em áreas como a Internet das Coisas (IoT), o fenômeno das Cidades Inteligentes (Smart Cities), Big Data, Data Sciente, Machine Learning etc. Dentro de todas essas novas oportunidades, há uma imensidão de aplicações que podem resolver problemas importantes e até essenciais da nossa sociedade. Soluções estas que impactarão tanto na política com decisões orientadas à dados (gestão pública participativa) ou até na área da saúde, revelando novos conhecimentos para prevenção e tratamento de diversas doenças. Tudo isso depende de um ativo muito importante: os dados.

O Big Data merece destaque especial, pois é o combustível para que os outros ramos profissionais se desenvolvam em plenitude. Big Data são dados gerados em grande escala com alta velocidade e variedade. Estes dados têm sido gerados a partir de diversas fontes como smartphones, sensores, redes sociais etc. Portanto, imagine como os dados têm crescido nos últimos anos e, por isso, armazenar Big Data é um grande desafio. Tanto Big Data quanto Ciência de dados (Data Science) são assuntos do momento, e o mercado necessita de profissionais capacitados que sejam competentes em criar canais confiáveis para transformação de dados, combinar fontes de dados, criar arquitetura de soluções e colaborar com a equipe de Data Science construindo soluções inteligentes com alto desempenho e escaláveis.

Fazer com que os dados sejam transformados em um formato útil eficientemente para análise de uma equipe de Cientistas de Dados ou de outros analistas é um grande desafio. Para atingir esse objetivo, várias habilidades são essenciais: saber dimensionar a capacidade computacional e de armazenamento de servidores, escolher soluções de Big Data adequadas ao problema tratado, adaptar ou criar algoritmos e implementações para acelerar aplicações de Machine Learning, aproveitando da melhor forma possível as arquiteturas paralelas e distribuídas de computadores atuais. Fazer tudo isso de forma eficiente e escalável é outro grande desafio. Temos Big Data, algoritmos de Machine Learning e hardwares cada vez melhores. Entretanto, agora necessita-se do profissional que seja capaz de potencializar tudo isso: o Engenheiro de Dados.