EP

Menu
5min e 22s de leitura

Desenvolvedor especialista ou generalista? Qual dos dois você é?

Nesses últimos dias, o X (F pelo Twitter) trouxe mais uma polêmica da área de TI. Um programador que focou seu aprendizado e vida profissional em Flutter, estava reclamando em uma publicação no Reddit de que não encontrava vagas para Flutter e tinha dúvidas sobre o mercado para a linguagem.

Com isso, a comunidade de desenvolvedores lá no X ficou alvoroçada. Alguns levantaram a bandeira de que Flutter “está morto”, enquanto outros disseram ser burrice acreditar que um ecossistema “está morto” porque um único desenvolvedor não tem conseguido vaga.

Foram vários comentários, tanto na comunidade gringa quanto na nacional. Foi um pequeno tempo de entretenimento na Xesfera (antiga Twitteresfera) que me fez pensar em algo mais profundo: que tipo de desenvolvedor eu sou? Especialista ou generalista?

A época do especialista

Por muito tempo me apresentei como Desenvolvedor PHP/JavaScript. Uma pegada bem especialista. Não era porque eu não sabia outras linguagens, mas porque essas duas eram as que eu mais sabia e me sentia confortável em trabalhar.

Nesse mesmo período, que foi do começo da minha carreira (ainda antes de entrar na Universidade) até pouco antes de sair do Brasil, eu trabalhei com diversas outras linguagens:

  • Visual Basic com Access em um Banco para o qual estagiei
  • Object Pascal para mini sistemas de um parente
  • Action Script para sistemas em Adobe Flash de freelas
  • C# e Asp.net para um Centro Universitário

É importante frisar que em quase todos esses lugares também tive de lidar com HTML e CSS, duas outras linguagens necessárias para sistemas voltados para Web. Além disso, também tive de trabalhar com Java e C em diversas disciplinas da universidade (Estrutura de dados I e II, Compiladores I e II, Sistemas Distribuídos).

Como pode ver, mesmo com experiência em diversas outras linguagens, eu continuava me apresentando como Desenvolvedor PHP/JavaScript. E, particularmente, não há nada de errado com isso.

A época do generalista

Quando saí do Brasil, foi o título de Desenvolvedor PHP/JavaScript que me conseguiu minha vaga. Não me arrependo um momento sequer. Contudo, ao chegar aqui, percebi que a capacidade "pau pra toda obra" do desenvolvedor brasileiro era muito bem vista.

Como era colocado, cada vez mais, em projetos para ser uma espécie de elo ou cola entre os especialistas Frontend e Backend, decidi abraçar o título e mudei minha apresentação para Desenvolvedor Fullstack com PHP.

Decidi manter o PHP ali porque era a linguagem que estava mais usando na empresa que trabalhava devido ao sistema que usávamos: Magento. Mas no trabalho do dia-a-dia ou em freelas, usava diversas outras linguagens:

  • Swift para alguns aplicativos mobile para iOS;
  • Bash para automatizar minha vida no computador via linha de comando;
  • Lua para configurar o NeoVim;
  • Python para alguns freelas de backend web
  • Go para trabalhar com devops e alguns freelas de backend web;

Mais uma vez, várias linguagens estavam me trazendo trabalho (ou me mantendo empregado), e ainda assim mantinha o PHP ali do lado do meu título.

Por conta dessa minha mudança de título, várias outras chances em outras empresas apareceram. Até que me candidatei para a que estou trabalhando hoje e acabei entrando como Arquiteto de Sistemas On-line eCommerce.

Com esse novo emprego, decidi mudar mais uma vez meu título e adotei Arquiteto de Sistemas, para logo depois mudar novamente para Arquiteto de eCommerce. Esse último é basicamente como me apresento para as pessoas em ambiente de sociais-profissionais, quando não quero falar onde trabalho. É uma mistura do generalista e do especialista, já que a arquitetura que tenho trabalho é focada em plataformas de eCommerce.

Embora o trabalho de arquiteto de sistemas seja equivalente para qualquer sistema, quando me apresento como Arquiteto de eCommerce, as pessoas saberão que posso até trabalhar com arquitetura de Aprendizado de Máquina, de Sistemas Financeiros, de Redes Sociais, mas serei capaz de prover resultados mais rápido dentro da área do eCommerce.

Afinal, essas titularidades importam?

Sim e não. Elas importam na hora que você está procurando emprego e para caça talentos ou recrutadores acharem você nas diversas redes sociais profissionais. Elas ajudam você a focar numa área de atuação ou mesmo para mudar de área.

Mas, elas também não importam porque são apenas títulos. Elas descrevem, de forma curta, um pouco do que você é como profissional, um pouco das suas habilidades, e é isso. Elas não te descrevem totalmente.

Ninguém vai saber se você é um desenvolvedor que precisa de tudo detalhado antes de começar a trabalhar numa funcionalidade ou se tem maleabilidade suficiente para lidar com as mudanças de requisitos só em ver seu título. Não vão saber se você é um purista do SOLID, DRY, KISS, Design Patterns ou se sabe que, às vezes, é melhor pensar duas vezes antes de criar várias abstrações para um protótipo.

Minha recomendação

Como mostrei acima, títulos são apenas isso, títulos. Mas se você realmente quer usar algo, busque um que descreva bem seu momento enquanto desenvolvedor. Comece com Desenvolvedor PHP, ou até mesmo Programador PHP, para mostrar que está no começo de carreira.

Depois mude para algo abrangente, como Desenvolvedor Backend (com foco em PHP). Se se sentir à vontade com com Frontend e Backend, use Desenvolvedor Fullstack. Quando ganhar mais experiência e passar a participar mais ativamente da arquitetura, do design do sistema, mude para algo como Arquiteto de Sistemas, Engenheiro de Software.

Apenas lembre na questão de recrutamento, cada um desses títulos traz uma bagagem diferente e dessa forma é esperado um conhecimento equivalente a essa bagagem. Pesquise o que elas costumam significar e escolha a que melhor se encaixa ao seu momento.