ATENÇÃO: O plano de estudos Programador Full Stack não é recomendado para quem está dando os primeiros passos na programação.
Se você é um iniciante indicamos o Plano de estudos Programador Front-End.

O que faz um programador Full Stack?

Hoje em dia utilizamos softwares para tudo. Comprar ou vender um produto através de um aplicativo no celular, visualizar informações sobre uma empresa em um site, pedir um táxi, entre outros.

Um software (uma página web ou aplicativo) é dividido, principalmente, em duas camadas: Back-end e Front-end.

Entenda essas duas camadas no flow abaixo. A ideia é simples:

Slide 1 Slide 1 Slide 1 Slide 1

Veja dois exemplos no flow abaixo relacionado às camadas de um software:

Slide 1 Slide 1 Slide 1 Slide 1 Slide 1 Slide 1 Slide 1 Slide 1 Slide 1

Ser um programador Full Stack significa entregar o sistema completo de ponta a ponta e por isso ele deve ter tanto as características do programador Back-end quanto do programador Front-end, como vemos nas Figuras 1 e 2.

Características da programação Back-end

  • Acessa o banco de dados para guardar e resgatar as informações do sistema.
  • Fornece dados para o Front-end exibir na tela do usuário - seja no navegador ou no aplicativo de celular.
  • Faz a comunicação com sistemas de terceiros como validar uma compra junto a financeira de um cartão.
  • Cria tarefas que são executados no servidor, como por exemplo enviar um e-mail para os usuários.
  • Cuida da inteligência do software, ou seja, do motor da aplicação.
  • Se preocupa com os dados e não com a aparência.

Características da programação Front-end (web ou mobile)

  • Envolve conhecimentos referentes a experiência do usuário (UX).
  • Está associado a programação da tela, ou seja, a programar o que aparece para o usuário e como ele vai interagir com a página.
  • Envolve programar as ações que o usuário vai fazer na página ou aplicativo.
  • Se preocupa com a navegação entre as páginas ou telas.
Características do programador Full Stack
Figura 1. Características do programador Full Stack
Características do programador Full Stack
Figura 2. Características do programador Full Stack

Quais tecnologias o programador Full Stack utiliza?

Um programador Full Stack possui uma grande combinação de tecnologias. Isso porque um programador Full Stack combina tecnologias Front-end (mobile ou web) com tecnologias do Back-end.

Veja alguns exemplos de tecnologias que um programador Full Stack pode dominar no flow abaixo:

Slide 1 Slide 1 Slide 1 Slide 1 Slide 1 Slide 1

Carreira Programador Full Stack - Pré-requisitos

Como já falamos um programador Full Stack é quem consegue desenvolver um sistema de ponta a ponta. Para isso você vai precisar dos seguintes conhecimentos prévios:

  1. Uma tecnologia Back-end - Para manipular os dados da aplicação.
  2. Uma tecnologia Front-end (web ou mobile) - Para exibir os dados para o usuário de forma amigável.

Nas camadas Back-end e Front-end você vai se deparar com várias tecnologias, mas não se preocupe, para ser um programador Full Stack você vai precisar de apenas uma tecnologia Front-end (web ou mobile) e uma tecnologia Back-end, como na Figura 3.

Domínio de tecnologias
Figura 3. Domínio de tecnologias

Como começar minha carreira Full Stack?

Para ser um programador Full Stack (Figura 4) acesse o plano de estudo Back-end:

Quando tiver dominado uma tecnologia Back-end acesse um dos dois planos de estudo Front-end.

Iniciando a carreira
Figura 4. Iniciando a carreira