segunda-feira, 30 de março de 2020

A Maior Virtude de um Profissional de TI Sênior




Após praticamente 30 de anos de tecnologia vigente em nosso cotidiano e com centenas de títulos e posições criadas, já temos um grande número de profissionais que se enquadram na categoria Sênior, porém a mais importante das virtudes é completamente deixada de fora na maioria das vezes por esses profissionais no dia a dia. Não é que ela seja desconhecida ou menos importante, é que essa característica deveria ser intrínseca ao perfil Sênior e praticada em todos os momentos. 

Essa virtude é a Paciência!

Quando iniciei minha na carreira, toda tarefa designada à mim, me parecia urgente e deveria ser feita o mais brevemente possível para atender o prazo estipulado, e todos sabemos como os prazos são importantes, logo, a questão não é atrasar as tarefas, mas a velocidade que ela é iniciada, ou seja, não se dedicava muito tempo para "pensar" e sim parte  para "executar". Isso é típico de quem esta começando e não detém de muita experiência, entretanto sobra energia.

Com o passar dos anos, muitas experiências são adquiridas, seria muito natural que os profissionais mais seniores tenham posturas mais parecidas com sábios, que por conta de suas bagagens, tendem a analisar, estudar, avaliar e debater antes de iniciar qualquer movimento, vejamos esse lindo exemplo de um sábio diante de uma adversidade.

Conta a lenda que um velho sábio, tido como mestre da paciência, era capaz de derrotar qualquer adversário no quesito “paz interior”. Certa tarde, um aprendiz apareceu com a intenção de desafiar tal mestre.

E o aprendiz começou a vociferar contra o mestre. Chegou até a jogar algumas pedras em direção ao sábio. Durante horas, ele fez tudo para provocá-lo, mas o sábio permaneceu impassível! No final da tarde, sentindo-se já exausto e humilhado, o aprendiz se deu por vencido e foi embora.

Impressionados, os alunos perguntaram ao mestre como ele pudera suportar tanta indignidade. Aí o mestre perguntou: “Se alguém chega até você com um presente e você não o aceita, a quem pertence o presente?” “A quem tentou entregá-lo”, respondeu um dos discípulos e o mestre completou: "A sua paz interior depende exclusivamente de você. Ninguém pode lhe tirar a calma. Só se você permitir."

No conto figurativo, graças a experiência do sábio aliada a paciência, ele pode resolver a situação sem a necessidade de nenhum rompante. A paciência é uma virtude que não pode ser confundida com a tolerância excessiva, com a aceitação da falta de qualidade, com o não cumprimento do dever. Uma pessoa paciente é aquela que tem domínio sobre o seu ser, ou ainda a capacidade de resistência a influências externas e o domínio da própria vontade.

A paciência é uma virtude fundamental para um profissional sênior. Ela pressupõe um exercício constante de empatia, ou seja, de se colocar no lugar de outra pessoa, isso auxilia muito no trabalho em equipe. Requer a humildade para respeitar opiniões alheias mesmo que delas discordando, auxiliar aqueles que estão iniciando na carreira, manter a calma em momentos turbulentos e principalmente se utilizar dela para inspirar a todos a sua volta.

Marcelo Goberto de Azevedo 
Arquiteto na GFT Brasil
//marcelogoberto.com.br

terça-feira, 24 de março de 2020

Principais Motivos para Adoção de Desenvolvimento Guiado por Teste (TDD)




Cada metodologia tem suas vantagens para adoção, a TDD (Test-Driven Development ) oferece uma técnica simples que pode garantir a qualidade de entrega e principalmente a segurança nas alterações realizadas no código após sua implementação.

A técnica dessa metodologia é escrever os testes primeiro e depois codificar, dessa maneira você irá se preocupar em pensar em cenários de aceitação, como entrada e saída para atender requisitos de funcionalidade, antes de efetivamente implementá-los. 

Tudo Terá um Teste Afinal

Tudo que precisa ser criado deverá começar pelo teste, para que possamos criar os testes, precisamos ter pleno entendimento da implementação para escrever os testes que precisaram ser validados para atender os requisitos. Outro ponto, é que os testes são evolutivos, devemos escrever um teste, efetuar a implementação, verificação seu resultado positivo, melhorar o código, testar o resultado, escrever um novo teste, implementar a solução, verificar seu resultado e assim por diante. Se durante o processo de uma nova implementação ou melhoria algo quebrar, os testes anteriores vão apontar e tudo deverá ser validado antes de darmos continuidade.

Redução de Código Complexos

Muitas vezes escrevemos códigos que acabam ficando imutáveis, ou seja, uma vez que funcionou ficamos com receio de alterá-lo e acabar quebrando o que está funcionando. Tendo uma fundação baseada em testes, podemos tranquilamente analisar o código para efetuar sua refatoração para simplificá-lo ou ainda performá-lo, sem a preocupação que ao final ele poderá quebrar algo, porque os testes vão garantir sua aderência. Outro fator positivo é que os testes não serão escritos para atender a codificação e sim cenários de negócios, como consequência teremos mais códigos testáveis.

Simplicidade em Primeiro Lugar

Todo desenvolvedor tem o deve ter como parte principal do seu trabalho planejar a implementação, e sem dúvida alguma sendo feito esse planejamento da forma mais simples e objetiva possível o resultado será praticamente a perfeição, já dizia Leonardo da Vinci, "Simplicidade é o último grau de sofisticação".  Quando definimos iniciamos pelo teste que precisa ser validado, temos que pensar na implementação mais simples que atende os requisitos e caso a solução não seja simplista no primeiro momento, podemos melhorá-la num próximo ciclo garantido a qualidade da execução.

Código Refatorados com Segurança

Muitas vezes temos que alterar códigos de terceiros, ou os nossos próprios, e não se sentimos confortáveis em garantir que nada irá parar de funcionar, contudo, se essa rotina contiver testes que foram escritos exclusivamente pensando em atender os requisitos de negócio, podemos tranquilamente efetuar alterações e aplicar os testes para validá-los, com isso qualquer alteração fica praticamente segurança em fornecer a garantia de sucesso na sua implementação.

Basicamente, o ciclo do TDD é escreva o teste, implemente um código para fazer o teste ser válido e melhore o código sem quebre nenhum teste. Repita esse ciclo até que sinta-se todos os requisitos foram testados e atendidos.

Para um cenário onde um desenvolvedor deve garantir seu produto final, ou seja, a codificação de uma necessidade, essa metodologia oferece muitos fatores positivos para facilitar a entrega e também garantir a qualidade, é um paradigma começar por algo que não seja o código, porém após um período de adaptação você verá como é mais simples e funcional utilizar o método Test-Driven Development (TDD).


Marcelo Goberto de Azevedo
Arquiteto na GFT Brasil
//marcelogoberto.com.br

sexta-feira, 20 de março de 2020

Regras de Ouro para Reuniões Online


Prepare o material a ser usado na reunião com antecedência

Mesmo com todas as facilidades de ter tudo a mão em seu computador, esteja previamente preparado com o documento já separado, ou janelas abertas em segundo plano, envie materiais comuns que serão utilizados para todos os participantes.

Organize o ambiente

Esteja onde você estiver, caso você abre a câmera o fundo deve ser neutro ou corporativo. Caso esteja de home office vale a pena organizar o espaço, na maioria das vezes, a simples mudança de local do computador para uma parede resolve o problema.

Atenção ao vestuário

Sua apresentação é um ponto importante, lembre-se é uma reunião de trabalho, esteja apresentável como se estivesse trabalhando normalmente no escritório.

Seja pontual

Esse ponto é importantíssimo, além do fato que se atrasar é visto com um pessímo hábito, ainda detona falta de respeito com os demais participantes, esteja on-line e disponível para ser chamado cinco minutos antes do horário combinado, para garantir que a reunião comece pontualmente.

Cuidado com a distração

Nunca fique olhando sites, e-mails ou arquivos não relacionados à reunião para não perder o foco. Para fugir da tentação, a dica é deixar tudo fechado.

Microfone ligado só quando você for falar

Quando você for falar você deve ligar o microfone, fora essa condição os ruídos de seu ambiente vão interferir na fala de outro participantes e acabar tirando o foco e atrapalhando.

Silêncio é fundamental

No formato home-office, fique sozinho no ambiente e peça para os membros da família não interromperem. O cuidado deve ser redobrado, coloque o celular no modo silencioso e o telefone fixo da casa longe do espaço de trabalho.



Marcelo Goberto de Azevedo
Arquiteto na GFT Brasil
https://www.marcelogoberto.com.br/