quinta-feira, 3 de maio de 2018

Entenda por que o código que você escreve não te define

Entenda por que o código que você escreve não te define
Entenda por que o código que você escreve não te define
Quando a gente começa a trabalhar com TI é quase sempre pelo mesmo motivo: a gente curte muito tecnologia. Gostamos de descobrir novas maneiras de resolver problemas, de explorar nossas habilidades, de mostrar que somos muito bons fazendo alguma coisa.

Conforme vamos ganhamos experiência, passamos a observar a quantidade de coisas bizarras que se repetem nos projetos. Mas, logo de cara, a gente costuma acreditar que é um problema localizado, que é culpa da empresa em questão! Não queremos desanimar com a área que amamos, afinal ela é “a área que mais cresce no mercado, onde faltam profissionais qualificados e qualquer um pode ganhar 3k no primeiro trampo como Jr.”. 

Só que com o passar dos tempos, percebemos que nossos amigos em outras empresas passam pelos mesmos dramas. Estamos estressados, cansados, tentando empurrar o trabalho com a barriga e muitas vezes pensando em trocar de carreira para algo menos caótico.

Mas e se tudo que te interessa for ligado à tecnologia?
Desistir não vai ser uma opção, certo?

É por isso, que este artigo traz dois pontos muito importantes para quem não quer se tornar refém do mercado de TI: a necessidade de uma mudança de posicionamento e como você pode fazer isso.

“Perfeccionismo” é a desculpa de quem não entrega

Desde cedo, somos treinados para valorizar o conhecimento técnico acima de tudo! Precisamos sempre estudar mais, conhecer as linguagens do momento, estar atento à todas as novidades... E se a gente conseguir fazer tudo isso, ótimo! Quanto mais conhecimento técnico tivermos na área de programação, melhor... 

Mas neste processo, geralmente nós nos esquecemos que o conhecimento deve servir para que a gente faça coisas melhores. O fazer é fundamental e quando a gente não se liga nisso, surge aquela paranóia de querer estar sempre certo, buscando constantemente a solução perfeita. Isso pode parecer perfeccionismo, pode parecer zelo, mas só parece!

A verdade é que fazer software é difícil. E se o software for bem sucedido, ele nunca ficará realmente pronto. Sempre terá algo a mais para ser feito. A certeza especificada em um dia, vai certamente se transformar na demanda de mudança no dia seguinte.

Com tanto dinamismo, a única certeza é que muitos erros acontecerão! Por isso o processo de desenvolvimento precisa acolher o erro. Mais que isso, precisa contar com ele. Programar é mais do que escrever um código que roda. É um exercício constante de controle de risco.

Note que a questão aqui não é fazer algo meia boca… Não é ficar criando gambiarras e empurrando os problemas para outras pessoas. A questão é aprender uma porrada de coisas que vão te levar além da programação. 

Você precisa entender o impacto que o seu código terá para o cliente, para a empresa e para o projeto. Desta forma, você vai conseguir dividir o problema em partes e entender o que precisa ser feito para que ele seja solucionado da melhor forma possível, sem atrasos, retrabalhos e sem desperdícios e respeitando as restrições financeiras e de tempo.

Enquanto isso não for entendido, a gente vai ouvir muita gente falando da falta de reconhecimento profissional, reclamando da sensação de terem parado no tempo trabalhando sempre nos mesmos projetos ou com as mesmas ferramentas defasadas, sendo sobrecarregadas com excesso de trabalho e tendo que deixar a família de lado para dar conta de uma rotina desgastante. 

Conhecimento sem atitude é inútil

É comum falarmos dessa cultura de desperdício que existe no Mercado de TI como se ela fosse o problema em si. Mas ela é só um sintoma de que a gente tá abordando a tecnologia de uma forma ineficaz. 

As pessoas ainda encaram o software como um objeto estático no tempo, como o reflexo fixo de uma especificação, e se esquecem de que enquanto houver interação, as coisas vão mudar e é por isso que a forma de fazer o trabalho é tão importante. O programador hoje precisa ter um posicionamento que mostre que ele é muito mais do que uma máquina de transformar café em código. 

O conhecimento é necessário, mas atitude é essencial! Você pode ter a lógica que for, saber a linguagem que for, dominar todas as ferramentas, mas se você não se posicionar como um solucionador de problemas em vez de um executor de demandas vai continuar sendo mais um na corrida dos ratos tecnológicos.

Um exemplo disso é que um desenvolvedor com pouca experiência, mas com a visão de solucionar problemas, pode se revelar um excelente profissional, mesmo que tenha um código pouco sofisticado. Em contraste com isso, um programador experiente em algoritmos e linguagens, mas que foca apenas no código e perde o foco no problema que precisa ser resolvido, pode se revelar incrivelmente contraproducente.

Na prática, o que a gente precisa ter em mente é que: o código que você escreve não te define, o efeito dele sim. O que define um bom programador é sua capacidade de usar suas habilidades na programação para resolver problemas! 

Mas isso não é algo que a gente aprende na faculdade… E é tão cheio de sutilezas, que o Henrique Bastos do Welcome to the Django gravou uma videoaula detalhando qual o conjunto de habilidades e a postura que o programador precisa desenvolver para deixar de ser refém do mercado de TI e passar a se relacionar com o trabalho de programar de uma forma positiva.

Nele, ele explica:

- Por que a carreira estagnada de muitos desenvolvedores fica estagnada.
- Quais são as ciladas e barreiras que aparecem no caminho de quem quer crescer na área de desenvolvimento.
- Por que quem está começando tem que entender como “se joga o jogo” para não perder tempo e nem acabar perdendo a chance de se desenvolver no mercado;
- Qual a importância de você se organizar pessoalmente e profissionalmente para se diferenciar e agarrar as oportunidades.





> Comunidade Brasileira de Sistemas de Informação
> Fundada em 13 de Outubro de 2011
> E-mail: comunidadebsi@gmail.com
Local: Manaus, Amazonas, Brasil.

‍



Geeks Online: