Trabalho individual em equipe
Por mais contraditório que pareça, é o que acontece na maioria dos ambientes de desenvolvimento de software. O software é dividido em partes, frequentemente chamadas de módulos, e cada um faz a sua parte. Vários profissionais fazem parte de um grupo chamado Equipe, sendo assim temos um trabalho individual em Equipe.
Esse modelo não é interessante pra ninguém por alguns motivos:
- O desenvolvedor fica com uma visão limitada do software que esta construindo e não tem como participar de decisões mais amplas do software como uma unidade.
- As vezes você tem acesso restrito aos fontes, e mais uma vez fica alienado sobre o que está sendo feito e usado pelos outros membros da equipe.
- A equipe fica dependente do desenvolvedor, assim como a gerência.
- Troca de conhecimento baixa.
- Integração baixa.
- Soluções projetadas por uma pessoa e vistas de apenas um ponto de vista, já que os problemas não são estudados por todos com o mesmo esforço.
- “Isolamento” e pouca motivação.
- Não existe competitividade positiva.
- Nem sempre a divisão de tarefas é justa (desafios, complexidade e trabalho braçal etc...).
Por outro lado, a única característica positiva que eu encontrei foi velocidade, agilidade, qualidade de desenvolvimento, se imaginarmos um profissional competente e um planejamento mais fácil, se cada membro conseguir planejar sua parte, mais reduzida e especifica, de forma mais precisa.
Vejo esse trabalho individual como algo estratégico ou talvez emergencial em alguns casos, mas que deve ser evitado ao máximo para que as partes negativas desse estilo de trabalho não apareçam.
É fundamental estimular o trabalho em equipe, integração no dia a dia e não através de festas anuais, a troca de conhecimento e uma participação mais ampla da cada membro de uma equipe, que eu prefiro chamar de time, no desenvolvimento do software como uma unidade e não como um conjunto de peças. É claro que para determinadas tarefas uma pessoa apenas é o suficiente e a melhor escolha, mas um software é composto de peças grandes e pequenas, de complexidades altas ou baixas.
Muito se fala sobre integração de serviços(a moda do momento), mas pouco se fala na integração de recursos humanos. Numa entrevista, Simon Phipps, diretor de tecnologia da Sun Microsystems disse:
Para um desenvolvedor de software fica fácil de entender que o modelo antigo em que se reuniam os melhores profissionais fechados em uma sala para produzir uma solução. Não importa quão inteligentes essas pessoas sejam, o fato é que haverá outras tantas pessoas inteligentes for a da sala que poderão contribuir. Se os de dentro da sala puderem falar com os de fora, com certeza, o resultado será um software melhor.
Por mais que um profissional seja competente, as vezes uma opinião de fora pode mudar completamente a visão do mesmo problema e por consequencia aumentar a qualidade da solução. A cooperação e o individualismo tem seus valores, mas em um trabalho de equipe cooperação deve prevalecer sempre.
