6 dicas para iniciantes em um ambiente de produção de software

Publicado por Matheus Teixeira no dia dev

Aprender um novo processo de desenvolvimento ou escolher uma nova linguagem de programação podem ser tarefas bastantes difíceis se você é um iniciante no ambiente de produção de software. A seguir, listo algumas dicas que serviram muito bem na minha transição e adaptação para aprender as habilidades e ferramentas aplicadas aqui na Resultados Digitais.

fundamentos

1. Não siga o hype

Quando você está começando no universo da programação, ou mesmo mudando de linguagem depois de um longo período trabalhando em um projeto especifico, é bem comum você cair no mais perigoso dos sentimentos: O Hype. O hype é o que está na moda, o que todo mundo diz e defende ser o melhor padrão e estilo de se seguir e trabalhar naquele momento específico. É aquele famoso HMTL9 Responsive Boilerstrap JS que promete resolver sua vida.

O problema de cair no hype é que, muitas vezes, desenvolvedores novatos se veêm tentando resolver problemas mais avançados enquanto nem sequer sabem solucionar os problemas mais básicos. E isso pode deixar um sentimento de que melhorar suas habilidades se resume a tentar encaixar um círculo dentro de um buraco quadrado. Sim, é recomendado adorar pesquisar e conhecer as novas tecnologias. Mas você deve ter em mente que é necessário entender a ferramenta certa para um trabalho específico.

2. Aprenda os fundamentos

Dito isso, uma das coisas mais ignoradas por quem começa a programar - principalmente se for autodidata - são os fundamentos. Muitos vão direto para a sintaxe de uma linguagem específica. Listas encadeadas, árvores, ordenação de vetores, complexidade de algoritmos - são todos conceitos básicos que, por mais que não pareçam tão sexy, são sempre muito procurados em entrevistas de emprego.

No fim das contas, saber várias linguagens, conhecer diversos frameworks e entender de novas tecnologias vai ser sim um grande diferencial, mas, o que eu aprendi na prática, é que a maioria dos profissionais experientes se importam mais com uma fundação sólida e boas habilidades analíticas do que com o conhecimento de ferramentas específicas.

sintaxe

3. Não tenha medo da sintaxe

Aprender uma nova linguagem não deve ser considerada um empecilho para um desenvolver mas sim um desafio. Se você tem uma base sólida, aprender a sintaxe da linguagem vai ser relativamente simples. A maioria dos problemas básicos já foram enfrentados por outra pessoa e são facilmente encontrados em comunidades e fóruns específicos.

Algumas poucas horas ou, em alguns casos mais extremos dias, são mais do que o suficiente para você resolver esses pequenos problemas de sintaxe. Não tenha medo de errar e pergunte. É surpreendente a quantidade de pessoas que estarão dispostas a ajudar.

Uma das maiores barreiras para iniciantes é ultrapassar a frustração do debug, visto que a maior parte de seu tempo desenvolvendo vai ser gasto debuggando e procurando erros. O que sempre funcionou para mim foi usar esses momentos de debug como ponto de ignição para aprender novos conceitos.

4. Aprenda com seus erros

Se o problema for simplesmente sintático, você deve demorar alguns minutos para encontrar a solução. A grande oportunidade de conhecimento está nas falhas do modelo ou em problemas maiores que você deixou passar por não entender algum conceito mais complexo. Entender esses erros provavelmente estará além das habilidades de um iniciante, mas é uma ótima chance de explorar a internet, livros e documentações para aprender mais sobre o que você está fazendo.

É factível dizer que você tira muito mais lições com seus programas que nunca param de rodar, ou expressões que simplesmente não funcionam, do que com métodos perfeitamente redondos. Aprender com seus erros aumenta seu “vocabulário” e ajuda a consolidar uma gama de ferramentas de desenvolvimento e análise que serão de grande serventia ao esbarrar com problemas parecidos no futuro.

5. Use projetos pessoais

Aprender com erros é um passo essencial e não existe uma caixa de areia melhor do que um projeto pessoal. Algo que alinha envolvimento, diversão e facilidade na programação.

Para se envolver, geralmente é necessário que o projeto seja curto e tenha um final bem definido - algo que você possa medir e saber que chegou no ponto em que se esperava chegar. Divertir-se é um ponto importante nesse tipo de trabalho. Um projeto divertido e que seja de seu interesse traz muito mais motivação. E, para que você tenha ainda mais vontade de desenvolver, é interessante que o projeto possa explorar as novas habilidades e tecnologias que você está aprendendo no momento.

flow

6. Entenda o seu flow

Muitos livros e estudos já foram publicados sobre o estado de flow. Pesquisadores renomados como Steven Kotler (The Rise of Superman) e Mihaly Csikszentmihalyi (Flow) escreveram sobre o tema. O flow é aquele estado em que você está totalmente imerso na tarefa, onde você se torna mais produtivo. Para um programador novato, encontrar o estado de flow é uma das maiores dificuldades. É dito que existem alguns passos básicos que você precisa cumprir para chegar nele:

  • Objetivos claros;
  • Feedback claro e imediato;
  • Bom balanço entre suas habilidades e as habilidades necessárias para exercer a tarefa;
  • Tempo ininterrupto de concentração.

Essas dicas são valiosas para um iniciante que está em busca de como se tornar produtivo. A verdade é que cada pessoa tem suas dificuldades específicas para atingir esse estado - e é bem provável que você só irá enfrentá-las na prática.

No fim das contas, o que funcionou melhor para mim - quando procurando novos desafios e novos conhecimentos na área - foi sempre me arriscar. Ir atrás de fazer as coisas, aprender com os erros e depois lidar com as horas de pesquisas consequentes. Pra mim, aprender sozinho é excelente. Mas, muitas vezes dúvidas em que mergulhei por horas foram facilmente sanadas ao perguntar para alguém mais experiente sentado ao meu lado. O segredo final então é: não tenha medo. Em nenhuma esfera. Seja por conta própria ou através de aulas tradicionais, sempre vá atrás de conhecimento.

Matheus Teixeira

Matheus Teixeira

Software Trainee

Comentários