Agile

4 ago, 2014

Agilidade e programação em par no dia-a-dia do desenvolvedor

Publicidade

Recentemente foi iniciada uma discussão sobre “Agilidade no dia-a-dia do desenvolvedor” em um grupo que participo sobre Android, o Android Brasil Dev. Esta thread pode ser acessada aqui.

Após ler alguns comentário, optei por contribuir com meus 7cents. Concluí então, que seria um bom texto para trazer para vocês, pois realmente expressa minha sincera opinião sobre o assunto. Portanto, segue aqui…

Agilidade é muito mais que Scrum, XP e TDD. Um bom começo para realmente entender o que de fato é agilidade é o manifesto ágil.

Trabalho com agilidade em diversos níveis de aplicação há mais de cinco anos e hoje, a não ser que haja motivo muito forte, não trabalharia de forma tradicional (entenda-se: sem os conceitos existentes no manifesto ágil). Não defendo esta prática 100% do tempo, mas reconheço seus benefícios tanto para a empresa quanto para quem a pratica.

Sobre a programação em par especificamente, não é novidade o quanto nossa área é abrangente e o quanto se abrange ainda mais a cada dia que passa. Isto posto, pode ser que você saiba mais sobre uma área, porém sabe menos sobre outra, e pode ser que seu “coleguinha” saiba e possa te passar este conhecimento. Além dos n outros benefícios que programação em par tem; como código melhor, pois há duas pessoas revisando e não uma e outros (uma pesquisa simples no Google vai te dar uma série de boas referências).

Em relação a explanar uma ideia ou conceito para outra pessoa, quando ensinamos, aprendemos; isto é um fato! Uma busca simples no Google também te dará as referências. Um dos meus hobbies é justamente ensinar e dentre os motivos que eu gosto disso é porque a cada vez que ensino aprendo ainda mais! E não aprendo apenas tecnicamente, evoluo em soft skills (habilidades não técnicas) também.

Alguns podem dizer que por trabalhar com tecnologia, não é necessário ter soft skills. Este pensamento é tão démodé quanto televisão de tubo, literalmente.

O ato de ensinar te obriga a estruturar suas ideias e conhecimentos e ainda te faz evoluir em relacionamento interpessoal e outras soft skills. Ensinar é organizar sua caixa de ferramentas para quando você precisar de um martelo, por exemplo, consiga rapidamente encontrar! De nada adianta uma caixa de ferramentas cheia de coisas se você não consegue achar o que precisa, quando precisa, e só tem acesso ao superficial.

Vejo muitos profissionais “sênior’s” por aí que quando com uma caneta e papel, sequer consegue fazer uma implementação simples que é pedida, ou ainda explanar uma ideia para outra pessoa. Quando explicamos algo, formatamos a ideia para nós mesmos.

Ninguém faz grandes coisas sozinho. Se você quer fazer tudo sozinho, aceite em ter resultados medíocres, na definição formal da palavra. Se quer fazer grandes coisas, aceite que precisará de outras pessoas e aprenda a como fazer isso da melhor forma possível.

Vale sempre lembrar que, se não está divertido, há algo errado.