Como te tornares num melhor software developer com projetos pessoais
Eu percebo. Depois de um longo dia de trabalho a escrever código, como é possível ainda termos o foco para um esforço extra num projeto individual? Entre as numerosas horas passadas a decifrar código, a motivação pode escassear. Como superar estes obstáculos foi a minha motivação para escrever este artigo. Partilho então alguns conselhos que reuni a partir da minha experiência pessoal.
O poder dos projetos pessoais na melhoria das tuas hard skills
Trabalhar em algo que nos faz levantar da cama todas as manhãs sem sacrifício é algo super importante quando estamos a definir o nosso caminho no universo de software. Os projetos pessoais não têm de ser complicados, mas certamente ajudam no caminho para nos tornarmos melhores software developers. Descobre como podes melhorar as tuas hard skills no teu trabalho tech seguindo apenas uma paixão pessoal em quatro simples passos.
1. Escolhe o divertimento e a curiosidade
Certifica-te de que não estás a começar um projeto genérico e desinteressante. Completar este tipo de projetos é difícil e começar algo que não nos interessa ou estimula é a receita para o falhanço. Vai dar uma caminhada, alimenta-te e limpa a tua cabeça antes de te começares a dedicar ao projeto.
Este é o teu tempo para aprender! Experimenta aquela framework que te desperta curiosidade, aquela biblioteca que procuras compreender ou explora uma nova linguagem de programação. O novo projeto não tem que estar diretamente ligado ao teu trabalho, mas deve ser algo que te soe divertido.
2. Cria o teu espaço de recreação
Neste projeto pessoal não há nenhuma code review além da tua. És apenas tu, a experimentar e a testar livremente. O código pode ser tão feio quanto queiras e ninguém tem que o analisar. Tenta diferentes abordagens no processo, dá passos atrás, refaz, faz refactoring no código e pinta fora das linhas.
Há várias formas de atingires o mesmo objetivo quando se trata de programação, por isso tenta as abordagens que quiseres. Não tens de seguir os mesmos padrões que usas no trabalho. Experimenta programação funcional ou OOP (Object-Oriented Programming) se não tiveste oportunidade ainda de experimentar estas opções.
Se, a determinada altura, pensaste quão interessante seria criar uma aplicação com uma função específica, aproveita e cria-a tu. Explora a tua criatividade e diverte-te!
3. Começa do zero
Vê as coisas pelo lado positivo. Tu podes tomar todas as decisões: setup, estrutura, arquitetura, tech stack… Começar do zero pode parecer difícil no princípio, mas aprender a construir algo desde o primeiro passo até ao resultado final dá-nos insights muito relevantes sobre o processo de desenvolvimento no seu todo.
Os projetos pessoais requerem know-how em cada fase do processo de desenvolvimento. Quando começamos uma aplicação web, por exemplo, vamos ter de decidir qual o serviço de hosting a utilizar, que tipos de recursos vamos precisar, como manter múltiplos ambientes de deployment e muitos outros aspetos. Esta é uma das melhores formas de nos expormos a um número maior de aprendizagens e competências, conferindo-nos experiência útil para usarmos depois no contexto profissional.
4. Escolher um projeto
Aí vem a parte mais difícil (talvez). Na maioria dos casos pode ser difícil comprometer-nos com uma ideia e levá-la até ao final. Quando estiveres a “sofrer” com esta escolha, tenta replicar alguma aplicação. Começa por fazer uma réplica com uma tech stack que achas interessante ou útil, de forma a pores as células do teu cérebro a fervilhar. Não precisas de ter uma ideia de milhões de dólares, mas sim algo com que possas começar.
Quando vais começar numa posição nova, num trabalho novo, pode ser interessante desenvolveres uma aplicação utilizando as tecnologias com que vais trabalhar. Esta abordagem ajudou-me a mim, por exemplo, a tornar-me num melhor developer.
Comecei por criar um motor de jogo em C++ usando Lua como a linguagem de scripting, reforcei os meus conhecimentos de OpenGL, shading language, C++, memory management, multithreading e também aprendi a integrar Lua em C++. Este foi o meu primeiro grande projeto pessoal desenvolvido nos tempos livres.
A partir daí, já fiz várias contribuições para Open-Source Software e algumas pequenas aplicações. No final, acho que tudo isto teve um papel crucial no meu desenvolvimento profissional e evolução na Fabamaq.
Começa tu também a desenvolver algo divertido e a aprendizagem virá naturalmente!
Artigo de blog escrito por Marco Pinto, Senior Software Developer da Fabamaq
Com mais de 230 Gamers na sua equipa, a Fabamaq tem várias oportunidades de emprego IT para diferentes áreas da sua operação. Da matemática ao desenvolvimento de jogos, passando pela gestão de projetos e o desenvolvimento de software há vários desafios profissionais para explorares. Não percas aquele que pode ser o jackpot da tua carreira!