Neste sábado (12), é dia do programador. A data comemorativa, que já virou feriado profissional na Rússia, marca o 256º dia do ano, em referência à quantidade de valores distintos que podem ser representados com um byte de oito bits.

A profissão é altamente requisitada no mercado. Dados da Brascomm, de 2019, indicam que até 2024 o setor de tecnologia da informação deve apresentar demanda de 420 mil profissionais da área. Para o gerente de desenvolvimento de software da TOTVS, Fábio Rocha, a chegada da tecnologia 5G no Brasil vai acentuar ainda mais a procura por programadores.

Em entrevista ao Olhar Digital, ele falou sobre a dificuldade do mercado de suprir a necessidade de desenvolvedores e revelou quais são as competências que busca em candidatos a vagas em sua equipe. Rocha ainda ressaltou uma das principais carências de profissionais do setor: o domínio de fundamentos da programação. 

OD: Existe muita demanda por profissionais programadores. Muito se fala que há uma falta de mão de obra qualificada para área no Brasil. Qual a sua visão sobre o mercado de desenvolvimento, realmente faltam profissionais qualificados?

Fábio Rocha: Não penso seja necessariamente uma falta de qualificação e profissionais. Tem muita gente no mercado, muita gente boa. Mas a demanda cresce muito rápido. Antes da pandemia, por exemplo, as empresas pensavam estar preparadas para passar por uma situação como essa, mas depois ficou evidente que não estavam. E aí o que aconteceu? Surgiu uma grande demanda por desenvolvedores, cientistas de dados e pessoal de infraestrutura de rede.

Eu penso que a falta de profissionais está mais relacionada com a velocidade da demanda. Em questões técnicas, a falta do conhecimento de fundamentos é uma lacuna para alguns profissionais. A tecnologia não é um setor em que você necessariamente precisa de faculdade, mas muitas vezes os cursos lecionam esses fundamentos.

Por exemplo, um programador front-end pode projetar aplicativos, mas quando ele entra em uma empresa pode haver uma demanda diferente e maior. Muitos profissionais ainda apresentam lacunas de lógica de programação, infraestrutura de rede ou conceitos operacionais.

A programação é um campo multidisciplinar, desde as aplicações até diferentes tipos de linguagens. Para um programador iniciante, o caminho é se especializar em alguma linguagem ou é importante ter um conhecimento mais geral?

É importante que uma pessoa seja, sim, especialista em uma linguagem, mas ela tem que estar aberta a outras ferramentas. O importante é que a tecnologia que uma empresa utiliza não seja um impeditivo para você atuar nela. O JavaScript, por exemplo, tem vários frameworks, todos eles são importantes, cada um tem o seu objetivo. Às vezes, um deles pode ser a melhor solução para você no momento, mas outra empresa pode usar outra framework. Muitas companhias adotam tecnologias específicas.

E por onde começar a programar?

Para começar a aprender, eu iniciaria com linguagens mais simples. Python, por exemplo. Eu também buscaria comunidades, isso é muito importante. Na época em que comecei, lá nos anos 90, elas não existiam. Eu tinha que aprender a linguagem que uma empresa oferecia. Hoje, eu participaria de eventos e comunidades para entender a afinidade que eu teria com cada ferramenta.

Tem pessoas que já sabem o que querem fazer. Eu poderia por, exemplo, decidir ser um desenvolvedor de aplicativo Android, iOS ou os dois. Neste caso, o importante é buscar qual a referência de cada campo no mercado. Eu participaria da comunidade e de eventos para observar o que as pessoas falam e começar a aprender a linguagem.

Quais competências você valoriza em um programador, considerando habilidades técnicas e sociais?

Eu sempre busco pessoas colaborativas. Veja bem, é diferente de ser extrovertida. É aquela pessoa que se coloca à disposição para colaborar quando o time está precisando. Conheço muita gente introvertida com esse perfil. Também valorizo a disposição do profissional de ensinar e compartilhar conhecimento com os outros. Isso é um diferencial, porque ajuda principalmente na tomada de decisões.

Outro ponto é se o profissional se mantém atualizado, como ele acompanha os movimentos que estão acontecendo na sua área. É importante que ele também observe outros campos, mas sempre com objetividade. Não adianta conhecer muitas coisas e não conseguir usar o conhecimento para oferecer soluções.

Em relação a habilidades técnicas, depende do nível de vaga. Até o nível pleno, eu acredito muito em investir na pessoa. Durante entrevistas, faço muitas perguntas sobre a vontade dela de aprender. Já em um nível mais sênior, busco mais respaldo técnico e avalio a disposição do profissional ajudar os menos experientes e a confiança de participar na tomada de decisão técnica.

Você começou na área em 98. Desde então, a tecnologia avançou e hoje evolui cada vez mais rápido. Como os programadores podem acompanhar as mudanças nesse ritmo tão acelerado?

Eu vejo dois lados. A vantagem é que hoje que é muito fácil conseguir informação. É muito fácil aprender. O mundo respira tecnologia. Muitas empresas compartilham como elas desenvolvem seus produtos. A TOTVS, por exemplo, já publicou vários artigos sobre o sistema de inteligência artificial Carol. Outro ponto são as comunidades, como a gente já falou. A dificuldade, no entanto, é como filtrar todo esse conteúdo e absorver o que realmente faz sentido para você.

Falando em avanços tecnológicos, a chegada do 5G vai impactar no mercado para programadores?

Eu acredito que o 5G vai aumentar a demanda por profissionais de tecnologia. E aí, de novo, o que vai ser importante? Fundamento. Muita gente que faz aplicativo não conhece fundamentos de rede, pacote de dados, e cria aplicativos que acabam com o plano de dados de usuários ou que consomem muita bateria do usuário. O 5G vai acelerar a parte de tecnologia de empresas e forçar o desenvolvedor a conhecer cada vez mais sobre estrutura de rede e estrutura de nuvem. Hoje, conhecer sobre computação em nuvem é primordial e o 5G vai impulsionar isso.

O desenvolvedor também pode estar inserido na realidade de muitas áreas. Por exemplo, no campo da biotecnologia, da pesquisa científica até mesmo do jornalismo. O que é importante para um programador que atua com outros campos do conhecimento?

As necessidades das aplicações, hoje, remetem muito ao machine learning e à inteligência artificial. Esses recursos ajudam, por exemplo, na tomada de decisão, antecipação de cenários e respostas mais rápidas. Um programador que desenvolve soluções para um negócio de biotecnologia, por exemplo, teria que aprender um pouco sobre essa área para construir boas soluções. Isso não significa, claro, que ele precisa virar um profissional do ramo.

Geralmente, quando um programador conhece bem área em que está atuando e junta isso com o desenvolvimento e a atualização na tecnologia, ele começa a ter um destaque maior na empresa, porque ele vai estar qualificado para tomadas de decisão.