[DESABAFO] O que é ser full stack DE FATO?

Hoje gostaria de por em pauta um assunto que venho pensando muito a respeito nos últimos dias, que é: QUANDO UM DESENVOLVEDOR PODE SE CONSIDERAR FULL STACK?

Para essa pergunta ouvi dois argumentos:

O primeiro argumento dizia que "O Desenvolvedor Full Stack é o profissional capaz de atuar com Front-end, Back-end, Banco de dados e por fim, capaz de hospedar o projeto desenvolvido". Ouvi esse argumento vindo de grande parte dos influenciadores da bolha tech, porém, tenho um pé atrás pelo fato da maioria deles vender cursos justamente te ensinando a se tornar um desenvolvedor completo, e quando não era essa a situação, o influenciador era patrocinado por uma empresa de cursos.

O segundo argumento que ouvi foi "O Desenvolvedor Full Stack é o profissional que possui conhecimento para desenvolver um projeto em sua totalidade, e isso vai desde o levantamento de requisitos até a configuração dos servidores físicos que hospedarão sua aplicação." e a pessoa que disse isso também complementou:

Eu mesmo tenho 30 anos de carreira e não me considero full stack. Eu me descreveria como um ótimo desenvolvedor web, porém tenho um conhecimento pouco aprofundado em desenvolvimento mobile. Mesmo que eu estudasse a minha vida inteira, não conseguiria ser pleno em todas as áreas do desenvolvimento de uma aplicação.

Quem me trouxe o segundo argumento foi um dos meus professores da faculdade (curso ciência da computação), e ele claramente é uma pessoa MUITO EXPERIENTE e tem como comprovar isso. Já passou por diversas empresas e conciliava as aulas com o gerenciamento da empresa que ele mesmo criou para desenvolver projetos e já tinha vários funcionários.

Tendo todo esse background em vista, aqui estou eu pensando "Será que sou full stack?". Eu sou capaz (e já fiz) de desenvolver uma aplicação web completa, do front à hospedagem, PORÉM nunca nem atuei profissionalmente na área, e vejo MUITOS pontos em que eu ainda posso melhorar. No fundo, eu gostaria mesmo é de colocar no meu LinkedIn "Desenvolvedor Full Stack", pois quem sabe assim, eu poderia me candidatar para vagas com diversos requisitos (claro, desde que eu cumpra eles). Além de 5 semestres da faculdade, já sou técnico em desenvolvimento de sistemas, mas até hoje não consegui nada na área, acho que seja pelo fato de eu ter resolvido me especializar em front-end no início, e logo depois o javascript ficou super popular e começaram a surgir desenvolvedores React em cada esquina. Atualmente estou migrando, ano passado foquei em Node.js e agora tenho aprendido .net e C# em busca de algum conhecimento que seja capaz de me trazer a minha tão sonhada vaga.

A true é que é melhor não se prender tanto a nomenclaturas pq sempre criam novas.

Um fullstack é um dev que atua com front, back, bd. Um fullcycle é um dev que atua do inicio ao fim, front, back, bd, devops.

Ao meu ver, ser fullstack generalista não é muito bom, principalmente pra iniciante.

O perfil ideal que muita gente defende e que eu também prefiro, é o perfil T-Shaped. Nesse perfil o profissional sabe todas as outras categorias porém é especializado em uma. Então vc pode ser um especialista em front que sabe back e cloud ou um especialista em back que sabe front e cloud.

Perfil generalista nunca foi um bom perfil.

é verdade, já conversei com vários recruiters que torcem o nariz quando pega alguém falando que é full, procede, acredito que não seja todos, mas os que tive oportunidade de conversar me falaram a mesma coisa, então deve proceder,

Oi Nicolas, espero que se encontre bem :)

Vou ser bem direto e reto contigo. Desenvolvedor Full Stack é aquele dev que trabalha tanto com frontend quanto backend.

As pessoas ficam enrolando muito e muitas vezes falando besteira sobre. Agora tem um outro ponto, o full stack vai variar de empresa pra empresa, podem existir empresas que o full stack seja aquele dev mais pro back ou mais pro front e também tem casos onde o front ao invés de ser web vai ser mobile.

Full Stack é basicamente o que eu descrevi acima, e no quesito linkedin eu colocaria:

Desenvolvedor Full Stack | SUA STACK | AQUI | AQUI | E AQUI | E AQUI | E AQUI TBM

E de forma alguma coloque estudante pq isso não vai te ajudar em nada.

Espero ter ajudado e esclarecido suas dúvidas. Tmj!

Valeu cara, ajudou bastante!

Vamos lá, apesar de existir diversas definições e formas de interpretar o "Desenvolvedor FullStack".

Para mim, ser FullStack esta ligado diretamente a habilidade de se adptar ao projeto como um todo, com o objetivo de resolver um problema. Isso idependente das tecnologias utilizadas no projeto.

Ser FullStack é ter a capacidade de se adptar tanto técnicamente como no entendimento do projeto em geral (Regras de negócio, particularidades do projeto, etc).

Conhecer o negócio e o projeto para trazer soluções como um todo, sendo com tecnologias já envolvidas no projeto ou com novas tecnologias. Desde que consiga resolver os problemas e necessidades reportados pelos clientes (internos ou o cliente final).

Não vejo de uma forma limitada, como ter conhecimentos de Front/Back/DataBase, mas sim sobre conhecer os principais conceitos envolvido no ecosistema do projeto. Pois tendo o conhecimento do projeto e dos conceitos envolvidos, as tecnologias podem variar e vai caber a você como um "FullStack" correr atrás e ir adaptando-se com tecnolocias do projeto (se aprofundando nas particularidades da Stack do projeto).

Agora voltando a falar de "carreira", acho que antes de qualquer coisa é importante você se sentir confortável trabalhando com qualquer projeto, isso porque cada projeto tem tecnologias diferentes e você vai precisar saber lidar com elas no contexto do projeto. Mesmo que tenha atuado em pequenos projetos com a tecnologia X ou Y, sinaliza isso de alguma forma no seu cv ou LinkedIn e sempre destaque as tecnologias que tem mais afinidade e as quais esta trabalhando atuamente.

No final, idependente de qualquer coisa e tecnologia o que vai valer é se resolveu ou não a necessidade do projeto.

Abraços,

vamo fala a verdade verdadeira? na pratica fullstack é backend que da uma enganada de front kkkkk

Para mim, não tem a ver com " o cara que domina front e back", mas sim com o cara que consegue se adaptar a novas tecnologias, independente de ser código, cloud, ou etc.

Meu caro! Como foi dito pelos amigos, eu corroboro com a conclusão. O dev Fullstack é o dev que atua com o front e o backend. Na visão da empresa, é o dev que conseguirá dar suporte ao front e ao back, e não apenas a uma unica capability.

O profissional que "possui conhecimento para desenvolver um projeto em sua totalidade, e isso vai desde o levantamento de requisitos até a configuração dos servidores físicos que hospedarão sua aplicação" na minha opinião pode ser considerada um de dois tipos de pessoa: extremamente talentosa e organizada OU extremamente lascada. Nos dias atuais as empresas esperam cada vez mais de nós, meros programadores. Você precisar riar os requisitos, desenvolver, pensar nos conceitos de usabilidade, coletar dados de produto para futuras melhorias, criar a pipeline de CI/CD, inserir na aplicação os agents de observabilidade, criar as dashboards na solução, responder as war rooms, participar de postmortems... isso é extremamente cansativo. Não devemos pensar no desenvolvimento de software como várias tarefas para uma pessoa, e sim como uma forma de ter várias pessoas com pensamentos e opiniões diferentes olhando para os problemas do dia a dia.

Minha dica é, tente pensar no que você mais gosta de fazer. Será que é aquilo que você mais tem proficiência? Ou é algum nicho da área? Conseguir trabalho no início é difícil, e dependendo do que você goste de fazer, talvez só consiga exercer isso depois de alguns anos... não quero te desencorajar. Sou desenvolvedor de jogos formado e com portifólio, mas não consegui deixar a área de backend ainda, por diversos motivo$.

Se gosta de mexer com web, vai fundo no fullstack! Tenta fazer uma busca no linkedin, youtube, reddit, quais as linguagens de programação que mais possuem vagas, junta tudo que você fez e cria um portifólio, e manda vagas sem parar! Você vai conseguir :)

Full stack ? deixando o ego de lado, é o sivirino da programação, basicamente isso, faz tudo mais recebe somente por uma parte disso, tipo vc é contratado pra fazer o front end, mas precisa ajudar com o back ,

acredito eu que pra ser full stack o cara precisa ter um conhecimento sólido em front, back e noções de devops, pra começar a pensar em ser full stack, mas a pergunta que fica é, como se autodenominar isso ? que ponto eu consigo saber que já tenho conhecimento suficiente pra saber se eu sou ou não full em alguma coisa? até que ponto é legal mesmo de fato ser full?

vou receber por isso? ou vou só acumular funções e me sobrecarregar ?

acredito que iniciante deva sim focar em algo, e quando atingir o nivel pleno começar ai sim a estudar outras coisas, eu sou até mais radical e penso que não existe iniciante em full de nada, mas é meu ponto de vista, sendo iniciante o meu conselho é que foque em qual gosta mais e domine muito bem, entre no mercado de trabalho e vá desenvolvendo, o caminho do full pra iniciante eh mais demorado por que precisa estudar muito mais coisa,

Opa, eu concordo com a definição da thayto: "Desenvolvedor Full Stack é aquele dev que trabalha tanto com frontend quanto backend".

Não acho que você deva se preocupar muito com o nível de conhecimento que você está para se considerar fullstack, pois fullstack é uma ocupação, e não um nível.

Por exemplo, a partir do momento em que você escreve seu primeiro "Hello World!" você já é um programador, pois você escreve programas. Você só não pode se considerar um profissional, nem júnior/pleno/sênior, porém você é um programador, entende? É uma ocupação que você está tendo no momento.

Como nosso mano disse ali em cima, não se prenda a nomeclaturas, não existe uma definição do que é fullstack, assim como nao existe definição de Junior. Pleno e Senior, cada um diz uma coisa e cada pessoa tem sua interpretação.

Só sei que é uma merda ser fullstack, voce se fode no front, back, banco e dependendo da empresa no devops tambem, muito melhor ser especialista em algo, ex quando trabalhei com Vue, eu ja estava no nivel de ir atras de como o Vue funcionava debaixo dos panos pra entender cada pedaço desse framework, agora como fullstack mesmo sendo JS front e back (Angular e Nest) sao framework diferentes com suas particularidades, e ainda tem banco de dados que nao é nada facil ou seja tu vira um pato, bem mais o memos em tudo, e é muito dificil ser muito bom nos 3 porque é muita coisa.

Ser fullstack é bom pra adquirir conhecimento mas pra carreira não acho, é bom voce ser especialista em 1 delas e ter um conhecimento bom nas outras

É aquele cara que sabe de tudo mas não é bom em nada (ironia)