[Opinião] Assuntos tediosos que sempre rolam ano após ano.

 Bem, o título já diz tudo.

1- Especialista ou Generalista

A grande verdade por trás dessa questão é que é impossível você ser qualquer um dos dois. Engenharia de software envolve várias ferramentas e serviços, que sempre serão renovadas.

Um fato é, o “full-stack” pode ser cobiçado por empresas, mas seu o salário também será menor, até porque quem faz tudo, não faz nada (100% opinião pessoal né, hahahaha). Outro fato, a trilha de um front-end é uma coisa insana, de back-end também e tem pessoa que fala que full-stack precisa saber mobile ainda (pois front é o que ta na frente, pode colocar desktop, TV e até relógio), aí fica hard né.

Mas e aí, se especializar em que? Linguagem é só sintaxe, você precisa de ferramentas (frameworks, libs, etc), de serviços (clouds, database, etc) e como já dito, essas coisas também evoluem e mudam, logo a jornada é infinita.

O melhor a se fazer é definir a SUA stack e ser conscientemente nela, cloud por cloud é cloud, mas se você se sente bem com Azure é em Azure que vem o seu destaque, framework por framework é mesma coisa, mas se você desmancha com Quarkus, é aí que está o seu valor. Dica do dia, seja consistente nas coisas que você curte e saiba olhar para os lados para de vez em quando sair da zona de conforto.


2- Fazer faculdade ou não

Cara, eu acho que esse é um dos meus arrependimentos no início da carreira, se hoje eu fosse aquele garoto de 18 anos, com toda certeza investiria em uma boa faculdade. Na minha casa e na galera que eu andava ninguém era envolvido com TI, então era um mundo totalmente oculto que eu perdi um preciosíssimo tempo explorando sozinho e uma boa faculdade me daria um bom path, mentores, coleguinhas para discussões e quem sabe, aquele indicação marota para o primeiro trampo (que é hard né).

Então, depois da minha história, a moral é o seguinte, hoje em dia cada vez menos em desenvolvimento o seu diploma importa, mas se você realmente não tem ninguém ou nem ideia de como seguir, com certeza faculdade é uma excelente opção. Mas, uma googlada dá pra responder muita coisa e de TI para TI o mundo é free (não precisa gastar dinheiro com livros, cursos ou bootcamps), o melhor lugar para aprender sobre internet é na internet, tem TUDO de altíssima qualidade gratuitamente (depois de um tempo você vai ver a mancada de ter gastado uma fortuna no bootcamp, encontrando um curso mil vezes melhor no youtube).


3- Precisa saber inglês

Na boa, parece piada isso. Inglês é a linguagem universal, então independente de você estar em tecnologia ou não, é essencial para você e sua carreira, TI fala mais alto pois praticamente tudo sai primeiro em inglês e a variedade de conteúdo é muuuuuuito maior (nem pior, nem melhor, diversificado) então sim, é obrigatório (isso mesmo, sem desculpas).


4- Júnior, Pleno e Sênior

As empresas precisam criar algum jeito de ter uma carreira para seus funcionários, essa distinção é uma delas. Como já falado em outro artigo, tempo de mercado para criar essa distinção está cada vez ta mais fraca e nesse universo que tem milhares de distintos ramos de conhecimentos, a ideia de sênior fica cada vez mais difícil, pois é aquilo, você realmente pode ter anos em uma indústria e conhecer tais tecnologias/serviços muito bem, mas se a empresa resolve colocar algo diferentão na stack, pronto, você não sabe nada :D . 

Então desapegue dessas nomenclaturas que na realidade só geram briga de ego, tem uma história bem bizarra de um conhecido de um amigo meu que o cara deixou seu cargo de “desenvolvedor júnior” para entrar em outra empresa, ganhando menos, apenas para ter o cargo de “desenvolvedor pleno”. Olha só o que o ego faz com a pessoa (quem dera eu estar ganhando mais, com menos responsabilidades e com foco em aprender…..)


5- A melhor linguagem de programação ou “Melhores linguagens para o ano XXXX”

Meu, eu acho esses títulos uma das coisas mais insanas. Como tudo no mundo da engenharia de software a linguagem de programação X também nasceu com um propósito, apesar que você consiga fazer QUALQUER COISA com QUALQUER LINGUAGEM sempre terá pŕos e contras bem específicos para cada tarefa (normalmente ignorados, pois que nem toda empresa consegue  manter vários sistemas com diferentes linguagens, apesar dessa ser de  longe a maior vantagem de micro serviços, enfim papo para outro dia).

Escolha a linguagem que você se sente mais confortável em trabalhar, seja porque a sintaxe dela é mais legal, seja por que ela tem mais ou menos métodos built-in, escolha aquela que quando você vê um problema é nela que você pensa em como resolver. Existe mercado para TODAS, além do mais, com 99% de certeza você vai acabar utilizando uma popular ou uma que já teve seus dias de glória. E o que isso define? Popularzona do momento, tem mais ofertas, salários menores (ou bem maiores, depende da demanda que tá rolando e do porque que ela ficou popular), uma que já teve seus dias de glória ou mais alterna, menos ofertas com certeza, porém salários maiores (provavelmente teremos um serviço de sustentação ou simplesmente tá difícil achar dev, tem vários motivos). Mas o que acontece na sua vida profissional é que você começa a ficar cada vez mais agnóstico em relação à linguagem e começa a trabalhar com qualquer coisa (mas sempre mantenha a SUA stack, super importante). Então não gaste tempo com isso, faça o que te deixe feliz :) (tenha consciência!).


Bem, eu lembrei apenas desses tópicos clichês que todo ano a gente é bombardeados com esses conteúdos e esse é só mais um com mais uma opinião. Fim.