Somos trendy – pelo menos, no nosso campo profissional. Por alguma razão, muitos pensam que fazemos magia com computadores e que as coisas ganham vida com apenas um clique. Sim, estatisticamente, ganhamos acima do salário médio, mas aí temos que salientar – estatisticamente. O nosso trabalho permite-nos mudar facilmente de país, de emprego e, em certa parte, sentimo-nos bastante cobiçados. Assim dita o mercado.
Apesar de todas as ideias surrealistas criadas pela sociedade sobre o nosso trabalho, há várias coisas que precisas de ter em mente antes de entrar nesta profissão.
Mas também não é impossível. Assim que aceitares que este processo levará bastante do teu tempo, energia e esforço, mais facilmente conseguirás encontrar o caminho certo para ti. É gratificante quando finalmente dominas o ofício do código e percebes que, apesar de todos os desafios que estão para vir, estarás pronto para kung-fu neles todos.
Porém, nem tudo é sobre o código em si.
O que faz um grande profissional é a sua capacidade de visualizar toda a arquitetura de software e identificar rapidamente os blocos de construção envolvidos no processo. Daí ser tão importante compreender os paradigmas de programação, sendo a POO (Programação Orientada a Objetos) um dos mais importantes na atualidade. Além disso, ter noções básicas de UI/UX facilita o trabalho de todos: o teu, o do designer e o do resto da equipa. Saber para quem estás a criar o produto final é meio caminho andado para um bom protótipo e é exatamente isso que diferencia um produto bem-sucedido de um perdedor.
Irás aprender à medida que avanças. Não há melhor escola do que o trabalho, pois a maneira mais eficaz de aprender é fazendo. Certifica-te de que as tuas aspirações pessoais e a tua personalidade estão alinhadas com aquilo que se espera diariamente de ti. Engenheiros de software não fazem código o dia todo, todos os dias para o resto das suas vidas. Eles também têm sprints de design, reuniões com colegas e clientes ou outros projetos de colaboração. Fazem muita pesquisa e estudam bastante.
Faz o teu trabalho de casa e analisa se é algo que gostarias de fazer no futuro.
Quando acabares de estudar, continua a estudar todos os dias (o que já não deve ser nenhuma novidade para ti). Há algumas semanas, deparámo-nos com uma citação que nos chamou à atenção: “Um programador sénior é um programador júnior que nunca desistiu”. Linguagens de programação, frameworks e ferramentas são atualizados com bastante frequência. Aprende a acompanhar as últimas tendências, mas não tentes ser um super-herói e aprender tudo de uma vez. É melhor fazer as coisas direito do que rápido e mal.
Pelo bem do teu know-how e da tua vida social: participa em hackathons, maratonas, em todo o tipo de “thons” que anda por aí e faz novas amizades. Conecta-te a pessoas do mesmo ecossistema que tu (ou não, isso é lá contigo). É bastante comum aprendermos com outras pessoas graças às diferentes experiências de vida e personalidades. Isto leva-nos ao ponto número 5.
Algo óbvio, não é? Lá por passarem a maioria do dia a escrever código, muitos acham que não têm de conversar com outras pessoas. Algumas até esperam ser informadas sobre o que têm de fazer e somente entregar o resultado. A esses chamamos “task doers”, as como somos boa gente, avisamos-te desde já que isso não é verdade. Muito em breve, perceberás que a grande parte do teu trabalho é sobre colaboração e resolução de problemas e, para surpresa de absolutamente ninguém, a principal base de ambos é a comunicação.
A criatividade será a tua melhor amiga nos momentos mais desafiantes e, se não a tiveres, terás que encontrar uma maneira de cultivá-la.
O pensamento criativo é crucial quando chega a hora de arranjar soluções fora da caixa para os mais diversos desafios. A verdade é que há uma pitada de arte na própria engenharia e, como é bastante comum, os problemas raramente são simples, mas quanto maior o desafio, melhor a solução. Não treines apenas o teu raciocínio lógico com base no teu conhecimento de matemática ou ciências. Tenta desafia-te com mais frequência e vais ver que a capacidade de encontrar soluções criativas e diferenciadoras tornar-se-á cada vez mais fácil. Tudo na vida pode ser treinado, lembra-te disso.
Cliché, mas lembra-te que o trabalho desempenha um papel importantíssimo na tua vida. Passas mais da metade do teu dia a preparares-te para o trabalho, a pensar nele, ou a trabalhar. Uma considerável parte do teu tempo gira à volta do que fazes profissionalmente e, por essa mesma razão, deves procurar que isso te traga felicidade. Não é uma maratona contra a maré e não deves ficar obcecado com esta ideia. Se sentes que fizeste tudo ao teu alcance para mudar a tua atitude em relação ao teu trabalho e, ainda assim, não te sentes realizado, deves procurar aquilo que fará. Na vida, estamos em constante adaptação e a esse processo chama-se “crescimento”.
A capacidade de saber gerir o teu tempo é bastante importante para o teu trabalho. Assim que começares a aplicar o teu conhecimento no mundo real, rapidamente perceberás que é humanamente impossível resolver todos os problemas simultaneamente. Irás observar que as necessidades se sobrepõem entre si com frequência e isso pode tornar-se esgotante, se não souberes equilibrar as tarefas.
Finalmente,
Deves ser capaz de ver o quadro geral e de treinar o visionário que há em ti. Poderás sentir-te frequentemente frustrado por o código ser confuso ou porque os prazos parecem irracionais. Acredites ou não, todos nós lutamos contra isso ocasionalmente. Não te foques em criar o código perfeito. Alerta spoiler: ele não existe e lutar pela perfeição será um enorme desperdício do teu tempo. Em vez disso, foca-te em entender os conceitos, estruturas e a seres o melhor solucionador de problemas.
Nem todas as soluções são bonitas, assim como nem toda a obra-prima é útil.
No final das contas, deves entender que nem tudo é preto no branco e que não existe uma regra de ouro para o sucesso. Algumas pessoas seguem ordens e não usam muita criatividade ou comunicação no seu dia a dia. Essas pessoas são boas a executar ordens, seguir regras e princípios, não porque são maus profissionais, mas porque esse é o seu propósito e a sua forma pessoal de trabalhar. Outros irão perseguir cargos de gestão e, eventualmente, perder de vista a sua paixão inicial pelo código. Ao fim e ao cabo, todos eles terão uma coisa em comum: o amor pela tecnologia e a vontade de mudar o mundo em algo melhor. O que reunimos aqui são alguns dos fundamentos necessários para o sucesso nesta carreira multidisciplinar, mas cada pessoa tem o seu próprio caminho e fará as coisas da maneira que achar mais adequada para si.
Nem todas as pessoas desejam “bater código” para o resto das suas vidas, mas saber o básico pode ser bastante útil para o teu futuro. Os empregos mudam drasticamente. Alguns serão extinguidos com o tempo. Adaptar-se ao longo da carreira e desenvolver o pensamento crítico pode ajudar-te a superar algumas das lutas que ainda estão por vir.
E finalmente: nunca é tarde para aprender. Hoje em dia, há imensa informação disponível online e é cada vez mais fácil aprender sem pagar milhares de centenas de euros, mudar de carreira ou encontrar uma paixão lucrativa. Usa e abusa dos cursos básicos que existem online como ponto de partida para ver se é algo que realmente gostarias de fazer.
O tempo gasto a aprender nunca é tempo perdido.