Cinco característica que definem um bom programador
Ter um bom raciocínio lógico
Este é o ponto, o programador resolve problemas utilizando código para transcrever um raciocínio lógico.
Ser autodidata
Não imagine que cursos irão lhe transformar em um programador. Você precisaria gastar milhões para ficar sempre atualizado com cursos. Programador tem que ser autodidata. Se não for autodidata não tem como ser programador.
Gostar de resolver problemas
Programação é em 80% do tempo resolução de problemas. Seja o problema que o software irá resolver ou seja resolvendo problemas no software.
Saber inglês
Sem inglês o programador fica em uma fina camada de conhecimento. Infelizmente o conhecimento escrito em português neste segmento (em todos) é bem restrito. Acredito que os livros em português no assunto detêm apenas 10% de informação e conhecimento dos livros em inglês.
Gostar de estudar
Estudar é uma constante na vida de um programador, é preciso ler, pesquisar, investigar, desvendar, duvidar…
Mas além disto….
Outros detalhes também constituem um bom programador:
- Ter bom nível de concentração;
- Ser curioso ?porque isso é assim?, de onde isso vem? ou porque isso acontece?. Perguntas devem ser constantes;
- Ser disciplinado;
- Ter disposição para estudar e aprender sempre, mesmo não sendo nas áreas de interesse;
- Ser paciente, perseverante, persistente;
- Sempre desconfiar que está errado, ou, que existe uma maneira ainda melhor de resolver o problema;
- Saber ouvir os mais espertos e os que sabem menos também, sempre existe algo para se aprender;
- Não precisa ser ótimo em matemática (algoritmo nada tem a ver com logaritmo)
Este é o seu perfil?
Programação é pensamento, é ficar ali pensando as vezes horas para resolver um problema qualquer. Programadores gostam de saber como as coisas funcionam, por isso muitas vezes entendem outras áreas como se fossem dela.
Mas, se pensar tanto não é pra você, existem outros segmentos bem próximos, como banco de dados, web design, segurança e redes, manutenção de hardware e outra mais.
O que faz realmente a diferença?
Um bom programador é um cara que resolve problemas sem ficar dependendo dos outros. Faculdade? Cursos? Certificações? Tudo isso é indiferente se o sujeito sabe criar uma linda solução para um problema bem feio.
Como disse o Tio Bem ao Peter Parker (vulgo homem aranha) ”Com grandes poderes vêm grandes responsabilidades”. O programador deve ter a capacidade de resolver qualquer problema decorrido das suas soluções, bem como garantir que tudo o que fez funcione como esperado.
Programadores são pessoas referencia como provedores de solução. É normal as pessoas pedirem ajuda em praticamente todas as esferas de conhecimento, achando que o programador sabe tudo!
Responsabilidade e ética
Programadores costumam ter acesso a um grande volume de informação e conhecimento. Em boa parte das vezes informações sigilosas, portanto é preciso ter a ética como base para trabalhar nesta área. Nunca pense em fazer parte do lado negro da coisa, estes profissionais (profissionais) são percebidos no mercado com uma praga e raramente se vinculam a uma boa empresa ou nome de sucesso.
Cafeína
A xícara (ou caneca) de café é o ícone do programador. Eventualmente é necessário uma boa dose de cafeína para o cérebro “entrar no ritmo” e conseguir “botar pra fora” um algoritmo mais complexo.
A complexidade é uma constante na vida de um programador. Tanto que não se assusta com qualquer probleminha, sabe que se debruçando sobre o problema e investigando, a solução aparece e tudo se torna imensamente simples.
Onde trabalhar?
Programadores tem perfil diferente da maioria dos profissionais. São exigentes (tidos como chatos), cheios de ideias e gostam de poder criar livremente. Não gostam de ter um roteiro muito estrito para ser seguido, querem desenvolver a solução própria.
Boa parte das empresas ao redor do mundo já percebeu este perfil, portanto oferecem locais de trabalho super abertos, com jogos, espaço para conversar e brincar, horários diferenciados, comida a vontade, etc. Aqui no Brasil pouquíssimas empresas aderiram a este modelo.
A empresa ideal para um programador trabalhar é aquela que valoriza o seu conhecimento, que aposta nas suas idéias e dá espaço para a participação ativa. A Aprimorar Desenvolvimento já trabalha assim, a organização é horizontal de forma que todos participam da criação expondo suas idéias e melhorando o que já existe.
Um critério também que é dos mais importantes é a possibilidade de crescimento. Em algumas empresas o programador entre como tester e fica ali por 1 ano ou 2, sem criar absolutamente nada. Só neste tempo ele já desiste de permanecer na empresa. O programador precisa ter a possibilidade de aprender, provar que é bom e ser reconhecido por isso! Não é uma questão de tempo.