Carlos Brando

Nome do Jogo

Como apagar incêndios em seu software - aprenda com os profissionais!

Metodologias ágeis, desenvolvimento orientado a testes, integração contínua, programação em par ou qualquer outra prática que você utilize não irão evitar que vez ou outra você seja obrigado a parar tudo o que estiver fazendo e correr desesperadamente para “apagar um incêndio”.

Imprevistos, urgências e prazos apertados surgem o tempo todo e requerem nossa atenção imediata. Com o tempo acabamos nos tornando peritos em resolver este tipo de problema. Certa vez eu trabalhei com um DBA que era chamado de herói por todos os nossos colegas de trabalho, dado a sua grande capacidade em resolver problemas desta ordem tão rapidamente.

Durante muito tempo eu acreditei que todo programador deveria receber pelo correio um diploma de bombeiro honorário. E já que somos obrigados a conviver com esta realidade, por que não aprender com os bombeiros profissionais qual é o melhor procedimento a ser adotado durante um incêndio de verdade?

Hoje, graças a um constante trabalho de prevenção, equipamentos de última geração e homens bem treinados, os bombeiros profissionais conseguem vencer as chamas com cada vez mais velocidade e com o mínimo de danos. Muito diferente da nossa forma de atuação, ao se deparar com um incêndio esses homens conseguem manter a calma e seguir a risca cada um dos procedimentos necessários. No caso de uma emergência, ao chegarem no local, a primeira missão de um bombeiro é resgatar as pessoas que estão em perigo. A segunda coisa a se fazer é evitar a propagação das chamas para prédios ou casas vizinhas e então lutar para extinguir o fogo.

Após o incêndio ser controlado, ainda é necessário fazer uma busca por focos de fogo que podem estar escondidos em escombros e possíveis vitimas que ainda possam estar vivas. O trabalho não termina até que uma equipe especializada identifique as causas do incêndio.

Analisando estes procedimentos adotados pelos verdadeiros bombeiros, fica muito claro o motivo de não recebermos a nossa carteirinha de bombeiro honorário. Nós não somos profissionais. Quando surge uma emergência no trabalho costumamos ignorar todas as regras e procedimentos afim de resolver o problema o mais rápido possível. Não nos importando com vítimas ou com a estrutura do prédio (software).

Não importa a gravidade do problema ou o quão apertado é o prazo. Uma janela quebrada, um pedaço de código mal concebido ou uma decisão estratégica errada pode ser o começo do declínio para o seu software. Quando se está trabalhando em um software cheio de janelas quebradas é fácil desenvolver pensamentos como “este código é uma porcaria mesmo”. Simplesmente não importa se tudo estava indo bem até aquele momento.

Por outro lado, quando uma equipe zela pelo seu código e o mantém limpo, bem escrito e elegante, mesmo durante um incêndio (prazo apertado, um bug sério descoberto em produção ou uma data fixa de lançamento) nenhum desenvolvedor desejará ser o primeiro a estragar tudo. Manter a cabeça fria e seguir o procedimento é a diferença entre amadores e profissionais.

Comments