Rafael Benevides bio photo

Rafael Benevides

In a serious relationship with Software Development

Email Twitter Facebook Google+ LinkedIn Instagram Github Last.fm Youtube

Hoje recebi do amigo Leonardo Carvalho um outro texto interessante.

Um artigo de Paul Graham fala dos 18 erros que podem levar projetos ao fracasso. Entre os erros ele cita a contratação de péssimos programadores como um dos fatores. Assim este texto fala justamente de como reconhecer os bons programadores.

De maneira resumida, o artigo que me foi enviado, aponta alguns indicadores (tanto positivos, quanto negativos) que facilitam a identificação deste "ser":

Indicadores positivos:

  1. Apaixonado por tecnologia
  2. Programa por Hobby
  3. Participa de discussões técnicas
  4. Possui projetos pessoais em paralelo
  5. Aprende novas tecnologias por conta própria
  6. Tem a capacidade de opinar qual a melhor tecnologia para cada tipo de uso.
  7. Sente desconforto em trabalhar com uma tecnologia na qual ele não crê que seja "ideal"
  8. Esperto e capaz de conversar sobre vários assuntos.
  9. Começou a programar bem antes de entrar na faculdade
  10. Conhece várias tecnologias (algumas podem nem estar presentes no seu Curriculum)

Indicadores Negativos:

  1. Programa apenas no trabalho
  2. Não quer ou não gosta de participar de debates técnicos
  3. Somente aprende novas tecnologias quando a empresa paga cursos
  4. Está feliz em trabalhar com qualquer tecnologia. "Toda tecnologia é boa"
  5. Não parece ser "esperto"
  6. Começou a programar na faculdade
  7. Toda sua experiência de programação está no Curriculum
  8. Focado em apenas 1 ou 2 tecnologias sem experiência fora delas.

Não gosto de ser radical, mas depois de conhecer vários profissionais de informática, durante vários anos e em vários projetos, posso dizer que em 95% dos casos os indicadores caem como uma luva. Muitos dos que não concordam dizem (principalmente aqui no Brasil) que este é o perfil de um Nerd, e que seus perfis extremamento técnicos não ajudam o projeto por não saberem lidar com o fator humano (principalmente o cliente) envolvido nos grandes projetos de TI. Para as pessoas que pensam assim, queria dizer apenas uma coisa: "Estou cansado de ver projetos compostos apenas por blábláblá*, onde a parte técnica é TOTALMENTE negligenciada e assim o produto (o software) não atende o cliente nem nos requisitos funcionais quanto nos não funcionais.

* E complementando: Não quero dizer que comunicação não é importante, pelo contrário; é o motor que faz o projeto andar para o caminho certo. O "blábláblá" do qual me refiro são os artefatos que não agregam valor nem para o cliente, nem para a equipe, nem para o projeto. São apenas blábláblá!!!!

Maiores informações sobre estes indicadores podem ser lidos no artigo: How to recognise a good programmer

Boa Leitura!