6 dicas essenciais sobre como se tornar um desenvolvedor de pilha completa

Trista liu 24 de dezembro de 2017

Como se tornar um desenvolvedor de pilha completa? Como um dos tópicos mais quentes para desenvolvedores, as discussões nunca pararam. No LinkedIn e no Facebook, muitas pessoas colocam seu cargo como um desenvolvedor de pilha completa. Além disso, parece que o tópico “Full Stack” já se tornou uma nova tendência de trabalho. Um artigo no Medium discutiu o designer full stack recebendo elogios e culpas. Algumas pessoas acham que o full stack é apenas um título, o que ele deve focar é a habilidade pessoal e a tecnologia.

Essencialmente, acho que a discussão sobre o stack completo também é um tipo de argumento relacionado ao all-rounder e expert no setor de TI, e debate sobre a profundidade e amplitude das habilidades de desenvolvimento.

Você não pode ter seu bolo e comê-lo também. Enquanto os desenvolvedores full stack e full stackers parecem estar desafiando esta possibilidade. Porque sua árvore de habilidades horizontais lhes dá a habilidade de ter e comer o bolo. Há outro provérbio que é de todos os ofícios, mas mestre de ninguém. Portanto, é necessário pensar em como se tornar um verdadeiro desenvolvedor de pilha completa, mas não um título vazio.

1. O que é um desenvolvedor de pilha completa?

Simplificando, o desenvolvedor full stack é um tipo de pessoa que domina uma variedade de habilidades e usa essas habilidades para concluir um produto de forma independente. Uma resposta votada de topo no Quora explicou que o que é um desenvolvedor de pilha completa:

Um desenvolvedor de pilha completa é um engenheiro que pode lidar com todo o trabalho de bancos de dados, servidores, engenharia de sistemas e clientes. Dependendo do projeto, o que os clientes precisam pode ser uma pilha de dispositivos móveis, uma pilha da Web ou uma pilha de aplicativos nativos.

Na verdade, “pilha completa” refere-se à coleção de uma série de tecnologias necessárias para concluir um projeto. "Pilha" refere-se a uma coleção de sub-módulos. Esses submódulos ou componentes de software são combinados para alcançar a função estabelecida sem a necessidade de outros módulos.

2. Por que o desenvolvedor da pilha completa foi discutido de forma controversa?

Como mencionado acima, a discussão sobre o desenvolvedor full stack é, na verdade, o debate sobre a profundidade e a amplitude das habilidades. Especialmente na conferência da OSCON, um engenheiro do Facebook disse que só contratou um "desenvolvedor de pilha completa". Este tópico surgiu como resultado de uma discussão acalorada sobre os pontos fortes e fracos de ser um desenvolvedor de pilha completa.

Vantagens: Os desenvolvedores de pilha completa envolvidos em um requisito técnico horizontal, para que ele possa fazer um projeto de protótipo para um produto muito rapidamente com sua ampla gama de técnicas. Com a capacidade total de empilhamento, eles têm um ângulo de visão mais amplo e uma mentalidade mais ativa. Além disso, eles serão mais sensíveis a técnicas e produtos. Então, esse tipo de pessoa pode sempre ter suas opiniões em relação ao produto ou design.

De outro ponto, ele / ela pode fornecer ajuda a todos da equipe e reduzir bastante o tempo e os custos técnicos da comunicação da equipe, o acoplamento de tecnologia. Muitos deles se tornam empreendedores ou parceiros técnicos de empresas iniciantes.

Desvantagens: É precisamente por causa do desenvolvimento de tecnologia horizontal, alguns desenvolvedores de pilha completa não podem ser especialistas em uma habilidade. A maioria deles que afirmam ser “desenvolvedores de pilhas completas” só sabem um pouco sobre as múltiplas habilidades. Quanto a como tornar a arquitetura mais adequada para o desenvolvimento modular, isso é uma questão.

3. Mesmo assim, ainda existem pessoas perguntando, como se tornar um desenvolvedor full stack?

Um desenvolvedor qualificado de pilha completa deve ter conhecimento funcional e recursos para todos os aspectos envolvidos na criação do aplicativo.

1) linguagens de programação

Você precisa ser proficiente em várias linguagens de programação, como JAVA, PHP, C #, Python, Ruby, Perl, etc. Como a maioria dos seus principais processos de negócios precisam ser escritos nessas linguagens.Talvez nem todos precisem. Mas você também precisa dominar a gramática de idiomas e estar muito familiarizado com a estrutura, o design, a implementação e o teste do projeto com base em um ou mais idiomas. Por exemplo, se você escolher JAVA, será necessário dominar o design e o desenvolvimento orientados a objetos, os padrões de design, os componentes baseados no J2EE do desenvolvimento e assim por diante.

Onde aprender: Git / GitHub – Você tem que saber como usar o Git para gerenciar e compartilhar seu código.

2) Use estruturas de desenvolvimento e bibliotecas de terceiros

As linguagens populares de desenvolvimento são geralmente acompanhadas por uma boa estrutura de desenvolvimento, como JAVA Spring, MyBatis, Hibernate, Python Django, PHP thinkphp, yin, nodeJs express e assim por diante.

Onde aprender : 15 ebooks grátis em Python

3) tecnologia front-end

As tecnologias front-end estão se tornando cada vez mais importantes no desenvolvimento de projetos e produtos de hoje. Além dos recursos do produto, a experiência do usuário também é um dos critérios para testar o sucesso de um produto. Tudo isso depende da implementação da tecnologia front-end, mas você precisa dominar algumas tecnologias front-end básicas , como HTML5, CSS3, JavaScript, e estudar ainda mais as estruturas front-end ou bibliotecas de terceiros, como JQuery, LESS, SASS, AngularJS ou REACT.

Onde aprender: você não sabe JS

4) Banco de dados e cache

Qualquer produto ou projeto precisa de um banco de dados para armazenar dados. Como um desenvolvedor de pilha completa, você também precisa ter pelo menos um ou dois bancos de dados e saber como interagir com o banco de dados. Atualmente, o banco de dados popular é MySQL, MongoDB, Redis, Oracle, SQLServer e assim por diante. Como um banco de dados de tipo de documento, o MongoDB, está sendo usado mais amplamente em produtos da Internet. Quanto a projetos maiores, também recomendo usar o MySQL ou Oracle comercial como banco de dados de back-end. Embora os bancos de dados de memória, como o Redis, possam ser usados para armazenamento em cache para melhorar o desempenho do sistema.

Onde aprender: série tutorial do MongoDB MERN , tutorial do Redis

5) capacidade de design básico

A maioria dos artigos ou discussões sobre o desenvolvedor de pilha completa raramente está relacionada aos requisitos de design. Mas eu acho que a habilidade de design é muito importante, o princípio e a habilidade do design básico de protótipo , design de interface do usuário, design UX também são necessários para entender.

Onde aprender: blog UX

6) Auto-requisitos também são um fator essencial para se tornar um desenvolvedor full stack:

  • Pensamento global
  • Boas habilidades de comunicação
  • Criatividade
  • Curiosidade
  • Habilidades de gerenciamento de tempo

Embrulhar

De acordo com as 10.000 horas de lei de Gladwell, ele gastará 10 anos para dominar o conteúdo de conhecimento front-end, back-end e voltado para o cliente para ser um desenvolvedor de pilha completa. Portanto, o desenvolvedor full stack não é de forma alguma realizado durante a noite. O que você precisa fazer é estabelecer a base técnica, fortalecer as principais habilidades e continuar aprendendo para mais desafios.