Dias temáticos no desenvolvimento de software (e na vida..)

Categorias Agile

Assisti recentemente a TED talk do Ricardo Semler (https://www.youtube.com/watch?v=k4vzhweOefs). Nela, uma das diversas  coisas interessantes que ele compartilha é a respeito de dias terminais. Se hoje, você recebesse a notícia de que tem apenas mais um mês de vida, quais são as coisas que você faria? Ele, de forma pró-ativa, decidiu ter dias na sua semana para fazer coisas que ele tivesse interesse de fazer.

Em inglês temos o termo ‘bucket list’, é uma lista de experiências, conquistas e coisas para chutar o balde, para se fazer antes de morrer.

Mas o que isso tem a ver com desenvolvimento de Software?

Na prática, tive a oportunidade de vivenciar diversos ‘Dias Especiais’ / ‘Dia de Foco’ em diferentes organizações (no Brasil, EUA e Suécia). Abaixo, alguns exemplos:

Dia da melhoria

Uma delas, era o dia do “SE você tivesse um dia..”. Se você tivesse a sua disposição 8 horas e pessoas que trabalham (ou não) com você para melhorar algo no seu dia-a-dia o que você faria? Este dia era é exatamente para isso. Se iniciou como prática anual depois semestral e agora ocorre com uma frequência maior demonstrando bons resultados.

tumblr_lzxa7nloek1rprijqo1_500

Dia da qualidade

Em um projeto de um cliente de uma consultoria, uma das nossas equipes decidiu dedicar um dia apenas para qualidade. Foi um dia onde não houve desenvolvimento de novas funcionalidades e todos integrantes da equipe (independente de sua função, cargo, ou “CNPJ”) trabalharam analisando a experiência do usuário (UX), efetuando testes exploratórios, analisando métricas de uso (algo similar a um Analytics), testando funcionalidades e cenários entre outras atividades com o intuito de melhorar o produto. No final do dia, problemas foram encontrados e corrigidos (ok, alguns desenvolvedores não conseguem ficar 8 horas sem escrever testes unitários, refatorar o código e commitar no controle de versão) mas mais importante de tudo: todos se divertiram e aprenderam uns com os outros.

IMG_0152

Dia de prática

Hackathon’s. Tive a oportunidade de participar de hackathons que são períodos de tempo fixos (timeboxed) geralmente com algum propósito específico para criar um produto, serviço ou solução de um determinado domínio. A última em que eu participei era uma hackathon sobre visualização de informações onde pude aprender mais sobre Neo4J. Mesmo não sendo mais um desenvolvedor full-time, tinha interesse sobre a ferramenta e se não fosse o evento, não teria aprendido.

picture-of-hackathon1

Dia de incêndio

Em um time de plataforma que era responsável por desenvolver novas funcionalidades, operações e dar manutenção foi instituído uma cerimônia (Scrum-like)  para simular incidentes em produção. Os desenvolvedores agiam como se fossem uma equipe de Brigadistas de Incêndio que é treinada para realizar atendimentos em casos de emergência, prevenindo e combatendo incêndios, prestando primeiros  socorros e evacuando ambientes. Foi perceptível o crescimento, aprendizado e a difusão do conhecimento entre os membros do time. Quando incidentes ocorriam (raros e de baixa severidade) o tempo de resposta da equipe era menor já que algumas destas situações já haviam sido exercitadas. O número de pessoas que conseguiam atuar em determinados problemas também aumentou, descentralizando de pessoas específicas e reduzindo o bus factor.

sgv-slide-sgv-conducts-successful-fire-drill-img

Dia de explorar [Management 3.0]

Um dia de aprendizado e experimentação em toda a organização. Todos devem mostrar os resultados aos seus pares.

exploration days

Dia de criar algo novo e colocar em produção [Atlassian/Management 3.0]

Os funcionários tem um dia (ou 24 horas) para criar um novo produto/serviço e colocar em produção. Não importa se é um projeto Open Source ou um projeto pessoal ou algo que trará valor direto para a organização.

shipitdaysatlassian

Dia de fazer o trabalho do outro [Management 3.0]

Empatia é o exercício de se colocar no lugar do outro, certo? Errado. Empatia é ser o outro. O propósito deste dia é desempenhar o papel de alguém que seja o nosso cliente direto durante um dia. Alguns exemplos seriam: o CEO atender ligações no call center, o desenvolvedor atender chamados de suporte no software que ele respondeu, enfim.. as possibilidades são infinitas. Os aprendizados e a perspectiva diferente pode gerar grandes aprendizados e identificação de oportunidades e melhorias.

job-rotation

Dia do conhecimento [Management 3.0]

A cada X unidades de tempo (meses, trimestres, bimestres, semestres, anos..), você como profissional terá um dia para dedicar ao seu desenvolvimento pessoal. Só um dia?! As vezes um dia pode ser um primeiro pequeno grande passo para uma organização formal e tradicional. Aprender uma nova linguagem, framework, metodologia, desenvolver habilidades pessoais como escuta, fala, dicção e etc.

Todos os exemplos acima são investimentos. Não estou recomendando, muito menos propondo que todas as equipes de desenvolvimento passem a ter dias dedicados para todos os itens listados acima. O ponto é: com base nas minhas experiências em diferentes contextos, foi perceptível os resultados e ganhos aplicando cada uma destas “cerimônias” em times e departamentos de engenharia de software.

 

Conclusão

Alguns destes dias temáticos podem ser contra intuitivos, como por exemplo: “Dia da inovação”. As empresas tendem a querer incorporar inovação não só nos seus produtos mas também em processos, experiência, design e demais. Vejo que os dias temáticos podem ser utilizados como formas baratas e rápidas de experimentar estes conceitos e avaliar os impactos benéficos e os investimentos necessários para iniciar em pequenos passos (baby steps) uma mudança maior e cultural dentro das organizações. E na sua empresa? Vocês possuem dias temáticos?

Guilherme Motta atua como Agile Coach e facilitador na gestão de equipes que desenvolvem software. Atuou em empresas globais como Klarna, ThoughtWorks, Nokia, HP, e outras. Certified Scrum Professional pela Scrum Alliance, graduado pela PUC-RS em Sistemas da Informação e MBA em Gestão Estratégica da TI pela FGV. Professor na Pós-graduação da UniRitter em Desenvolvimento de Software com ênfase em metodologias ágeis.
  • Fernandes Lima

    Sensacional o texto, uma proposta inteligente, simples e inovadora. Parabéns