Executando verificação de segurança...
12

💻 Fullstack existe ou é só um dev que sofre o dobro?

Estou começando minha jornada como dev e já vejo muita gente debatendo sobre isso. Então, bateu a dúvida: ser fullstack é realmente dominar o backend e o frontend, ou é só um jeito bonito de dizer que você faz tudo e ainda apanha o dobro? 🤔

No backend: "Arruma essa API rapidinho"
No frontend: "O botão tá 2px fora do lugar, pode corrigir?"
No banco de dados: "Dá pra otimizar essa query?"
No DevOps: "Deploy bugado? Resolve aí!"
Enquanto isso, o fullstack: "Peraí, galera, sou só um!" 😭

O mercado valoriza devs fullstack, mas será que dá pra realmente dominar os dois mundos? Ou, no fim das contas, todo fullstack sempre tem um pezinho mais no backend ou no frontend?

Quero ouvir de quem já tem experiência: Fullstack é um dev versátil ou só alguém que sofre em dobro?

Carregando publicação patrocinada...
33

"Frontend" e "Backend" São Ilusões

Vou contar uma história. Não é a história, mas é minha história. Era 2005, e eu estava lá, escrevendo PHP 4 em um servidor compartilhado, gerando HTML estático para exibir listas de produtos. Não existia "frontend" ou "backend". Existia o webmaster (eu) e o web designer (um cara com Photoshop pirata que manjava de CSS).

Fase 1: A Era do Backend (Ou: Quando o PHP Era Rei)

Naquela época, tudo era backend. Você escrevia PHP, Java, ou ASP para gerar HTML no servidor. O navegador? Só um leitor de documentos. O webmaster transformava bancos de dados em documentos. O designer? Fazia o HTML menos feio. Não havia JSON, não havia AJAX. Se você quisesse atualizar um botão, precisava recarregar a página inteira.

Era simples. Era feio.

Fase 2: JavaScript Acorda (E o Caos Começa)

Então veio o JavaScript. Não o JavaScript de hoje, mas um scriptinho para validar formulários ou abrir pop-ups. Depois, o jQuery surgiu, e de repente, os designers começaram a fazer coisas dinâmicas. Um slider aqui, um accordion ali.

Mas o pulo do gato foi o AJAX. De repente, o webmaster podia enviar dados para o servidor sem recarregar a página. O PHP ainda gerava HTML, mas agora você podia atualizar só uma tabela, não a página toda.

Nessa época, o webmaster e o designer começaram a se misturar. Todo mundo mexia no JavaScript, mesmo que fosse só para esconder um div.

Era cáotico, era lindo. (A era de ouro da web)

Fase 3: A Grande Divisão (Angular, React, e a Ascensão do Frontend)

Em 2010, o AngularJS apareceu com uma ideia revolucionária: "E se fizéssemos tudo no cliente?". A promessa era clara: o servidor só mandaria JSON, e o frontend cuidaria de tudo. Em 2013, o React chegou, e a indústria abraçou a loucura do single-page application (SPA).

Foi quando nasceu a grande divisão:

  • Backend: O cara das APIs, dos microsserviços, do "escalar horizontalmente".

  • Frontend: O cara dos componentes, do estado global, do CSS-in-JS.

Era simples. era lindo.

De repente, todo mundo virou especialista e a complexidade começou a aumentar exponencialmente.

E o fullstack? Era o sortudo que fez um cursinho de 6 meses de React e Node.js, e ganhava 5k+ por mês.

Fase 4: O Pêndulo Balança de Volta (2023+)

Aqui estamos em 2020, e o pêndulo está voltando. Descobrimos que colocar tudo no cliente não é tão maravilhoso:

  1. Perder pontos de SEO é perder dinheiro.

  2. Performance é uma loteria.

  3. Usuários com conexões ou dispositivos limitadoss sofrem.

  4. Acessibilidade é um problema real.

Então, ressuscitamos técnicas antigas com nomes novos:

  • Server-Side Rendering (SSR): O mesmo PHP de 2005, mas agora com React (Next.js) ou Vue (Nuxt).

  • Islands Architecture: Partes estáticas no servidor, partes dinâmicas no cliente. O mesmo AJAX + JQuery que começou com a bagunça.

  • A linha entre frontend e backend está se dissolvendo. De novo.

Vai ser simples e linda.

O Que Isso Significa Para Você, Jovem Padawan?

Você perguntou: "Fullstack é ser versátil ou só sofrer em dobro?"

Minha resposta: Fullstack é uma ilusão temporária.

Nos anos 2000, todo mundo era fullstack (mas não tinha esse nome). Nos anos 2010, nos dividimos. Agora, estamos nos unindos de novo, mas com ferramentas e processos muitos mais robustos.

Se você quer conselhos de um veterano:

Ignore rótulos. "Frontend" e "backend" são detalhes de implementação, não princípios.

Estude fundamentos:

Se gosta de backend, mergulhe em algoritmos, estruturas de dados, concorrência.

Se gosta de frontend, estude design, usabilidade, acessibilidade, psicologia cognitiva.

Abrace a hibridização: O futuro é HTML primeiro, JavaScript sob demanda. Aprenda a trabalhar em todas as camadas, mas não por obrigação.

O Futuro (Ou: Por Que Tudo Isso Vai Sumir)

Daqui a 10 anos, ninguém vai falar em "frontend" ou "backend". Falaremos em:

Engenheiro de experiência do usuário (como tornar interfaces eficientes).

Engenharia de sistemas (como tornar aplicações resilientes).

E o fullstack? Será só "dev" de novo.

Você não deve escolher entre ser backend ou frontend. Precisa escolher entre ser curioso ou estagnado.

A web já foi PHP + HTML. Virou JSON + React. Agora é HTML + JavaScript parcial. Amanhã será outra coisa.

Mas os fundamentos? Esses são eternos.

(E sim, fullstack hoje é sofrer em dobro)

Um abraço e bons estudos!

2

Perfeito!

Resume tudo que penso de forma didática e precisa. Eu também estava lá usando PHP 4 no início do milênio e acompanhei todo esse histórico que vc mencionou.

E uma coisa que notei nesses anos todos é que nossa área sempre foi cíclica: as modas de hoje vão sumir amanhã pra voltar depois de amanhã. E geralmente ressurgem com nomes estilosos para parecer que é algo moderno e "disruptivo" (meu-deus-do-céu como eu tenho ranço dessa palavra).

Sendo que no fundo é tudo coisa velha com nome novo. Por isso não levo muito a sério esses rótulos - embora eu também use, mas é mais para evitar ruídos de comunicação (afinal, se "todo mundo" entende assim, o jeito é usar) e não ser o chatão da turma.

No fim, prevalece o que vc disse: melhor estudar bem os fundamentos (que não mudam há decadas e te dão uma base muito mais sólida que o curso da moda), e esperar pela próxima moda (só espero que o maldito SOAP não volte).

1
2
1

Meus 2 cents expandidos:

So nao esquece de colocar o link deste post nos favoritos, tenho a impressao que voce vai utilizar muito, pois eh uma questao recorrente aqui.

Alias, as vezes a gente esta a tanto tempo neste mercado e ja viu tantas mudancas que esquece que quem esta entrando agora nao visualiza certas coisas.

1

Realmente, muito bom me fez entender que o foco é não se apegar em meras "tags" como "fullstack" e sim focar em fundamentos e ser uma pessoa bastante curiosa.

1
1
0
6

Fullstack e coisa inventada pra dividir o mercado. Dev desde o princípio sempre fez tudo, tela, banco, código, análise, levantamento de requisitos. Eu programo desde a época do basic, clipper, pascal, vb, delphi e afins. Sempre fiz tudo, cada dev na empresa pega um problema e resolvia de ponta a ponta. Acredito que haja afinidade com back ou front, mas saber fazer tudo é essencial pra resovler um problema, quanto maior sua experiência, mais vão demandar isso de você. Eu sou muito bom em back, api e resolver o problema, não sou bom em front, mas eu faço, faço funcionar. De fato o que muda o jogo para nós dev, é ter um profissional de ux ao lado. Isso muda tudo, pq bom ou não em front, vira um algoritmo, vc tem a receita do que fazer. Na minha opinião hoje como gerente de ti, prefiro mil vezes contratar um fulstack (vulgo dev raiz) do que um dev que só isso ou só aquilo. Recurso financeiro é limitado, então ao gastar vc precisa investir na ferramenta mais eficaz.

1

Que legal irmão, realmente o jeito é nem se apegar nesses cargos e sim ser uma pessoa curiosa e focar nos "dois lados" mas logicamente sempre vai ter um lado que você se sobressai melhor.

4

Meus 2 cents:

Full stack/devops eh um caminho natural - em determinado ponto do tempo um dev frontend vai querer dominar mais ferramentas, e a fronteira nao eh tao clara assim: por isso, aos poucos, mesmo sem perceber vai avancando. O quanto vai mesclar este campo, ai eh de cada um.

Sofre em dobro ? Como sou old school, sempre foi assim - entao nao consigo ver como mais ou menos sofrimento. TI eh sofrer - mas como eh um trabalho que a gente domina, acaba se acostumando e fica uma coisa normal. Sei la, eh como andar de barco - eu sempre enjoo em barco pequeno e os marujos acham graca - fazer o que ? Mas para quem eh do mar - ja nem liga.

Conhecer Infra de redes (nao o bastante para ser um analista de infra, mas para conhecer como a rede e seus protocolos funcionam) sempre me pareceu basico.

Sistemas Operacionais ? Como ser um bom dev sem saber instalar e manusear um Linux ? Como diabos desenvolver uma aplicacao sem entender como um webserver funciona (nem que seja para debugar) ? Ou como checar se o problema de envio de emails esta no app ou no server sem conhecer o protocolo SMTP e seus meandros ? Uso a 587 ou 465 ? Qual a diferenca ? TLS ?

Como escolher um banco de dados ? Qual a diferenca entre Relacional, ORM e NoSQL ? Alias, tem diferenca ?

E por ai vai...

Fullstack eh um dev versatil ou alguem que sofre em dobro ? Se voce nao for versatil/flexivel/adaptavel, perde a vaga para alguem que seja (pode nao ser hoje, pode nao ser amanha, mas tal qual o sapo na panela da fervura - em um ponto do tempo vai estar "cozido").

Vai sofrer o dobro ? Uia, nao exagera - eh so trabalho, faca sua parte, faca o melhor, ganhe teu sustento e use as horas de lazer para o que realmente interessa: sexo, drogas e rock'n roll (ou sei la, o que voce quiser - cada um sabe do seu - essa eh a parte legal da vida, temos responsabilidades mas ao mesmo tempo liberdade, exceto aquela que permitimos que terceiros retirem de nos).

1
1
2

Sou Full-stack, mas inclinado pro back-end. Não tenho muito conhecimento de ux/ui ou planejamento de identidade visual, mas consigo fazer telas de boa e corrigir problemas em produção. No final das contas, isso é o que importa. Tem que resolver o problema não importa se o bug tá no front-end ou back-end.

Recentemente li que a nova tendência com as IA's é a desmaterialização de telas e criação de forms on-demand. Se isso realmente concretizar, então o foco vai ser bem maior no back-end. Ver pra crer né...

0
1

A fomosa arte de atender a necessidade, não resolver o problema. É admirável ver pessoas que se adaptam bem nas mais diversas tecnologias.

Porem vocês já conheceram algum especialista em uma tecnologia especifica? Tipo Oracle. Aquele cara que consegue pegar um problema de lentidão que se arrasta a anos com as soluções mais malucas (limpeza de tabelas, criação de indices em todas colunas, MVs, refatoração de aplicação, dentre outras), e resolve com algo robusto, como particionamento de tabelas, criação de tablescapces dedicadas as funções da aplicação, implementação de um DG para consulta?

Infelizmente uma pessoa não pode ser especialista em tudo. E eu entendo que esta não seria a propostas do "FullStack", acredito que ele de um tapa no problema (como vc bem descreveu acima).

Quem geralmente resolve a causa raiz de problemas complexos são os especialistas.

Eu diria com as I.A.s o FullStack conseguirá resolver problemas cada vez mais complexos. E os especialistas, por exemplo em Banco de Dados Oracle, serão capazes de ser especialistas nas mais variadas bases como (postgrees, Mongo, Cassandra, VMDS, etc...)

1
1

Full stack developers existem aos montes, inclusive aqueles que vivem criando SaaS. Alguns dizem que eles não conseguem ser "bons" em mais de uma área, mas isso é pura bobagem. A única verdade nessa história é que não existe full stack júnior.

Todos os que conheço e que realmente conseguem criar qualquer coisa que desejam não trabalham em tempo integral para uma empresa. Grande parte deles vive desenvolvendo seus próprios projetos, pois isso gera um retorno financeiro muito maior.

Essa é a visão que tenho do verdadeiro desenvolvedor full stack. A ideia de que não dá para ser bom em mais de uma coisa é uma falácia propagada por iniciantes ou por aqueles que só conhecem o mundo corporativo.

0
1

Acho engraçado as pessoas usarem a sua própria régua da competência para medir a dos outros.

Aos 51 anos, já passei por todas essas fases citadas acima e realmente acho bobagem se limitar a labels.

E porque não é possível ser bom em tudo? É só uma questão de tempo. E acredite, com 20 anos você é bom em nada — ainda.

Sempre fiz de tudo, do LOGOTIPO ao site, incluindo animações em AE e edição de vídeos.

E é claro que não sou bom em tudo — ainda.

Respondendo a pergunta:
Me divirto em dobro/triplo/quádruplo..

Ps.:
Não sei no computador, pois é meu primeiro comentário aqui, mas no celular a experiêcia ao digitar é muito sofrível.

Sem sugestão ou auto completar palavras, passei nais tempo do que o necessário para escrever.