---
title: O perfil T-Shaped e o dev full-stack
authors: Diego Eis
type: post
date: 2015-11-26
url: /o-perfil-t-shaped-e-o-dev-full-stack/
categories:
  - Carreira
tags:
  - fullstack
---
A Valve é uma das maiores empresas de games do mercado. Na verdade, como eles mesmos dizem, eles não são apenas uma empresa de games: 

> We’re an entertainment company. A software company. A platform company.

A cultura da Valve é uma das mais interessantes que existem. Pra começar não existe hierarquia, apostando totalmente em um formato autogerenciável. As mesas são totalmente móveis (sim, elas tem rodinhas), o funcionário escolhe o projeto no qual vai trabalhar e ele mesmo define e prioriza as suas tarefas. Se você quiser ler mais sobre a cultura da Valve, recomendo que leia [o livro que eles fizeram para novos funcionários][1]. Esse livro, explica que eles valorizam um determinado tipo de pessoa, que é o que eles chamam de pessoa “**T-shaped**”.

As pessoas **T-shaped** são profissionais que conhecem diversos assuntos de forma bem geral, não chegando a ser um profundo especialista (a parte de cima do T), mas também são experts em um campo de conhecimento específico (a parte vertical do T).

A Valve diz que esse tipo de pessoa é muito importante para o sucesso da empresa. O motivo é simples: um expert que conhece apenas sobre um assunto, pode ter dificuldades para colaborar com o projeto como um todo. Já se a pessoa é alguém generalista que só conhece um pouco de tudo, então ela não acrescenta valor como indivíduo para o projeto. Logo, todos precisam ter os dois perfis, ampliando as possibilidade de colaboração para o produto e principalmente para o grupo como um todo.

Se fôssemos aplicar isso para desenvolvimento web, estaríamos falando de um profissional **full-stack**. Geralmente o mercado usa esse termo um pouco errado. Alguns lugares definem que um desenvolvedor full-stack é aquele back-end que entende de também de operações. Outros lugares definem o full-stack como sendo um back-end que também sabe front-end. As duas estão certas e erradas ao mesmo tempo. Veja: um profissional full-stack é aquele que entende razoavelmente bem todo o **stack** que se usa em um determinado projeto. O stack de desenvolvimento é o conjunto de tecnologias utilizadas para fazer o projeto funcionar. Exemplo: Um site desenvolvido com HTML, CSS, JS, PHP com WordPress como CMS e MySQL como banco, rodando em um servidor Ubuntu 14 com NGINX e Jenkins como CI. Se você consegue colocar um projeto desses funcionando em produção, sozinho, você pode se chamar de **full-stack**. E é claro que os stacks mudam de projeto par projeto. Logo, na verdade, um desenvolvedor pode não ser totalmente um **full-stack** motherfucker. É muito difícil achar um cara que saiba programar todas as principais linguagens back-end, que saiba configurar e manter muito bem servidores web e que domine todos os sistemas de CI etc. Esses caras são moscas brancas.

Se você quiser saber um pouco mais sobre essa história de dev full-stack, rolou uma thread interessante no twitter esses dias. Conheci pelo Lucas Mazza (esse podcast sensacional)[https://developertea.com/]. O podcast é em inglês e nesse episódio específico, ele fala sobre [o que é exatamente um desenvolvedor full-stack][2]. Vale a “ouvida”.

Mais para frente escrevo mais sobre a organização que a Valve mantém dentro da empresa.

 [1]: https://www.valvesoftware.com/company/Valve_Handbook_LowRes.pdf
 [2]: https://developertea.com/episodes/9281