Sendo um programador melhor do que esta manhã – alguns aspectos para se concentrar em

Martin Schindler Segue 23 de jul · 8 min ler

Como você deve saber, existe um monte de linguagens de programação fracamente tipadas como PHP, Perl ou JavaScript. Mesmo que possa haver toneladas e toneladas de perguntas e respostas para falar sobre esse assunto, este artigo não trata de tipografia forte ou fraca, conversão de tipo implícita ou explícita ou qualquer coisa assim.

Este artigo é sobre pessoas que não têm desempenho, desempenho médio e alto desempenho… sobre profissionais e aqueles que pensam que serão… sobre programadores como você e eu, não importa se você é novato ou especialista.

Apesar de ser um desenvolvedor web focado no desenvolvimento frontend e meus anos como engenheiro de software para aplicativos baseados em PHP, bem como um arquiteto projetando software e revisando milhões de linhas de código, fiquei feliz em ganhar muita experiência sobre como os programadores se desenvolvem. Alguns florescem ao longo dos anos como uma planta delicada. Outros se levantam, dizem “oi” e imediatamente iluminam a sala. É tão dependente de uma variedade de influências extrínsecas e intrínsecas, que eu poderia falar anos a fio.

Mas em suma – cada um de nós tem seus próprios desafios e dificuldades para lidar. E a maioria das dificuldades é caseira! Nem sempre é o mau colega do outro lado, o cliente complicado, o pior café de degustação ou as condições climáticas do lado de fora da janela. Você já pensou sobre isso, você pode ser o problema? Sim? Não? Não importa qual seja a resposta, abaixo mostrarei algumas coisas que você pode querer dar uma olhada mais de perto.

Foto por Damian Zaleski em Unsplash

Sempre trabalhe duro

Alguns podem dizer que ser um programador melhor depende do seu conhecimento e da sua experiência. Claro, isso conta o quão habilidoso você é em coisas que eu declararia como “seu negócio diário”. Se você é um carpinteiro que não pode trabalhar com um perfurador, você pode falhar um dia. Você definitivamente precisa conhecer suas ferramentas e as linguagens de programação com as quais você entra em contato todos os dias.

Outros dizem que depende de quão eficaz você trabalha! Usando técnicas de gerenciamento de tempo e produtividade, como o Pomodoro, você poderá melhorar a maneira como trabalha em frente à sua tela. Não há absolutamente nenhuma dúvida sobre isso.

Outros ainda afirmam que você se tornará um programador melhor quando fizer muitos exercícios, como por exemplo katas de código. Múltipla repetição de padrões específicos faz seu cérebro trabalhar mais e até mais rápido. Isso muda a forma de lidar com tarefas, questões conceituais e até mesmo questões complexas de arquitetura e design de software.

Mas deixe-me dizer-lhe o que vivenciei até agora: todas as coisas mencionadas acima apenas ajudarão se você se comprometer com uma coisa simples … nunca pare de fazê-las!

É como aprender a tocar piano ou se exercitar no torneio local de futebol. Se você se sentar em frente ao piano e olhar para as teclas, o piano não tocará sozinho. Ou se você estiver no campo de futebol só para ver seus colegas de equipe jogarem, outro atirará nos gols.

O que diabos eu estou escrevendo, você certamente já sabe disso. Nenhum sucesso sem nenhum esforço!

Pretty-mente simples, se você acha que seria o suficiente para mostrar compromisso uma vez. Você precisa fazer isso todos os dias. E eu iria mais longe: a toda hora! É isso que faz de você um programador melhor do que seus colegas jamais serão. E acredite em mim, é tão fácil! A única coisa a fazer primeiro:

Foto de Javier Quesada no Unsplash

Mude sua mentalidade

Continuidade – em todos os aspectos de suas ações! A maneira como você escreve o código ou revisa o código do seu colega. A maneira como você age e discute. A maneira como você faz conceitos ou testa seus resultados. Você é confrontado com muitas coisas que o forçam a tomar decisões. E nesses pequenos momentos você decide cada vez mais sobre aonde algo está indo. Algo … o que significa "algo"? Bem, várias coisas como as suas ou as tarefas da sua equipe. O software ou projeto em que você trabalha. Sua carreira, quão bem sucedido você é e como seu chefe ou seus colegas o vêem.

Sua equipe, sua empresa e sua contraparte esperam que você aja como um método REST idempotente. Se você tiver que decidir sobre a mesma coisa, mas várias vezes, o resultado deve ser o mesmo novamente.

Mas isso não significa que você tenha que insistir em sua opinião ou opinião. Por favor, não me interpretem mal! É melhor dar um passo atrás, repensar sobre algo e aceitar seu novo ponto de vista em vez de ser tacanho. Pelo contrário, é uma daquelas grandes qualidades humanas a preservar. E está tudo bem em reconhecer estar errado porque você é capaz de aprender com isso.

O que eu aconselho é mudar sua mentalidade. Porque é o primeiro passo para um futuro melhor – para você e seu trabalho! Tenha a mente aberta, curioso , seja cético, mas também interessado em inovação . Uma empresa bem conhecida lançou um artigo em 2015, que lista outros componentes essenciais para a mentalidade do engenheiro . Para chamá-los todos: seja capaz de encontrar padrões, mas também veja uma nova perspectiva. Aprenda com o fracasso, cuide da maneira como você se comunica e nunca se esqueça de considerar a opinião de sua equipe .

Foto de Alvaro Reyes em Unsplash

Você nunca saberá exatamente o que fazer!

Vamos para a segunda coisa que eu gostaria que você se concentrasse. Há uma linha tênue entre ser apenas um bom programador e ser excelente. Megalomania! Claro que eu entendo, o sucesso faz você se sentir não apenas feliz, mas também heróico de alguma forma. É você que certamente resolveu uma das questões mais difíceis da humanidade …

Bem… não, você definitivamente não! Você acabou de resolver um desses problemas que muitos outros em todo o mundo já tiveram antes. Má sorte!

E assim que você começar a pensar que sabe exatamente o que fazer e como as coisas funcionam, que você é o melhor dos melhores, a elite de sua empresa ou equipe … você não conseguirá melhorar mais. Enquanto a Terra girar, haverá milhões de novas descobertas, técnicas e abordagens. Todo dia! Isso automaticamente transforma você de volta em um novato assim que você deixa sua cama nas primeiras horas da manhã.

Então, por favor, não pense que você é um profissional só porque você fez algumas tarefas.

Foto de Oliver Hale em Unsplash

Limpe seu quarto

Você é tão bom quanto o seu código. Mas se o seu código é bom, isso não significa automaticamente que você é! O que quero dizer com isso…? Para apresentá-lo de antemão: escrever código que funcione corretamente é apenas uma parte das coisas que um programador precisa fazer no dia a dia. Além disso, ele tem que cuidar do estilo do código, da complexidade dos algoritmos, convenções e diretrizes, desempenho, testabilidade e muito mais …

Completamente compreensível que não se pode sempre pensar em tudo. Mas seja honesto, com que frequência você esquece ou finge ter esquecido alguma coisa? Com que frequência você acabou de perder a limpeza do código porque é um osso preguiçoso? Para ser claro: não há desculpa alguma! No dia em que seu empregador lhe pagar seu salário, você recebe dinheiro pelo que seu chefe realmente esperava de você. Isso significa que, se o seu código não estiver na condição esperada, você precisa cuidar disso. E isso é tão fácil! Somente…

  • Revise seu código primeiro antes de empurrá-lo para o seu VCS
  • Siga as diretrizes de estilo e codificação definidas pela sua empresa
  • Leve suas tarefas tão a sério quanto uma cirurgia de coração aberto
  • Se houver um item inteiro, marque-o com um número de bilhete existente
  • Teste seu código, seja humano ou via automação

Você está feito, quando estiver pronto! E será difícil no começo. Mas por favor acredite em mim, isso vai se transformar em sangue algum dia. E assim que esse momento chegar, você perceberá que isso é bom. Que a maneira como você trabalha e age mudou completamente.

Foto de Steve Johnson no Unsplash

Tome sua opinião pessoal e queime-a

Imagine … você acabou de encomendar um esportivo preto. Assentos de couro, rodas de liga leve e um poderoso sistema de som. Sim, deslumbrante! Mas não! Oh meu Deus! O carro que você pediu e o carro que você comprou são dois totalmente diferentes! Eu acho que você será profundamente grato ao revendedor de automóveis … NÃO! Mas como isso poderia acontecer?

Bem… vamos parar por aqui e voltar ao tópico original… aquele com o código e o programador, você sabe qual o tópico que eu quero dizer.

Se o seu cliente, gerente de projeto ou chefe chegar até você com uma nova tarefa, basta fazê-lo! Se não houver coisas verdadeiramente críticas que o obriguem a levantar a mão e informar alguém, basta fazê-lo. Mesmo que não se encaixe na sua opinião pessoal , apenas faça. A menos, claro, você está sendo perguntado por sua opinião. Não é o seu software, você não paga por isso – em vez disso, você será pago! Essa é a pequena diferença!

E mais importante… fatos e motivação profissional são a única versão da verdade! Se há uma boa razão para as coisas mudarem, perfeito! Mas se é apenas uma questão de gosto … guarde para você.

Fale com os outros

Alguns param de se comunicar com qualquer outra pessoa em sua equipe por estarem ocupados e parecerem totalmente desconectados de qualquer ambiente humano. Sem dúvida, há um tempo em que você precisa se concentrar. E assim, pode ser necessário levar seu laptop e desaparecer em outra sala.

Mas se isso acontecer quase todos os dias, você terá um problema completamente diferente! Se você perder a conexão com seus colegas, perderá automaticamente a conexão com novos insights, técnicas e tendências específicas do assunto. Então, tirar seus fones de ouvido pode ser o primeiro passo na direção certa. Isso não significa que você precisa participar ativamente de uma conversa. Mas você tem a possibilidade de ouvir alguma conversa.

Ah … e não se esqueça de que seus colegas não são concorrentes! Eles são parte do todo grande como você é também. Portanto, se você tiver alguma coisa para discutir sobre o seu código, a maneira como você resolveu qualquer tarefa ou a tarefa em si – junte toda a sua coragem, vá até o seu companheiro de equipe e peça conselhos ou até mesmo suas experiências.

E se você acha que é uma questão de tempo … bem, talvez você devesse pensar em gerenciamento de tempo como escrevi acima.