DEV Community

rafaelmoraespereira
rafaelmoraespereira

Posted on

Dicas para um Desenvolvedor Iniciante

Image description

ALERTA INICIAL

Para além da área de computação, em se tratando de tecnologias de uma forma geral se faz obrigatório dominar a língua inglesa - ao menos tão mal quanto se consiga dominar a língua portuguesa. Aprender inglês não é sobre aprender outro idioma, é sobre se tornar um cidadão do mundo.

Everyone has a plan until they get punched in the mouth. - Mike Tyson

I. PRIMEIROS PASSOS

  • Entreviste especialistas na sua área para entender o que é preciso saber e quais são as habilidades mais valiosas. Dedique um décimo do seu tempo para planejamento. O foco deve ser o que a pessoa fez, e não o que ela acha que você deveria fazer - as respostas são bem diferentes. Pergunte sobre o que eles fizeram de diferente em relação ao que as outras pessoas estavam fazendo.
  • Especifique um objetivo claro e realista e faça uma engenharia reversa para entender como chegar a ele. Registre o seu progresso e não se compare com os outros!
  • Seja criterioso mas não se limite a uma única fonte de recursos (vídeos, livros, blogs, etc).
  • Se puder, encontre um mentor - nunca mais que um - ou uma comunidade.
  • Desde o começo encontre maneira de praticar seus conhecimentos e habilidades. Mesmo que você precise usar um simulador.
  • Seja um amador. Ou melhor, mantenha-se sendo um amador pelo resto da sua vida! Não existe nenhuma desvantagem nisso.

II. ORGANIZE O SEU TEMPO

  • Trabalhe com time-blocking (quando) sessões 25/5 ou 45/15 (idealmente 90/15). Mas não é sobre quantas horas, é sobre prática deliberada. Nela: i. existem objetivos claros e bem-definidos (parametrizados). ii. a submissão ao trabalho foco é total. iii. ocorre fora da zona de conforto (85% de acertos ou 5/6).
  • Faça planejamento de 12-semanas e defina limites para as horas de trabalho - shutdown complete! Se você não se sentir completamente esgotado, a consistência do trabalho de longo-prazo será mais vantajosa. Trate a sua mente como o atleta trata seu corpo.
  • A primeira palavra-chave é a consistência. Apareça todo dia, com a mesma rotina (se possível)! Faça diariamente, progrida em dificuldade, compartilhe conhecimento, ajuste o foco, repita - esse é o ciclo.
  • A segunda palavra-chave é indistraível. Opere com alta intensidade, sem distrações. Tente entrar no estado de flow.

III. EXECUTE SEU PLANO

  • A escolha da linguagem com a qual iniciar é superestimada. Qualquer uma delas é apenas uma ferramenta na mão do programador - que em essência é um resolvedor de problemas - e por isso cada uma traz benefícios e desvantagens que variam de acordo com o contexto da solução. Em dúvida comece com Python, C ou Java, e você estará bem.
  • Tenha uma postura ativa e gaste ao menos metade do seu tempo construindo algo. Prática com mãos na massa (hands-on practise)! Faça pequenos projetos, construir um portfólio é o que realmente conta. Não fique obcecado com a teoria no lugar da aplicação. Muitas coisas são mais fáceis de fazer do que de explicar.
  • A melhor maneira de tomar notas é construindo códigos com muitos - muitos - comentários. As suas notas, por mais organizadas que sejam, não serão lidas por mais ninguém. Mas potenciais empregadores e programadores irão olhar o código que você produziu. Ainda, se possível, escreva documentações e aprenda um pouco de markdown code. Você pode consultar outras documentações e usá-las como exemplo.
  • É normal esquecer coisas. Não enfatize demais a memorização de sintaxes. Apenas mantenha suas mãos sujas enquanto constrói pequenos projetos e recebe feedback! Não pule exercícios. Ajude outras pessoas a resolverem os problemas dela. Escreva sobre algo que aprendeu. Você pode construir uma reputação e relações de confiança compartilhando o que você sabe! Use blogs, vídeos, entrevistas, podcasts, webminars, artigos, apresentações em conferências. Não colecione cursos.
  • Procure por plataformas que ofereçam desafios. É a melhor forma de active recall.
  • Evite estudar coisas demais num curto espaço de tempo. Não existe o método matrix!

You don't become confident by shouting affirmations in the mirror, but by having a stack of undeniable proof that you are what you say you are. Outwork yourself doubt. - Unknown Author

IV. REVISE SEUS RESULTADOS

  • Após finalizar, analise e revise seus projetos. O que poderia ter sido feito melhor? O que deu errado?
  • Entre os projetos que sucederem, o que você reteve para ser reaplicado no futuro? Identifique coisas que são usadas recorrentemente e trabalhe a excelência nesses fundamentos.
  • Você não é elevado ao nível dos seus objetivos. Você é rebaixado para o nível da sua rotina. Construa hábitos!
  • É normal se sentir atordoado (overwhelmed) com tantos conhecimentos. Evite analysis paralysis e aprenda sob demanda ou just in time learning). Sempre se pergunte: "É realmente necessário mais informações ou é preciso apenas agir baseado em informações que já possuímos?"

"Waste no more time arguing what a good man should be. Be one." — Marcus Aurelius


PLATAFORMAS DE DESAFIOS INDICADAS

Top comments (0)