Não seja um desenvolvedor de uma linguagem específica!

Léo Santos
Ideas by Interage Software
6 min readJun 8, 2018

--

“Se especializar é se limitar e conhecer de tudo um pouco é não conhecer verdadeiramente nada.”

Será?

Mas então, ser um especialista ou generalista?

Quem nunca se deparou com essa dúvida ou já escutou alguma frase como a primeira? Seja no mercado de TI ou em qualquer outro, buscar se especializar em algo ou aprender de tudo um pouco é uma dúvida constante.

E aí, qual escolher?

Sabemos que no nosso mercado você não precisa dominar 100% de todas as linguagens de programação existentes, mas ao mesmo tempo se limitar a uma linguagem significa cavar a sua própria cova. (Sabem bem disso os programadores de COBOL e Flash)

Estudando COBOL em 2018

Mas então o que fazer? Como saber o que estudar e quando escolher algo para se especializar?

É sobre isso que quero conversar com você hoje.

Os primeiros passos

Vamos imaginar a seguinte situação: Você acabou de começar a estudar programação e sonha em ser um excelente desenvolvedor no futuro. Está nos primeiros períodos da faculdade ou até mesmo buscando os primeiros cursos e materiais de maneira autodidata.

O primeiro passo já foi dado, você entendeu todos os conceitos e fundamentos da lógica de programação e já consegue dominá-la muito bem. Para dar os próximos você escolheu (ou escolheram pra você) alguma linguagem de programação (Python, Ruby, Java, C++…), assim você pôde seguir aprendendo ainda mais.

“Por que que esse algoritmo é assim?”

Você já consegue entender muito bem como desenhar a solução do problema utilizando essa linguagem, e já até está buscando se aprofundar para entender melhor os conceitos do algoritmo e como ele conversa com a máquina.

Agora, já dominando essa linguagem, como saber qual próximo passo você deve dar? Se especializar ainda mais nela ou estudar outras?

Escolhendo seu alvo

Se você não sabe onde você quer chegar, qualquer caminho serve, já diria o Gato em Alice no País das Maravilhas.

Não adianta querer atirar para todos os lados, assim você provavelmente não irá acertar alvo nenhum.

“Eu vou desenvolver em tudo! Dane-se o mundo!”

Nesse momento você deve responder a:

Com o que eu quero trabalhar: Desenvolvimento Web, Mobile, Desktop ou Sistemas Embarcados?

Isso vai facilitar muito você a escolher o seu alvo e ir construindo o seu caminho de aprendizado e desenvolvimento como profissional.

Trabalhar com Mobile por exemplo abre um leque de linguagens e frameworks com que você normalmente não teria contato caso optasse por trabalhar com Desktop.

Mas você já escolheu o seu foco, ou pelo menos quer ir pouco mais a fundo para saber se essa realmente é a sua praia, e agora?

Preparando-se

Hoje a maior parte das aplicações possui algum conexão com a Web. Isso significa que se faz necessário, independente da sua escolha (web, mobile, desktop ou embarcado), ter um certo conhecimento de front-end, back-end e até mesmo de Query para banco de dados.

Claro que você não precisa se tornar um desenvolvedor full-stack (front-end + back-end). Porém, entender um pouco mais de ambos os lados pode facilitar você a desenvolver suas próprias aplicações de maneira autônoma e especialmente descobrir em que lado você pretende atuar.

Então o que eu proponho aqui é você se dedicar durante alguns meses a uma linguagem de front-end, uma de back-end e um de banco de dados.

É pra estudar mesmo hein!

Descubra quais são as principais linguagens que são utilizadas no desenvolvimento da área que você escolheu, escolha uma de front, uma de back e uma para banco de dados e comece seus estudos.

Com o passar do tempo você naturalmente irá se inclinar para um dos lados e começará a se achar enquanto programador (front, back ou full stack).

Indo mais a fundo

Agora que você já se achou, é hora de começar a se especializar nisso. Até porque, o próprio mercado vai demandar de você, desenvolvedor mobile front-end/web back-end/web full-stack…, um conhecimento mais a fundo da sua área e frente de desenvolvimento.

Cuidado!!

Mas cuidado! Não é porque você está trabalhando com desenvolvimento web back-end que você deve esquecer tudo o que você aprendeu sobre banco de dados e front-end.

Entender pelo menos um pouco sobre como funciona as demais partes do todo faz você ter uma melhor visão do que você está desenvolvendo. E até mesmo quebrar um galho aqui ou outro ali quando necessário.

Aqui na Interage por exemplo, eu trabalho e gosto de trabalhar com desenvolvimento back-end. O que não quer dizer que não saiba nada de front, já que trabalho um pouco com JavaScript, HTML e CSS.

Porém, como me identifico com a área de back-end, busco cada vez mais me aprofundar em Ruby e Ruby on Rails, já que essa é a tecnologia que melhor nos atende e que faz mais sentido pra gente utilizar hoje.

Mas isso significa que eu vou ser sempre um desenvolvedor Ruby? Jamais!

Não não, obrigado!

O mercado e as tecnologias estão em constantes transformações. Hoje Ruby é a linguagem que faz sentido trabalhar aqui, mas daqui a um ou dois anos pode ser que não faça mais.

Aberto a Mudanças

Muito mais importante que dominar toda a sintaxe e detalhes de uma linguagem é entender muito bem os conceitos iniciais e a forma como uma linguagem de maneira geral se comunica com a máquina.

Seja trabalhando com front ou com back-end isso te permite dominar não uma linguagem de programação e ponto, mas sim a estrutura e o algoritmo que ali atua.

É como aprender um novo idioma. Não é que seja necessário, mas se você entende muito bem a estrutura gramatical do seu idioma (adjetivos, verbos, substantivos etc.) aprender um novo idioma se torna muito fácil.

Depois que você pegar o macete

Dominando essa estrutura, aprender novas linguagens de programação e se necessário migrar de uma para outra não se torna algo doloroso, mas sim natural.

Enquanto profissionais, nós precisamos buscar sempre o que facilite e torne melhor a solução que nós estamos desenvolvendo. Se para isso for necessário utilizar novas linguagens, que assim o seja.

E você? Como tem sido seu processo de aprendizagem de novas linguagens? Já sabe se quer trabalhar com front, back-end ou full stack?

Quer aprender mais sobre Ruby? Baixe nosso ebook clicando aqui!

Quer nos acompanhar pela internet?

Redes Sociais: Facebook | Instagram

Assina nossa Newsletter!

--

--