Como consegui meu primeiro emprego como programador Python
Primeiramente, um Feliz Natal e que 2017 seja um ano repleto de conquistas pessoais e profissionais a todos que me acompanham. Este ano de 2016 foi muito bom pra mim em todos os âmbitos da minha vida e só tenho a agradecer a todos que qualquer forma participaram disso, você que lê isso aqui também faz parte, muito obrigado!
Meu primeiro emprego como programador Python
O Rafael Alves Duarte no post da semana passada me pediu para falar um pouco sobre minha entrada no mercado de desenvolvimento de uma linguagem que muitos dizem não ter mercado.
A primeira coisa que eu tenho a dizer é: O que o Bugginho Developer fala é zueira, tem muita vaga para desenvolvedor Python, tanto no Brasil (concentrado no eixo sul-sudeste, infelizmente) quanto no mundo todo (especialmente EUA, Canada e UK).
É fácil conseguir uma vaga? Não. É impossível? Também não.
Um pouco sobre mim.
Eu trabalho com Python a 2 anos e meio, completados agora em Dezembro/2016. Durante 8 anos da minha carreira, eu trabalhei como Analista de Redes e com gerenciamento de servidores e ativos de redes. Tenho apenas formação técnica na área de redes e não pretendo fazer curso superior.
Decidi entrar de cabeça no desenvolvimento depois de perceber que minha carreira estava estagnada e não enxergava nenhum crescimento a médio-longo prazo, além do mais, minha esposa estava grávida e o salário não ia cobrir com tranquilidade os custos que iriam vir a cavalo.
Porque Python?
Na epoca que decidi me tornar um desenvolvedor, o Ruby junto com o Rails estavam em alta, em meados de 2013-2014 e como todo bom iniciante que quer um aumento na renda, fui em busca de conhecimento na linguagem que mais estava em alta. Adquiri a santissima trindade do Ruby/Rails (Pickaxe, Agile Web Dev with Rails e Crafting Rails Apps) e comecei a estudar feito um louco.
Só tinha um problema: aquilo não entrava na minha cabeça! Não o Ruby em si, que é bem parecido com o Python, mas o Rails. Tudo parecia magia negra, obra do inimigo, coisa de maluco e então, como não tinha outra motivação se não a financeira, desisti!
Parei para refletir na minha escolha e cheguei a uma conclusão. Eu já utilizava Python para escrever scripts para meus servidores Linux e alguns para Windows, porque não me especializar nisso? Foi ai que eu comecei a pesquisar sobre o que o Python poderia fazer.
A área Web.
Junto com a minha pesquisa, eu uni o util ao agradável. Eu já havia construído alguns sites estáticos para levantar uma grana e gostava muito (!!) daquilo, fui procurar então como se comportava o Python para Web. Descobri alguns frameworks bem interessantes na época, Web2Py, Django <3, Flask, Bottle e etc...
Tendo em mãos o poder do Python para web, decidi que iria trabalhar com Django, tanto pela sua comunidade (a qual eu sou apaixonado), pelo seu poder e, obviamente, pela sua presença de mercado. Só que eu não queria ser um programador Django, eu queria ser um programador Python e por isso, dediquei meus esforços a me aprofundar no Python a um nível que fosse confortável para entender como o Django funcionava.
Estudei Python durante uns 6 meses e então parti para o Django. Fiz o tutorial oficial, assisti palestras, videos, tutoriais, baixei apostilas e livros sobre Django disponibilizados gratuitamente. Tudo foi mágico, quando eu estudava Django parecia que estava lendo um romance e aquilo não parecia mágica nem nada, era pura e simplesmente amor em forma de código. Sim, eu sou apaixonado a este nível.
Depois de algum tempo estudando Django, uns 4 ou 5 meses eu acho, senti que estava na hora de me desafiar e começar a colocar a mão na massa.
Os primeiros projetos.
Depois de tanto estudar, decidi que estava na hora de novos desafios. Comecei então a divulgar meus serviços entre meus amigos e oferecer soluções gratuitas para alguns para ganhar experiência. Eu sei, muita gente vai dizer que é errado trabalhar de graça e que num sei mais o quê, mas a realidade era que eu precisava de experiência, e oferecer trabalho em troca dessa experiência foi o que me proporcionou estar onde estou hoje.
A pressão de ter projetos para desenvolver foi a minha maior amiga, prazos, problemas que não havia enfrentado, bugs bizarros, erros que nunca tinha visto, regras de negócios desconhecidas e suas implementações. Tudo isso me deu uma bagagem legal para conseguir meus primeiros jobs pagos, sempre por indicação.
Depois de uns 2 anos trabalhando como freelancer paralelamente, devido a queda da demanda, decidi procurar emprego fixo e assumir de vez a minha carreira como dev.
O primeiro emprego como desenvolvedor.
Formatei meu curriculo e comecei a procurar vagas em todas as fontes que eu conhecia, grupos do google, do Facebook, indeed, Djangogigs, Django jobs, Google e por ai vai. Mandei uns 30 curriculos em 1 semana, eu acho. Depois de algum tempo recebi duas solicitações de entrevista, uma para a atual empresa que trabalho, a Finxi e outra para uma empresa da Inglaterra.
Fiquei extremamente empolgado! Tudo que eu queria era uma chance de mostrar que eu sabia fazer aquilo! Depois de duas entrevistas iniciais, passei para o teste prático, que era minha primeira meta, mostrar que eu sabia fazer aquilo. A falta de um curso superior nunca pesou, sempre a minha experiência falou mais alto, talvez a história de um cara que estava mudando de área fosse interessante, não sei, sei que cheguei onde queria, no teste prático.
Depois de responder os dois testes práticos veio ansiedade da espera, até que 1 semana depois, recebi o email que tanto esperava. Recebi uma proposta para trabalhar home-office como Desenvolvedor Python. Era um sonho, tudo que eu queria. Pedi demissão do meu trabalho como Analista de Redes e hoje, a exatos 6 meses trabalho como Dev Python, um sonho realizado.
Ainda consegui chegar na fase final da empresa da Inglaterra, mas infelizmente não passei no último teste.
Meus planos e projetos atuais e futuros.
Pra 2017, pretendo palestrar nos encontros locais daqui de Recife, em especial no PUG-PE (Python user group) e ser instrutor no Django Girls Recife, tenho alguns projetos em mente que pretendo lançar até o segundo semestre e para 2018 minha meta é palestrar na Python Nordeste e em 2019 na Python Brasil. A minha meta final é palestrar na DjangoCon ou Pycon em 2020, estou estudando arduamente para isso. Pretendo ir para a Python Nordeste e Python Brasil se possivel em 2017, mas se não der, tentarei ficar o mais próximo possível da comunidade.
Dicas para quem quer entrar na área.
1 - Estude. Sim, estude muito.
2 - Não só estude, pratique, muito, mas tipo muito mesmo. Apenas com a prática vai ser possivel fixar o aprendizado. Não se preocupe em reinventar a roda nem se deixe limitar porque alguem já fez algo. Faça você e coloque TUDO no Github, ele é seu MAIOR amigo. Não consigo expressar aqui o tamanho da necessidade de um Github para um profissional de desenvolvimento.
3 - Não se preocupe apenas com dinheiro, isso não é motivação suficiente. É preciso paixão, determinação e disciplina no que você faz e o dinheiro é o resultado de tudo isso junto. Quem trabalha apenas por dinheiro, uma hora vai cansar e desistir no primeiro grande problema. Eu aprendi a usar Oauth2 no Django em 1 dia, quando apareceu a necessidade. Tive que estudar a documentação fraca da web e os exemplos da documentação oficial, me demandou quase 12 horas(!!) de leitura e falhas, mas consegui implementar no meu projeto. Talvez se tivesse fazendo por dinheiro não tivesse a determinação para faze-lo.
4 - Lembre-se, você está começando a trilhar o seu caminho, ele vai ser arduo, cheio de espinhos, de recrutadores que não dão feedback, de gente mal-educada, de trolls, mas no final, tudo vai valer a pena se for feito por amor. Os frutos você colherá no futuro, e eles serão doces, macios e deliciosos, pode confiar.
5 - Aprenda a lidar com a frustração e com a ansiedade. Elas vão te acompanhar frequentemente, seja num processo seletivo sem resposta, seja numa feature que não se comporta como você esperava ou num bug que não te deixa dormir. Persista, resista, o prêmio é maior! Ah, leia sobre a sindrome do impostor, ela é amiga de todo desenvolvedor. heheheheh
6 - Você vai errar mais do que acertar, isto é um fato. Lide com isso.
7 - Procure um motivo pelo qual trabalhar, trace metas claras na sua cabeça, faça resoluções de final de ano (esta é uma ótima época para isso), tente se envolver com a comunidade e o mais importante: Não se isole. Procure pessoas que estão começando e como você, estejam precisando de ajuda. Faça pair-programming, participe de grupos de estudos, procure sempre se renovar e não cair na rotina.
8 - NÃO FIQUE NA SUA ZONA DE CONFORTO! Saia dela imediatamente, supere seus limites, procure problemas para solucionar, se algo lhe incomoda é porque você está evoluindo. Sua vida começa depois da sua zona de conforto.
Considerações finais.
Não tem muito mais o que falar né? Acho que o post ficou até longo demais, hehehehe. Tudo que posso lhe desejar é boa sorte e disciplina. Apaixone-se pelo que faz. Se precisar de ajuda, manda um e-mail que eu vou responder assim que possivel! Manda mensagem no facebook também ou apenas comenta ai no post que eu respondo assim que possivel!
Não deixe que ninguém diga que você não pode fazer nada. Não tenha medo de tentar, o fracasso é um resultado não esperado e não a falta de um, refaça seu caminho e continue!
Abraços meus amigos e um Feliz 2017 e espero que eu possa ter ajudado de alguma forma!
Até a próxima e Keep Coding!