O que significa realmente ser fullstack developer?

Estou com muita dúvida à respeito na questão quando dizem que o profissional só poder ser Front-End ou só pode ser Back-End que não existe este negócio de fullstack e não dá para ser bom nas duas áreas. Eu sei que é humanamente impossível dominar a maioria das linguagens. Por isso eu já escolhi não trabalhar com tecnologias dotNet para não ficar preso a microsoft e desenvolver futuramente apenas para Android felo fato de dominar a maior fatia do mercado. Tive matérias como banco de dados e orientação à objetos na faculdade então pretendo iniciar na área como estagiário trabalhando ou com PHP ou com Java para pegar experiência com sistemas web complexos e banco de dados. Acredito que escolher ser apenas Front-End irá ficar muito complicado para iniciar no mercado, porque serão poucas as empresas que darão oportunidade para o iniciante desenvolver sistemas front-end complexos na unha. Acredito que tem muitas empresas que se acomodam e querem facilitar a vida do cliente ou não confiam no estagiário pegando templates prontos como no ThemeForest limitando o desenvolvedor iniciante à evoluir na área. Não sei se à área de Front-End está precarizando por causa dos templates prontos. Dizem que este negócio de fullStack não existe, não sei o qual é o verdadeiro significado de fullStack. Se eu dominar orientação à objetos, banco de dados, photoshop e javascript, já posso ser fullStack?

Você ser um desenvolvedor Full-stack não significa necessariamente que você tenha que ser um desenvolvedor experiente, ou apenas um desenvolvedor web.
Basta você ter o conhecimento razoável em tecnologias front-end e back-end, de uma maneira que você se sinta confortável com ambas metodologias.
Na maioria das empresas, os empregadores procuram alguém versátil, ou seja, se você é um profissional “completo”, que vai bem além do básico e que resolva os mais diversos tipos de problemas que impactam no negócio do cliente você tem uma maior vantagem na hora da contratação.
Dica: Se você é um programador você deve ter consciência de que para se manter sempre ativo no mercado, você precisa estar por dentro do que há de melhor no mercado, metodologias, ferramentas, linguagens e etc, sempre vá se especializando e aprendendo novas tecnologias.

Full StackOverflow :joy:

Full-Stack Developer, em teoria, é um programador que conhece todas as camadas de uma aplicação. Tudo mesmo, incluindo segurança, hospedagem, rede, qualidade de software, servidor, front-end, UI/UX, etc. É um especialista em todas as áreas.

Contudo, uma outra definição aceita pela comunidade é que um Full-Stack Developer é um cara que é familiar com tudo isso, e não um especialista fluente. É um cara que consegue pegar uma ideia e transformar em um produto sem muita dificuldade, mesmo sem dominar tudo 100%.

1 curtida

Vi na internet um conceito chamado de principio de Pareto que pretendo seguir como filosofia de aprendizado. Essa teoria diz que para tudo na vida apenas 20% das coisas mais importantes são responsáveis pelos 80% restantes, tomando como exemplo, apenas 20% das roupas mais importantes do seu armário você usa no dia a dia, somente o google e o android domina 80% do mercado, 20% dos ricos acumulam 80% da riqueza do mundo, etc. Então pretendo ser especialista em uma ou duas linguagens e frameworks e dominar apenas os 20% mais importantes das outras linguagens restantes. Fica a dica.

1 curtida

A idéia é essa mesmo. Por exemplo, ser especialista em front-end não quer dizer que você não sabe escrever um SELECT, significa que você sabe tudo sobre HTML, CSS e Javascript, minificação, sabe otimizar suas páginas, sabe como o browser, funciona, etc. É claro que para o restante você precisa ter uma base. Nesse link tem um texto muito bom sobre o assunto:

1 curtida

+1, nesta filosofia de Pareto.
Abraham Lincoln
"Se eu tivesse oito horas para derrubar uma árvore, passaria seis afiando meu machado."

Significa ser um “faz tudo”. Em empresas menores isso é mais comum.