Renan de Melo

Um blog pessoal, normalmente com conteúdo a respeito de desenvolvimento de software.

Nome:
Local: São Paulo, SP, Brazil

Mais um palhaço no circo que é o desenvolvimento de software

sexta-feira, 14 de novembro de 2008

Rotatividade no mercado de TI - Parte 2

Bem, vou continuar meu pensamento sobre a rotatividade no mercado de TI, se você não leu meu post abaixo, sugiro que leia antes de ler este.

Como estava comentando, na visão de uma determinada empresa, ela possui dois tipos de programadores, aqueles que estão a um tempo com ela e aqueles que estão a pouco tempo e possuem alta rotatividade. Também comentei sobre a importância que conhecimento tem para a tarefa de desenvolvimento de software e os tipos diferentes de conhecimento geralmente encontrado nestes dois perfis.

Ando pensando em melhores formas de integrar estes dois perfis, visto a importânica do conhecimento para o desenvolvimento de software os diferentes tipos de conhecimento que estes perfis tem,um programador veterano possui conhecimento de negócio, enquanto o programador novato conhecimento técnico diferente do utilizado na equipe atual (visto que veio de outras experiências de trabalho que desenvolvia de forma diferente).

Vejo alguns pontos na vinda de um programador novato à equipe de desenvolvimento.
  1. Por mais competente que o programador seja, tecnicamente falando, ele não terá condições de gerar valor ao usuário rapidamente, visto que o desenvolvimento de funcionalidades valiosas dependem de conhecimento de negócio do programador;
  2. Este programador possui um ponto de vista técnico diferente do utilizado na equipe de desenvolvimento, e que pontos de vista diferentes são muito valiosos para a arquitetura do sistema, pois trazem reflexão e aprimoramento contínuo desta.
  3. Programadores veteranos possuem como rotina gerar valor para este sistema, e as vezes não estão interessados em ensinar todos os detalhes do sistema para um programador novo, afinal, isto é bem chato mesmo.
Tendo estas observações como base, acredito que pode ser criada uma política de integração, onde a equipe se compromete em formar um programador novato para que esta possa agregar valor ao sistema o mais rápido possivel.

Eu vejo uma política de integração de novos programadores, se baseando em um ambiente saudável de desenvolvimento, como algo assim:

  1. Um programador novato não faz nada sozinho, apenas em par (isto permite que o programador veterano continue a gerar valor enquanto o programador novato aprende na prática);
  2. Um programador novato troca de par constantemente (isso evita que um programador veterano fique de saco cheio de ter que ensinar tudo para o novato, além de fazer com que o novato aprenda muito mais rápido, visto que opiniões distintas geram uma visão geral muito melhor) - Para que isso realmente ocorra, não pode entrar muita gente junta na equipe comparado com o número de veteranos, nunca passando da ordem de 1 programador novato para 3 ou 4 programadores veteranos;
  3. O programador novato DEVE estar nas reuniões de arquitetura, pois seu ponto de vista técnico é diferente do consenso da equipe, e este pode enriquecer a arquitetura do sistema.

Interessante.. (pelo menos pra mim), não acho que o mercado enxerga a importância da integração de novos programadores à equipe, mas ainda acredito que este pode ser um ponto estudado futuramente.

Flw,
Renan

Marcadores: