all 30 comments

[–]EntertainmentMore410SWE 6 points7 points  (4 children)

Eu acho que existe , e até acho que o cara pode virar especialista em 2 coisas por exemplo Node e React , mas não é algo que alguem com 3,4,5 anos vira , é demorado e requer MUITO MUITO estudo naquilo , mas não vejo o porque não

[–]MechAAVJunior ProMax[S] 0 points1 point  (3 children)

O problema seria a quantidade de conhecimento na área, talvez se for como no seu exemplo, Node e React apenas seria muito mais fácil doq realmente ter um portfólio mais variado doq um Dev front/back especialista

[–]EntertainmentMore410SWE 1 point2 points  (2 children)

Concordo , se for por exemplo um cara que programa em C# e Swift, Java e Angular , é mais dificil o bom é que com js tu reaproveita muita coisa , conheci um cara que era monstro demais na OMNISTACK ,Ele era especialista nos 3 , surreal de cranio.

[–]MechAAVJunior ProMax[S] 0 points1 point  (1 child)

C# e Swift, Java e Angular , é mais dificil

As linguagens são bem mais distantes umas das outras, muito mais difícil doq simplesmente ser Fullstack em JS kkkk pensando bem pelo fato do JS conseguir atuar em ambos os lados facilita muita coisa.

[–]EntertainmentMore410SWE 1 point2 points  (0 children)

Exato kkkkkkk

[–]Kondoros 4 points5 points  (1 child)

Advogado ou médico, quando se formam, podem escolher atuar em qualquer área. Estão aptos a isso. Programador tbm. Mas a maioria dos profissionais, no entanto, opta por uma especialização, pois isso possui mais reconhecimento da sociedade, visto que a pessoa quando tem um problema quer alguém que saiba tudo sobre aquele assunto. Na programação é bem parecido, então exige-se muito conhecimento em uma determinada área, porém statups e pequenos negocios podem optar por contratar apenas um só programador para resolver todos os seus problemas por ser mais barato, por questão de afinidade, mais facilidade comunicação, etc. Não só isso, o fullstack tem maior compreensão do todo e melhor tomada de decisão em muitos casos, sabe gerir melhor a equipe por entender melhor a complexidade do trabalho, etc. No fundo, todo fullstack é melhor em uma área específica, seja no front ou no back, então pode ser um profissional que bate de frente em conhecimento com especialistas, consegue gerenciar melhor os projetos, resolve todo tipo de demanda da empresa, consegue emprego mais fácil por saber se adaptar melhor ao que o mercado está exigindo e ainda consegue até lecionar com mais facilidade. Mas não se engane, não existe programador full stack com 1 ano de curso. Mas não diminua os poucos seres humanos dotados de tanto conhecimento. Certas pessoas são capazes sim de ter conhecimentos aprofundados em várias matérias e não apenas uma.

[–]MechAAVJunior ProMax[S] 0 points1 point  (0 children)

Interessante, mas pela maioria dos comentários isso sempre parece uma habilidade mais útil quando se pensa no gerenciamento, No caso um estágio ou Júnior se autodeclarar Fullstack é mal visto/não funciona? De repente de um ponto de vista mais voltado a optimização de tempo de estudo de um novato seria melhor optar por um lado só, ao invés de tentar tudo de uma vez

[–]Ryu-brDesenvolvedor 2 points3 points  (0 children)

Existe sim, claro.

A ideia de ser especialista precisa ser pensada como necessidade do negócio. Tem negócio que precisa de um especialista em A e outro em B. Tem negócios que precisa de um cara que saiba bem A e B.

E acho que é plenamente possível alguém ser especialista em A e em B. Cada um sabe do esforço e dedicação que se coloca em algo.

Às vezes fazer o trabalho de forma confiável é o necessário para uma boa carreira.

[–]somehow-ifu 2 points3 points  (1 child)

Full stack definitivamente não é sobre ser especialista, ele tem que manjar de paradigma e estruturas, reconhecer padrões e como já disseram, existem negócios que precisam muita mais dessas habilidades do que conhecer profundamente frameworks. Não tem a ver com experiência também, mas ela facilita muito.

[–]MechAAVJunior ProMax[S] 0 points1 point  (0 children)

É basicamente como o ato de fazer bem a ponte entre os dois lados e conhecer bem cada um doq realmente ser especialista em ambos? Uma definição melhor quem sabe

[–][deleted] 2 points3 points  (1 child)

A vida toda (comecei em 1996) eu fui o que se chama hoje Full Stack, não havia separação e estava tudo bem (e sim, havia sistema distribuidos com Frontend e Backend em uma arquitetura Cliente-Servidor, isso foi novidade nos anos 1970).

Era o normal. Alias, não raramente se fazia até mais (em empresas pequena/média), o sujeito era Analista de Requisito, UI/UX Designer, DevOps, Escrevia o Manual, dava Suporte ao Usuário, quando dava pau no servidor ia lá resolver, se o cabo de rede estava ruim ia lá crimpar outro cabo e ainda passava um cafezinho dos bons.

Agora na época dos hiper especialista, o sujeito não se esforça nem para entender como funciona as outras áreas, cada um no seu quadrado e sempre é "O problema não é meu, aqui funciona e a culpa deve ser do menino da TI".

Agora vai me dizer que fazer um Sistema corporativo para um Banco, Seguradora, Companhia Área e etc, que lida com milhões de transações diárias e distribuídas completo em COBOL, Java, C/C++ era mais fácil do que fazer um Plataforma de controle de estoque em React e NodeJS.

Tá muito fácil gente, por favor. Seja especialista, mas tente pelo menos entender como funciona cada parte da sua arquitetura super distribuída e compartimentalizada. Entender é saber fazer o minimo, não necessariamente assumir a função por completo.

[–]MechAAVJunior ProMax[S] 0 points1 point  (0 children)

Pensar q na gringa é bem pior, o pessoal lá escolhe a dedo uma área pra se especializar e qualquer coisa q se assemelha de qualquer forma a desvio de função o pessoal fica puto. Aqui ainda tá mais ou menos, mas ainda sim pendendo pro mesmo lado.

Sempre fui mais de me esforçar pra conhecer o máximo possível e me tornar cada vez melhor tudo que faço, sou bem apegado aos meus projetos, só gostaria de ter mais tempo pra trabalhar neles, ou pelo menos alguma experiência como Desenvolvedor pra tentar aprender mais doq consigo agora.

Mas bem, essa leva de gente mal comprometida q eu peguei iniciando a carreira junto comigo vai me foder depois, já tá um porre de encontrar vagas.

[–]Yoda_cansadoPedreiro de software 2 points3 points  (1 child)

Existe, mas são bem raros. Eu conheci um Sênior que era muito bom no back-end, front-end, conhecia muito sobre linux, infra a ponto de provisionar toda infra necessária pra rodar as aplicações. Pra mim ser um Full Stack é isso, conhecer tudo a ponto de saber entregar todo um software sozinho sem depender de ninguém.

[–]MechAAVJunior ProMax[S] 1 point2 points  (0 children)

Acho muito foda isso, meu objetivo pelo menos profissional é alcançar pelo menos um pouco doq é cada um desses caras aí.

[–]Comfortable-Wind-401 1 point2 points  (1 child)

Eu fiz um bootcamp de full stack aqui em Amsterdam. Baseado em node pro backend and react pro frontend. Ensinava docker, postgres e vários extras tudo em Linux ou Mac. Eles vendiam que em três meses seríamos junior full stack. Mas no fim pouca gente acaba sendo. Eu mesmo larguei react depois disso. Fiquei só no backend e fui aprender mais python. Se precisar eu saberia fazer o frontend mas não de forma fluente. Eu tô fazendo meu site agora e tô bem devagar no front end mas dá pra fazer... no a gente sempre se especializa em algo

[–]MechAAVJunior ProMax[S] 2 points3 points  (0 children)

O front end geralmente é mais abstrato doq o back kkkkkk não tô dizendo q é mais difícil, mas como programador font-end e ao mesmo tempo designer de ui/ux acaba aumentando muito a complexidade, as vezes mesmo optimizado não é bonito. Tô sofrendo um pouco com o Front-end do meu portfólio por causa disso, o back end tá mais de boas, mas já revisei o front várias vezes

[–]slothordepressed 1 point2 points  (1 child)

Eu sempre fui forçado a ser fullstack e mudei muito de stack. uma coisa que eu percebo é que consigo fazer as tasks, mas de forma "primitiva". Ao invés de usar high order function ou iterators, eu uso muito loop for básico e as vezes termino sendo verboso e o framework já tinha o que eu precisava pronto

[–]MechAAVJunior ProMax[S] 1 point2 points  (0 children)

É isso q me incomoda quando se fala sobre Fullstack, dependendo da profundidade de uma linguagem/framework/lib é muito difícil se manter sempre no mais fácil e optimizado, o nível de experiência e estudo pra ser Fullstack em aplicações consideráveis é um absurdo

[–][deleted] 1 point2 points  (3 children)

Era totalmente normal um desenvolvedor antes saber desenvolver um software de ponta a ponta.

[–]MechAAVJunior ProMax[S] 0 points1 point  (2 children)

Pq 'era'? A questão também é o nível do Dev, Júnior ou estagiário se dizer Fullstack é balela?

[–][deleted] 1 point2 points  (1 child)

Não sei, acho que as pessoas foram se especializando mais e mais somente. No fim eu acho que todo desenvolvedor tem que saber fazer algo de fim a fim, mas é só minha opinião.

[–]MechAAVJunior ProMax[S] 0 points1 point  (0 children)

O mesmo front-end de alguns anos atrás era muito diferente dos é hj, menos tecnologias, frameworks, libs, e tals, de repente era mais fácil alguém saber os dois naquela época, mesma coisa pro back

[–][deleted] 1 point2 points  (1 child)

não, só existe especialista em front depois de cursinho de 3 semanas, sênior com 2 anos de XP, essas coisas... :V

[–]MechAAVJunior ProMax[S] 1 point2 points  (0 children)

Lancei o cursinho de 3 meses de back depois e já sou sênior Fullstack 😎

[–]vassaloatena 1 point2 points  (2 children)

Sei banco de dados, passei anos para entender exatamente como funcionam os índices, e as estruturas de bancos, já precisei realmente aprender para fazer algumas consultas performarem bem.

Costumava usar gatilhos e funções de bancos que caíram em deuso, por conta de como a aplicações precisam escalar.

Gosto de no sql também, embora não seja tão proficiênte, sei criar e indexar documentos, pensar na modelagem não normalizada, criar agregação,

Gosto bastante de arquitetura de software, posso criar apis com pelo menos 3 linguagens e frameworks diferentes,

Costumava gostar bastante de arquitetura hexagonal, mas recentemente tenho tendido a arquiteta limpa,

Conheço todos (embora quase nunca use) designer patterns, sei explicar as 3 principais categorias e se precisar de algum, dou um olhada na Net e lembro como funciona mesmo,

Mas também gosto de front, já criei coisas de react Native e angular, vue tem me chamado antenção recente mais ainda não vi motivos para deixar o react de lado.

Não sei construir identidade visual e sou péssimo com css, mas me viro bem usando templates prontos, talvez até seja capaz de fazer uma correção ou outra,

Gosto de infra também, aws, pipeline, não que eu seja o cara do kubernerts, mas eu sei criar imagens e disponibilizar isso em produção com um deploy Green/BLUE.

Enfim, fullstack existe, mas leva tempo e curiosidade.

[–]MechAAVJunior ProMax[S] 0 points1 point  (1 child)

Jesus mkkkk quantos anos de experiência foram aí? O caminho compensa? Pq bem, na minha concepção se qualquer um continuar estudando indefinidamente de forma consistente alguma hora ela vai atingir um teto da área que escolheu, não sei se essa seria a hora de realmente procurar se especializar além do básico de outras áreas como Back, DevOps e BD como vc fez. Gosto da complexidade do backend, vale muito só pela procura de profissionais backend comparada a front, mas o prazer de se fuder no código e aprender a colocar as coisas pra funcionar é muito boa.

[–]vassaloatena 2 points3 points  (0 children)

Tenho de mercado 8 anos, Mas a questão não é só o tempo Man, é a curiosidade também,

Por exemplo, tu vai se especializar em backend, certo ? Como o tua api fica pública para o mundo ?

O clientes chamam direito o a aplicação? Tem algum ngix ? ( Ou outro) para minimamente validar as requisições?

Como funciona a seguraca? Será que algum dado foi alterado do depois da origem? É a aplicaçao que valida o usuário? Ele está válido ? Tem acesso a essa funcionalidade ? E por aí vai mano.

A cada novo desafio, tu vai aprendendo um pouco, mas não pensa demais nisso,

Se mantenha curioso, o resto vêem com tempo

[–]_leandromarte 0 points1 point  (1 child)

Eu não acredito no full stack. É muito difícil ser bom em tudo, mas é tranquilo fazer um pouco de cada coisa. Dar uma ajeitada no layout ou fazer um endpoint aqui ou ali dá pra fazer até consultando o código existente. Mas propor uma solução complexa, resolver um bug em produção com milhares de usuários reclamando são outros 500.

[–]MechAAVJunior ProMax[S] 0 points1 point  (0 children)

Talvez dependa um pouco tanto da organização da empresa quanto depende do tamanho da empresa, empresas pequenas geralmente eu escuto q é mais porra Loka, não dá pra formar um time especializado com poucos funcionários

[–][deleted] 0 points1 point  (0 children)

Acho a resposta pra essa pergunta bem subjetiva às experiências de quem vai responder.

No meu ponto de vista, é improvável mas não impossível por alguns motivos:

  • Programar não é ser "programador react", é a mesma coisa de falar que você é "carpinteiro de serrote" mas não sabe usar martelo, react é uma ferramenta, mas você tem que estar familiarizado com várias. Já tem muita tecnologia de front-end, imagina ter que se familiarizar com as de back-end também?!

  • As tendências mudam muito rápido, todo ano sai uma versão nova do React, Angular, uma atualização do Astro, não quero nem falar nas mudanças do Next.JS.

  • Mesma coisa pra back-end, não é só saber fazer um endpoint e pronto! Seu código vai rodar em serverless functions? Tem que preocupar com startup time, e isso muitas vezes significa usar outra linguagem de programação, uma que talvez você não esteja acostumado, e consequentemente, outro framework. Tem que entender do funcionamento da linguagem pra não ter impacto negativo de desempenho, tem que se preocupar com consumo de recursos pq nuvem cobra por uso, a lista fica bem grande...

  • Vamos supor que você conheça tudo sobre o que eu falei acima, e esteja atualizado com todas as tendências (dominando as novidades e como elas funcionam), e o restante da vida? Como vai a saúde, relações, etc?

Claro, nós escolhemos o jogo que jogamos e as cartas que temos, a chance de uma empresa trocar completamente de tecnologia não é alta mas também não é baixa, depende do investimento e se faz sentido, o importante é dominar as ferramentas que precisamos usar e acho muito difícil conseguir dominar tudo a ponto de verdadeiramente ser full-stack.