Não seja um front-end, muito menos back-end.

Este artigo é resultado da experiência que obtive realizando consultorias e observando a postura de muitos desenvolvedores.

Como o objetivo do artigo não é abordar nenhum ponto técnico, optei por generalizar os termos: front-end e back-end.

Saiba de tudo um pouco, como o Indy ou Macgyver

Há exatamente uns 2 anos atrás entrei no mundo do desenvolvimento e meus olhos brilhavam com qualquer coisa que conseguia produzir ou aprender (talvez seja por ser muito novo, tinha apenas 16). Fosse um arquivo CSS ou um funcionalidade usando C# ou PHP. O tempo foi passando e acabei descobrindo que desenvolvedores web são dividos pelas suas especializações: front-end e back-end.

Estudando muito sobre que caminho seguir, acabei decidindo seguir o lado front-end. Só que havia um problema: eu também amava aprender sobre back-end. E agora José? Continuei então trabalhando como front-end, porém atuava como freelancer em projetos mais voltados para server-side com o intuito de aprender mais.

Depois de alguns meses, por fim percebi que gostava mesmo era de desenvolver, fosse uma página web ou uma aplicação para linha de comando. Porém me incomodava, quando meus colegas me perguntavam a minha especialidade. Realmente não sabia como responder.

De qualquer forma a vida segue, e de paraquedas parei no videolog como back-end. Conheci muitos desenvolvedores, aprendi muito. E lá decobri que poucos de back-end, conhecem boas práticas de client-side. Logo todo esforço feito para deixar o código lindo e rápido na parte do server-side de nada adiantava, já que que o app carregava inúmeras bibliotecas pesadas no client, aplicava muitos requests e realmente não podia-se sonhar com uma boa perfomance.

O produto final era sempre o mesmo, devs de back se aventurando no client produziam um produto final com perfomance baixa ou algo bem simplório na questão design e UX.

Vida seguia de novo e acabei voltando para o front-end. Também não demorou muito para perceber dos meus novos colegas de trabalho, agora front-end, não sabiam ou entendiam o mínimo de back-end, logo o produto também não saia completo. Sempre tinha pontos a desejar.

Não digo que todo desenvolvedor de back deve se especializar em front. Nem vice-versa. É importante saber dividir tarefas de acordo com a especialidades do desenvolvedor. Porém, penso eu que o mínimo de cada área é essencial. A mesma pessoa que cria um script em python, deve saber no mínimo o básico de html e css. Assim como todos os front-ends deveriam conhecer o mínimo de shell script.

"Nunca coloque um filtro na sua busca pelo conhecimento"

Ninguém quer ficar bloqueado em alguma task, porque o outro time de desenvolvimento atrasou a parte deles, certo? Sabendo o mínimo, você consegue dar suporte ao outro time ou talvez até mesmo “mockar” a parte deles e seguir em frente.

Busque ser e pensar como desenvolvedor em geral, não apenas como um front-end ou back-end.