.NET - As cinco qualidades de um bom desenvolvedor


 Você se julga um bom desenvolvedor ? Quais as qualidades que todo bom desenvolvedor deve ter ? O que fazer para ser um bom desenvolvedor ?


A palavra autocrítica tem a seguinte definição no dicionário:

 


"Ação e resultado de auto criticar-se; crítica de si próprio ou das próprias ações, com reconhecimento dos próprios erros, defeitos e qualidades"

A capacidade de fazer um auto avaliação do nosso comportamento é uma boa prática que permite desenvolver as nossas habilidades, assim, por meio da auto avaliação identificamos os pontos nos quais precisamos melhorar.

 

Alguma vez você já se perguntou se pode se considerar um bom programador de software ?

Se assim for, você provavelmente também se perguntou o que significa ser um bom programador de software.

Quais são as habilidades de um bom engenheiro de software ?

Quais são as diferenças entre o mau e o bom desenvolvedor ?

Isto é apenas uma questão de experiência ?

Isso está ligado com conhecimento e prática ou esta relacionado com algumas habilidades inatas ?

Como se tornar um bom programador de software ?

 

Será preciso ter habilidades específicas para se tornar um bom desenvolvedor ?

 

Como em todas as áreas de atuação do conhecimento humano um bom desenvolvedor precisa ter algumas habilidades, e, neste artigo eu vou dar a minha opinião (baseada em estudos, leituras e na minha própria experiência) sobre cinco qualidades que é preciso ter para ser um bom desenvolvedor.

 

1- Você precisa querer ser um desenvolvedor e se dedicar com afinco em alcançar esse objetivo

 

As pessoas mais persistentes acabam indo mais longe do que aquelas que hoje querem uma coisa e amanhã querem outra.

 

Por minha própria experiência, digo que eu sempre fui atraído para a área de TI, eu não precisava fazer força para ficar entretido horas a fio na frente do meu TK85 com seus 16 KB de memória RAM e teclado chiclete.

 

Ficava acompanhando todas as novidades ligadas a área da informática e dessa forma vi o nascimento das BBS e depois da internet e a evolução das linguagens de programação onde iniciei pelo Algol. Sim, meu primeiro programa foi na linguagem Algol e depois Fortran que rodou no computador da Escola Politécnica da USP em 1979.

Depois iniciei com o BASIC e Dbase. Fui um clippeiro atuante usando a linguagem Clipper (ou CA-Clipper) é um compilador 16 bits da linguagem xBase para o ambiente DOS.

 

Na época não havia os recursos que temos hoje, principalmente a internet, e, dessa forma, era bem mais difícil encontrar informação sobre as linguagens e seus recursos. A principal fonte eram os livros que não eram nada baratos.

 

Existiam muitas dificuldades e muitas vezes um problema mais complexo requeria muito do desenvolvedor para ser resolvido.

 

Dessa forma, atuava na área somente quem realmente gostava e queria ser um programador, pois os aventureiros e hobistas logo desistiam diante das dificuldades.

 

Muitos colegas que iniciaram comigo a jornada naqueles tempos hoje atuam em outra área porque no fundo eles não queriam ser desenvolvedores ou não estavam dispostos a pagar o preço de ser um desenvolvedor.

 

Como em todas as áreas de TI, a de programação exige muita dedicação e um trabalho intenso.

 

Dessa forma creio que o primeiro requisito para ser um bom desenvolvedor é querer e se dedicar com afinco a esse objetivo.

 

2- Você precisa ter uma mente analítica

 

O que é uma mente analítica ?

 

 

Em uma definição não rigorosa podemos dizer que é a mente consciente, ciente de que pensa, observa os dados, se lembra e resolve problemas. 

 

Assim, você tem uma mente analítica, você é capaz de pensar, observar os dados, lembrar-se e baseando-se nessas atividades, resolver problemas.

 

Essa é uma das habilidades mais importante e necessária a um bom desenvolvedor de software.

 

Isso significa que nem todo mundo pode se tornar um bom desenvolvedor de software, mesmo realmente querendo. Visto que a mente analítica é uma grande extensão de uma capacidade inata, se você não possui essa habilidade é melhor mudar o campo de interesse.


Exercitar a mente e resolver muitos problemas de algoritmos e lógica pode aumentar o nível básico de capacidade de raciocínio analítico. No entanto, cada pessoa tem suas limitações a partir das quais não haverá mais progresso.

 

Dessa forma se você verifica que costuma ter muita dificuldade em analisar problemas e resolvê-los baseando-se na observação e dados coletados esteja certo de que isso não é apenas uma falta de prática ou mesmo de exercício e seja sincero consigo mesmo visto que admitir isso não será o fim do mundo mas apenas que suas habilidades serão melhor aproveitadas em outra área de conhecimento.

 

3- Você precisa ter uma percepção do futuro

 

 

Ter uma percepção do futuro não significa adivinhar o que vai acontecer, mas, com base no presente, prever as consequências que a sua intervenção no presente terá no futuro.

 

A criação de um produto de software é como jogar xadrez - para ganhar você precisa prever alguns movimentos à frente.

Você não deve apenas olhar para o presente, mas também para o futuro durante a programação.

Para ser um bom desenvolvedor de software você não pode apenas estar focado em um pequeno trecho de software que você está implementando.

Você não precisa apenas saber como implementar algo, mas também Porque esta fazendo isso e quais os desdobramentos que isso poderá ter.

Você precisa ver o software como um todo e não apenas como a pequena parte na qual você está trabalhando atualmente.

Você precisa entender o impacto que o seu pequeno pedaço de software vai ter no conjunto global do sistema do qual ele faz parte.

 

4. Você deve ter uma percepção orientada ao negócio no desenvolvimento de software

Um bom desenvolvedor de software, não é apenas aquele que possui grandes recursos técnicos. Você pode ser um bom programador e seu código pode ser de uma ótima qualidade, mas ainda assim, você não vai conseguir entender e satisfazer as necessidades dos seus clientes se não souber ouvir, entender e traduzir o que o cliente deseja.

 



Tenha em mente uma coisa : o produto de software tem que atender uma necessidade, tem que ter uma razão para existir, e essa razão não é aquele código legal que você descobriu e que esta doido para aplicar no projeto, não, o motivo para o software existir é atender somente aquilo que o cliente pediu. Se ele não pediu uma funcionalidade você não deve implementar apenas por achar que vai ficar legal assim.

Assim se você estiver voltado apenas para o software, para o código e não também para o cliente, você pode potencialmente causar uma série de problemas como: mal-entendidos que se traduzem em funcionalidades desnecessárias, a criação de um software com baixa usabilidade, criar definições que vão precisar de alterações de última hora nas funcionalidades, etc.

Então, o que significa ser um desenvolvedor de software orientado ao negócio ?

Existem muitos fatores que influenciam esta característica de um desenvolvedor, dentre os quais cito o que julgo mais relevantes:

Como um bom desenvolvedor você não pode se fechar no seu mundo de código e achar que por que conhece e domina técnicas de programação é capaz de resolver tudo sozinho.

 

Você tem que saber ouvir e se fazer entender usando uma linguagem que o cliente entende de forma a poder orientar e ajudar o cliente a descobrir suas reais necessidades, mostrando a eles a viabilidade técnica do projeto de software.

 

5. Você deve ter a capacidade de trabalhar em equipe

 

 

Já se foram os tempos nos quais um bom desenvolvedor de software era aquela pessoa que ficava sentado o dia inteiro na frente do computador trabalhando apenas com o código.

Para que um projeto de software seja bem sucedido a comunicação dentro da equipe é crucial.

A troca de pensamentos, ideias, conhecimento e experiência pode aumentar a eficiência e a qualidade do projeto de software.

Um desenvolvedor que não deseja ou que é incapaz de se comunicar com outros membros da equipe não vai conseguir se encaixar na equipe e no processo de desenvolvimento de software.

Estou ciente de que há muitos desenvolvedores muito introvertidos que estão fazendo realmente um grande trabalho e produzem código de alta qualidade.

No entanto as novas técnicas adotadas nas empresas de TI exigem mais do que apenas a codificação, exigem saber se expressar numa linguagem inteligível expondo os problemas, as dúvidas e as sugestões para o bom andamento do projeto.

Assim a comunicação dentro da equipe é uma das principais chaves para o sucesso do trabalho do desenvolvedor.

 

Você pode acrescentar outras habilidades a essa pequena lista mas creio que essas sejam realmente as cinco qualidades essenciais de um bom desenvolvedor.

 

Jesus lhes respondeu, e disse: A minha doutrina não é minha, mas daquele que me enviou.
Se alguém quiser fazer a vontade dele, pela mesma doutrina conhecerá se ela é de Deus, ou se eu falo de mim mesmo.
Quem fala de si mesmo busca a sua própria glória; mas o que busca a glória daquele que o enviou, esse é verdadeiro, e não há nele injustiça.

João 7:16-18

 

Veja os Destaques e novidades do SUPER DVD Visual Basic (sempre atualizado) : clique e confira !

Quer migrar para o VB .NET ?

Quer aprender C# ??

Quer aprender os conceitos da Programação Orientada a objetos ?

Quer aprender o gerar relatórios com o ReportViewer no VS 2013 ?

  Gostou ?   Compartilhe no Facebook   Compartilhe no Twitter

Referências:


José Carlos Macoratti