Nos artigos anteriores abordamos questões relacionadas à inteligência artificial (IA), em especial, as generativas e os impactos das mesmas em diferentes contextos. Uma questão frequentemente colocada como relevante pelos seguidores das redes sociais do Porto Digital é a questão da transição de carreira e as oportunidades na área de tecnologia. Nesse artigo, traremos algumas sugestões para as pessoas interessadas em capacitação para estabelecer um planejamento de transição de carreira para a área de dados e de IA aplicada.
Na semana passada, a Head Brasil do LinkedIn Talent Solutions, Ana Claudia Plihal, afirmou que há 1,2 milhões de vagas de tecnologia no Brasil abertas na plataforma e que a maior parte das contratações está relacionada à busca de competências, em detrimento aos títulos acadêmicos, ou seja, é importante que as pessoas interessadas em conseguir uma nova ocupação demonstrem competências nas áreas de conhecimento das vagas desejadas.
Aproveitando o calor do momento, há um grande interesse de pessoas em realizar uma transição para trabalhar na área de dados e de IA. Essa mudança pode ser, em geral, um pouco mais complexa do que uma para a área de programação e desenvolvimento de sistemas, por exigir conceitos mais aprofundados de matemática e estatística, para compreender adequadamente modelos e resultados por eles gerados.
Há vários caminhos para uma transição de carreira para a área de dados e IA mas, no contexto desse artigo, vamos focar numa persona que tem conhecimentos de computação e de programação. Além disso, iremos recomendar caminhos para ajudar no planejamento voltado ao desenvolvimento de competências para quem quiser conhecer mais, usando recursos disponíveis na internet – mesmo que você ainda não tenha necessariamente conhecimentos em programação. É importante ressaltar que há uma série de cursos de aperfeiçoamento, graduação e pós-graduação que também podem ser interessantes, mas não estarão no escopo deste artigo, ok? Vamos nessa?
A área de dados e IA é bastante ampla e pode envolver vários cargos e funções diferentes. Cada papel tem um conjunto específico de habilidades, mas todos têm algumas coisas em comum: a necessidade de compreender os dados, como estes podem ser usados para gerar valor para o negócio, a capacidade de comunicar informações complexas de uma maneira que os outros possam entender, um forte pensamento analítico e voltado para a resolução de problemas. Além disso, estar atualizado com as últimas tendências e desenvolvimentos na área de dados e IA é essencial para qualquer um desses papéis.
Aqui estão alguns dos mais comuns:
Cientista de dados: Este é um dos principais papéis em uma equipe de dados, sendo responsável pela aplicação de técnicas estatísticas para extrair insights úteis a partir de dados e informações. Frequentemente, a modelagem matemática e a utilização de algoritmos de aprendizado de máquina para tarefas de reconhecimento e classificação de padrões, suporte à decisão, predição de estados e prescrição de ações. Como cientista de dados, você deveria estudar estatística, aprendizado de máquina, otimização e linguagens de programação como Python ou R. Há também pacotes como o Pandas, Scikit-learn, Keras, Pytorch e TensorFlow.
Pessoa engenheira de dados: Esse papel é focado na arquitetura, design e manutenção de sistemas de dados. São as pessoas que projetam e constroem pipelines de dados para garantir que a informação seja coletada, armazenada e processada de forma eficiente e segura. Conhecimento em banco de dados SQL e NoSQL, ETL (Extração, Transformação e Carga), Big Data (como Hadoop ou Spark) e Cloud Computing (como AWS, Google Cloud ou Azure) é essencial para as principais vagas, assim como nas principais ferramentas para a construção de pipelines como Apache Airflow e Luigi.
Analista de dados: Os analistas de dados são responsáveis por interpretar dados e transformá-los em informações que podem oferecer maneiras de melhorar um negócio. Eles usam técnicas estatísticas e de visualização para apresentar os dados de forma compreensível. Eles devem se concentrar em aprender SQL, Excel, ferramentas de visualização de dados como Tableau ou PowerBI, análises descritivas e diagnósticas.
Especialista em aprendizado de máquina: Este papel é focado em criar e implementar modelos de aprendizado de máquina e algoritmos de IA para resolver problemas complexos. A aprendizagem profunda (Deep Learning) e redes neurais também são frequentemente utilizadas neste papel. Recomendaria um estudo aprofundado de Python, bibliotecas de aprendizado de máquina como Scikit-Learn, Tensorflow ou PyTorch, além de uma sólida compreensão dos fundamentos do aprendizado de máquina e da teoria das redes neurais.
Operações de ML (MLOps): São focados na produção e no fornecimento de modelos de ML. Isso inclui a criação de pipelines de ML, ferramentas de desenvolvimento de ML e plataformas de ML. É uma versão de DevOps no contexto dos modelos e sistemas de aprendizagem de máquina. Essas pessoas devem ter um conhecimento sólido em ciência de dados, engenharia de software, programação distribuída, sistemas de integração e entregas contínuas, Docker, Kubernetes, plataformas em nuvem, Linux e devem ser proficientes em pelo menos uma linguagem de programação como Python ou Java.
Tendo em vista os principais papéis de uma equipe de dados, como podemos aprender e desenvolver competências para a realização da transição de carreira para trabalhar com dados? Preparamos um conjunto de conteúdos gratuitos e disponíveis em plataformas da internet que podem fornecer roteiros e materiais para estudo e treinamento.
Há bastante conteúdo em inglês e uma parte mais restrita em português. No entanto, há ferramentas de IA que podem auxiliar na tradução e na transcrição dos materiais. Acreditamos que, cada vez mais, teremos soluções que ajudarão na redução das barreiras de inclusão de pessoas não-proficientes na língua inglesa.
Roteiros para transição de carreira – o que aprender?
Na perspectiva de capacitação para pessoas que já têm algum contato com o mundo da programação, há dois projetos no GitHub “associados” que podem ser um bom ponto de partida para orientar as trilhas de formação: o Developers Roadmaps e o TechGuide.sh.
O primeiro projeto é internacional e apresenta um conjunto de trilhas voltadas para habilidades técnicas e outro para perfis de habilidades. O roadmap.sh é o sétimo repositório com mais estrelas do GitHub, isto é, o sétimo projeto mais popular do mundo! Na verdade, podemos afirmar que é o sexto mais popular, tendo em vista que o terceiro projeto com mais estrelas, o 996.ICU, é um protesto de programadores chineses contra as jornadas de trabalho – das 09 da manhã às 09 da noite por seis dias da semana – a jornada de trabalho comum entre programadores chineses.
Por exemplo, segue um trecho da trilha de Python na figura abaixo, onde temos recomendações de jornadas de aprendizagem divididas em retângulos amarelos e laranjas, onde ao clicar temos acesso a um conjunto de conteúdos e links para materiais externos.
O TechGuide.sh é um projeto nacional, captaneado pela Alura, que traz uma proposta similar a do portal anterior, mas com a perspectiva de uma carreira em “T”, a qual transcrevemos as palavras dos criadores:
“(…) É um profissional que, além da sua especialidade (parte profunda do T), também tem um certo conhecimento em outras áreas (laterais do T) que podem facilitar seu próprio trabalho ou o trabalho em equipe. No site do Dev em T da Alura há bastante a respeito, além de artigos e podcasts: https://alura.com.br/dev-em-t “
Ou seja, a pessoa desenvolvedora em “T” apresenta um conjunto de habilidades transversais, representando a visão sistêmica e outras habilidades importantes, juntamente com um conjunto de habilidades mais profundas e técnicas, da área de especialidade. Neste link temos uma descrição dos diferentes níveis de profundidade para a carreira de Data Science: Ciência de Dados – Fundamentos, Feature Engineering, Extração e Tratamento de Dados, Python para Ciência de Dados, Jupyter & Colab notebooks, R para Ciência de Dados, Estatística e Matemática – Fundamentos e Visualização de Dados.
Desenvolvendo habilidades na prática
Para encerrar esse texto, deixaremos duas dicas interessantes de boas referências para a prática e o desenvolvimento de competências usando as plataformas do GitHub e do Kaggle. Na figura a seguir, vemos os dez repositórios mais estrelados do GitHub, dos quais apenas o repositório 996.ICU não traz material para estudo. O repositório React traz o código-fonte do framework de mesmo nome e alguns exemplos de utilização dele. Ou seja, na prática, nove dos dez principais repositórios apresentam material de estudo e desenvolvimento de habilidades.O GitHub, além disso, tem uma seção voltada para treinamentos denominada GitHub Skills, bem organizada e com cursos auto instrucionais preparados para uso na própria plataforma, incluindo treinamentos em linguagens de programação como Python.
Na lista dos dez repositórios mais estrelados [em 21 de junho de 2023] mostrados na figura acima, o campeão é o projeto FreeCodeCamp que possui dez trilhas de certificação, sendo uma delas voltada para visualização de dados, uma para APIs e microsserviços, uma para análise de dados com Python e outra de aprendizagem de máquina usando Python. É um ótimo guia para quem quer buscar referências e conteúdo para iniciar esse processo de capacitação.
Outros repositórios interessantes são: Free Programming Books, onde estão disponíveis livros gratuitos sobre programação, Coding Interview University, onde há uma série de conteúdos voltados para quem vai fazer entrevistas técnicas e para sessões de live coding, Public APIs, um conjunto de APIs públicas que podem ser úteis para a construção de aplicações de dados, e os repositórios System Design Primer e Build Your Own X, dois repositórios descrevendo como construir módulos de aplicações frequentemente utilizadas em sistemas, o que pode ajudar bastante na compreensão de como funcionam e como construir aplicações robustas, conteúdos que podem ser demandados em entrevistas técnicas para posições mais seniores e de liderança técnica.
Por último mas não menos importante, há um ambiente muito rico para aprendizado e desenvolvimento na área de dados que é o Kaggle, a maior comunidade de ciência de dados e aprendizagem de máquina do mundo, onde há mais de 50 mil conjuntos de dados disponíveis e mais de 400 mil notebooks públicos contendo código disponível para consulta abordando as mais diversas aplicações no contexto de inteligência artificial e dados.
Além disso, há um conjunto de trilhas de aprendizagem customizadas com vídeos e materiais disponíveis, por pessoas, entidades e empresas. Adicionalmente, há desafios para a comunidade que podem inclusive gerar premiações financeiras e conexões de empregabilidade, haja vista a visibilidade que pode ser dada aos perfis que se destacam nessas competições. Vale a pena demais conferir!
Bem, essa foi uma pequena amostra de como você pode conhecer mais e planejar uma transição de carreira para a área de dados, desde cursos mais básicos de programação a ambientes de desenvolvimento com bases de dados e competições propostas por empresas com desafios reais. Há uma série de possibilidades e caminhos, inclusive através dos cursos formais disponíveis nas faculdades, universidades e edtechs. Desejamos que esse artigo ajude a comunidade a ter um olhar mais amplo e novas oportunidades sejam criadas a partir desse processo de busca. Se você tiver dúvidas, sugestões ou experiências a compartilhar conosco, vá em nossas redes sociais e deixe o seu comentário!
Fernando Sales é professor do Departamento de Engenharia Biomédica da UFPE e Pesquisador do Porto Digital
Comments are closed, but trackbacks and pingbacks are open.