Front-end, Back-end ou Full-Stack?

Lari Carlotti
Nisia
Published in
7 min readMar 30, 2020

Por onde começar sua carreira de programadora? Vêm que a gente te mostra as possibilidades!

Ouça essa história 👇

Front-End, Back-End ou Full-Stack? — Narrada por Raquel Carlotti.
Créditos da Imagem: hbr.org

Milhares de aplicações são publicadas todos os dias e estas são 'codadas' por desenvolvedoras web ou mobile. Isso você provavelmente já sabe. Por outro lado, o que você talvez não saiba é que existem vários tipos de desenvolvedoras, separadas, principalmente, em três tipos: Front-End, Back-End e Full-Stack. Cada um desses tipos de desenvolvimento pode se tornar uma especialidade real, cheia de complexidades e com grande profundidade de estudo e aplicações.

Portanto, se você quer se tornar uma desenvolvedora, aqui vão as ferramentas e estruturas mais interessantes para saber sobre cada uma dessas vertentes de desenvolvimento.

Logo que comecei a procurar informações sobre desenvolvimento de aplicações, não sabia exatamente quais eram as habilidades que eu deveria ter para mudar de carreira. Como muitas mulheres, eu vinha de outra área e estava tentando encontrar um caminho possível pra mim. Eu olhei algumas vagas de emprego pra tentar entender como as informações eram separadas, e lembro de ter ficado impressionada, não apenas pela quantidade de habilidades e linguagens/ frameworks necessários, mas também pelos cargos que encontrei para funções que pareciam bastante semelhantes.

"Front-end, Back-end, Full-Stack. O QUE É ISSO?"

Claro que esses não são os únicos que você verá ao procurar informações sobre vagas. Mas, com certeza, são os termos mais comuns para vagas em desenvolvimento.

Então, por que precisamos usar muitas definições para uma carreira em programação?

Cada um desses nomes é usado para uma série de habilidades específicas. O desenvolvimento está crescendo rapidamente e se tornando cada vez mais complexo, com interfaces de usuário cada vez mais dissociadas de grande parte da lógica por trás delas.

Seguindo essa lógica, trabalhar com desenvolvimento hoje em dia significa que as empresas esperam programadoras especializadas em alguma parte do processo de desenvolvimento. Como iniciante tentando encontrar o seu caminho na área, você precisa entender quais são as diferenças de se especializar em Front-end, Back-end, ou focar em se tornar uma dev Full-Stack.

OK, parece muita informação, mas fica comigo que logo mais você estará manjando de tudo isso.

Desenvolvimento Front-end

Créditos da Imagem: tubik, Dribbble.com/

As desenvolvedoras Front-end trabalham com linguagens executadas no navegador, também chamado de cliente. Para simplificar, imagine que uma designer tenha criado um logo para um site, e uma fotógrafa havia tirado algumas fotos dos produtos, e as redatoras haviam fornecido o texto para esse site. O papel da desenvolvedora Front-end é de pegar todas essas informações separadas e juntá-las em uma interface interativa e funcional, possibilitando a navegação pelos clientes.

Para isso, as desenvolvedoras Front-end devem ter um conhecimento profundo em três linguagens principais: HTML, CSS e Javascript, além de uma série de estruturas e frameworks que tornam a interface funcional. HTML é uma linguagem de marcação, a estrutura da página, e existe em todos os sites e aplicativos que você visita. CSS é uma linguagem de estilização, que coloca estilo aos elementos do HTML (como cores, fontes, imagens, profundidade, etc). O CSS também pode ser usado para gerenciar elementos da página e a maneira como esses elementos são organizados. E, finalmente, o Javascript é a última peça essencial que fará todas as interações e animações da aplicação web.

Além disso, para cada linguagem, existem estruturas, frameworks e bibliotecas que ajudam quem desenvolve e melhoram o desempenho e a usabilidade do aplicativo, como jQuery, React e Angular. Inclua nessa lista Node.js, um ambiente de plataforma cruzada que executa Javascript e pode ser usado por programadoras Front e Back-end.

Aprendendo essas habilidades, quem trabalha com Front é uma pessoa que flutua entre dois universos: do design e do desenvolvimento Back-end. Elas podem fornecer análises para melhorar a experiência das usuárias, dando recomendações para a equipe de design. O Front-end dará vida, estilo e servirá como uma ponte para as bases de dados e sistemas de Back-end.

Desenvolvimento Back-end

Créditos da Imagem: Easy Tech Tips, YouTube.

Embora as desenvolvedoras Front cuidem de tudo o que você vê e interage, toda a ação nos bastidores faz parte do trabalho das devs Back-end. As aplicações pelas quais você navega funcionam plenamente apenas porque existem servidores e bancos de dados enviando informações para o seu computador ou dispositivo móvel em tempo real. E não é só isso, os dados transmitidos para a aplicação, como formulários, contas de usuários e todas as informações pessoais, são armazenados e manipulados pelas equipes de Back-end.

Os sites dinâmicos exigem um servidor especial, porque os conteúdos são personalizados para cada usuário com base em seus dados. Esse tipo de desenvolvimento é chamado de desenvolvimento de Back-end, porque a maioria das ações não ocorre na frente do usuário, e sim em um servidor em segundo plano.

Desenvolvedoras Back-end são responsáveis por manter os servidores, aplicativos e bancos de dados se comunicando e operando em unissono. Por isso, elas usam linguagens de programação como Python, Ruby, Python e .Net, para criar uma estrutura robusta para os aplicativos web do lado do servidor, além de outras ferramentas, como MySQL, Oracle e SQL Server para salvar, alterar, atualizar e excluir dados dos servidores. O trabalho no Back-end também podem exigir conhecimento de algumas estruturas específicas, como Zend, Symfony, CakePHP e até Linux.

Você pode estar pensando agora: “se o Javascript pode criar animações e interações, eu realmente preciso de Back-end?”. Bom, o JavaScript tinha muito mais limitações no passado do que hoje em dia, e é possível criar soluções infinitas apenas no JS. No entanto, existem alguns problemas de desempenho para aplicativos grandes e complexos que exigirão uma linguagem de programação específica de Back-end. Aprender linguagens diferentes permitirá que você pense sobre o que é melhor fazer em diferentes situações. As desenvolvedoras Back precisam escrever códigos compatíveis com as estratégias de negócios, que traduzam as necessidades da empresa em requisitos técnicos na arquitetura de soluções, mais eficientes para o servidor e os bancos de dados.

Desenvolvimento Full-Stack

O ano de 2019 gerou uma demanda imensa por desenvolvedores Full-Stack. Mas… Por que isso aconteceu? Em poucas palavras, quanto mais habilidades você tem em sua profissão nos dias de hoje, mais valiosa você se torna. Para as empresas, é um grande benefício ter pessoas multidisciplinares, que sabem um pouco de tudo do mundo de desenvolvimento, e consegue se virar para resolver diversas situações. Mas quem são essas pessoas na vida real?

O que torna as desenvolvedoras Full-Stack especiais em 2020?

Se analisarmos alguns aspectos teóricos, aprenderemos o significado mais difundido de “desenvolvimento Full-Stack”. São pessoas que preferem trabalhar profundamente com Back-end e com Front-end. Tais pessoas apareceram graças à evolução do desenvolvimento. Elas simplesmente nunca pararam de aprender novas tecnologias, e aplicam todo esse conhecimento nos projetos que participam.

A Pesquisa Anual de Desenvolvimento realizada pelo Stack Overflow em 2019 mostra que mais de 50% dos desenvolvedores se considera Full-Stack:

Créditos da Imagem: https://insights.stackoverflow.com/survey/2019

Desenvolvimento Back-end ficou em segundo lugar por uma margem pequena. Graças a essa pesquisa, sabemos que as Desenvolvedoras Full-Stack podem trabalhar com 5 a 6 linguagens e estruturas, enquanto outras especialistas escolhem, em média, quatro.

Traços Importantes para uma Dev Full-Stack

Se você decidir se concentrar em se tornar uma boa desenvolvedora Full-Stack, primeiro faça uma auto-análise: entenda se você possui as habilidades pessoais necessárias para lidar com esse tipo de trabalho. Aqui estão algumas dessas habilidades:

  • Pensamento computacional
  • Paciência
  • Gostar de aprender (autodidatismo)
  • Atenção a detalhes
  • Criatividade
  • Disciplina

Conhecimento é Poder no Full-Stack

O desenvolvimento Full-Stack é ótimo para quem não gosta de se concentrar em um campo de atuação, e prefere tarefas complexas. Com o passar do tempo e dos estudos, seu próprio banco de dados de conhecimento aumentará rapidamente. Tenha calma, respire fundo, saiba que o caminho é longo e comece a fazer. É só na prática que você perceberá onde se encaixa melhor :)

Ouça nosso Podcast!

O Nísias por Aí está no ar! E essa quarta-feira (01/04) sairá o episódio: "Carreira de Programadora: Como e Por Onde Começar?". Fique ligada nesse episódio incrível preparado pelo nosso time de desenvolvedoras da Mastertech: Ana Morita, Diandra Andrade, Larissa Carlotti e Natália Valentin!

Obrigada! 👏👏👏

Venha conversar e transformar o mundo com a gente! Comente aqui embaixo quais caminhos você escolheu, e compartilhe esse post com suas redes de mulheres e comunidades. Lembre de deixar aquelas palmas de incentivo. Isso nos ajuda a ver quais conteúdos são mais relevantes para você. Até a próxima :)

--

--