(Quase) ninguém é full stack developer
Todos estão à procura de um full stack developer. E faz sentido, quem não queria contratar um génio “faz tudo”? Cada um tem normalmente uma área de especialização e quando as empresas solicitam um full stack developer geralmente não sabem o que isso significa.
“Pau para toda a obra” é uma expressão popular. Alguém que sabe um pouco de tudo, mas muito sobre nada; esse geralmente não é o perfil ideal para resolver uma infinidade de problemas complexos. Infelizmente, isso nem sempre é óbvio. As empresas procuram perfis com competências para resolver uma necessidade específica. Quando essa necessidade tem a ver com o desenvolvimento de aplicações, eles procuram um perfil que possa fazer tudo. Um “pau para toda obra” digital: o full stack developer.
1. Qual a especialização?
Mas o que abarca esse full stack? Alguém que se sinta à vontade no desenvolvimento de front-end e back-end, domine bases de dados, Python, C ou PHP, para poder construir a base de uma aplicação. Essas Apps são geralmente executadas num browser, e é por isso que compreender JavaScript , Angular, HTML e CSS também assumem particular importância.
Além disso, um stack não é igual a outro. Existem algumas opções populares. O stack LAMP com JavaScript, Linux, Apache, MySQL e PHP, por exemplo; ou o stack MEAN com JavaScript MongoDB, Express, AngularJS e Node.js. Torna-se assim mais difícil entender o conceito de full stack developer.
2. Pau para toda obra
Não é impossível aprender o básico de todos os aspetos de um stack e, com isso, podemos realmente criar aplicações completas. Saber um pouco de tudo pode ser útil. Em alguns casos, as empresas podem estar à procura de um pau para toda obra. Tem as suas vantagens: podemos construir sozinhos um protótipo da App e economizar tempo eliminando reuniões com colegas.
Na maioria das vezes, no entanto, os full stack developers são associados a um “poço de conhecimento”. Podem chamá-los de grandes talentos, gurus do código ou estrelas do rock developer. É aí que começam os problemas. A especialização de um developer pode não ser a mais adequada para a aplicação solicitada. Existem requisitos exclusivos de UX? Ou a escalabilidade de back-end é essencial para executar uma aplicação de forma leve? E a segurança? O nosso full stack developer normalmente não terá a resposta para todas estas perguntas.
Às vezes podemos ter sorte, porque por vezes, existem génios. Mas é raro encontrar um verdadeiro talento, capaz de tomar decisões informadas de hardware sobre virtualização, cloud, escalabilidade, bases de dados, configuração, linguagem de programação real, UX, segurança e muito mais. Além disso, é improvável que alguém com esse conjunto de skills fenomenal esteja apenas numa empresa que procura um full stack developer para matar o maior número possível de coelhos com uma cajadada só.
3. Procura-se: Developer
Do ponto de vista das organizações, não é justo nem sensato procurar full stack developers. Os currículos não demonstrar todas as skills e características necessárias para o desenvolvimento de uma aplicação boa, eficiente e segura. Programação não é um trabalho, mas uma especialização. Não precisamos ter a ambição de ser especialistas em tudo. Em vez disso, devemos escolher um domínio específico e sermos bons nessa área.
Ajuda ter uma noção de todos os aspetos do stack. Afinal, developers de front e back-end, artistas de UX e especialistas em bases de dados estão a remar para o mesmo lado. Como tal, entender os desafios um do outro só pode ajudar. Mas isso não nos transforma num full stack developer.
4. Full stack manager
Se este cargo existisse na realidade, ironicamente deveria ser aplicado a alguém que não precisa escrever uma única linha de código. Um “pau para toda obra” que pode reunir com todos os developers de uma equipa, um arquiteto, líder de equipa e porta-voz ideal para a administração. O domínio, nesse caso, cabe aos especialistas individuais.
Caso contrário, o termo full stack developer geralmente cria falsas expectativas. Normalmente não esperamos que um músico componha, toque piano, violino, bateria e violão, cante e comande uma orquestra, preferencialmente de música clássica, jazz, pop e rock, não é? Então, por que razão um developer deveria ser capaz de fazer isso?
Está na hora de dar o próximo passo na sua carreira? Confira as nossas vagas ou envie-nos uma candidatura hoje mesmo.