Como se tornar programador

Acredito que não exista uma receita de como virar um programador. Se tiver, eu não conheço.

No entanto, não feche ainda esta página, pois acredito que contando como aconteceu comigo de repente lhe dê ideias ou mesmo inspiração de como se tornar um programador também.

Se você já é um, e caiu aqui por acidente, leia este outro post, sobre como ser um programador ainda melhor.

É difícil

Primeiro, é difícil.

Não quero iludir ninguém. Sou professor do ensino superior há 6 anos. Estou no mercado de TI há 10. Já vi muita gente tentar e não conseguir.

Mas também já vi uma quantidade razoável tentar, tentar, tentar, até enfim conseguir. E acho que esse é o segredo, como verão mais adiante, não foi fácil pra mim.

Independente de ser fácil ou difícil, uma coisa é certa: o primeiro passo é descobrir se você gosta mesmo de programar.

De nada adianta lutar tanto para conquistar seu lugar no mercado de trabalho na área de desenvolvimento de software se você não vai durar nela porque não irá querer programar todos os dias.

Você realmente quer ser um programador, ou apenas está querendo fugir da sua situação atual?

Demora

Não existe um tempo exato, mas uma coisa que notei nesses últimos 6 anos aconselhando estudantes de computação sobre como entrar no mercado de desenvolvimento de software foi de que as empresas tem uma barreira enorme para contratar programadores sem experiência, mesmo que de estágio.

Assim, é comum passar os primeiros semestre da faculdade ou do curso técnico trabalhando em alguma outra área não-relacionada ou com suporte técnico em informática.

Comigo demorou 18 meses, ou 3 semestres da faculdade de Ciência da Computação.

Eu comecei minha carreira no Departamento de Informática da Secretaria Municipal de Saúde de Gravataí/RS, cidade onde resido há 18 anos. E sinceramente, não me arrependo.

Conheço programadores que tiveram a “sorte” (ou competência) de terem conseguido que seu primeiro estágio fosse direto na área de programação e hoje não sabem nem mesmo configurar o wifi em suas casas ou formatar seu computador, tarefas básicas para qualquer pessoa que tenha trabalhado em algum CPD mundo afora.

Nos 18 meses que estive trabalhando com suporte, aprendi de tudo.

A interagir com as outras pessoas, a formatar computadores com Windows e Linux, a consertar fontes de energia queimadas, fazer backup, desfragmentação e limpeza de disco, passar antivírus, configurar internet discada e banda-larga e até mesmo fazer instalação de telefonia. Perícias essas que me acompanham até hoje.

Então sim, sou muito grato pela oportunidade que me foi dada pela Prefeitura de Gravataí de um jovem inexperiente, recém saído do curso Técnico em Eletrônica a ganhar uma profissão.

Não obstante, foi como suporte técnico que eu comecei a programar também…

Autodidata

Um ponto passivo que provavelmente você já ouviu falar é de que quem trabalha com tecnologia tem de ser autodidata. Sim, aprender sozinho.

Tu tem de dar um jeito, se virar. Isso porque por melhor que seja a instituição onde você está cursando computação, ela não será ágil o suficiente para acompanhar o mercado de trabalho, limitando-se a formar uma base sólida de conhecimentos, mas não de prática ou sequer de ferramentas.

Assim, não espere que a faculdade ou mesmo o curso técnico te dê o conhecimento que você quer, pois mesmo que esteja na ementa, isso pode demorar. Neste post eu detalho sobre como aprender programação sozinho, por ora apenas entenda que você terá de buscar o conhecimento e a prática necessárias para romper a barreira da inexperiência que mencionei anteriormente.

Comigo foi assim, no primeiro semestre da faculdade consegui o emprego com suporte.

Contei umas mentirinhas básicas na entrevista, como saber mexer em Excel, coisa que eu não sabia. Bem, no primeiro ou segundo dia de emprego tive de fazer uma planilha para meu chefe, aí o bicho pegou e tive de aprender a mexer na marra. Certamente minha primeira planilha ficou uma porcaria, mas se não fosse o Google, eu não teria conseguido fazer. Procurei tudo o que eu não sabia lá e consegui realizar as tarefas que iam me passando, aprendendo uma a uma conforme a necessidade.

O primeiro semestre de estágio foi todo assim, cheio de novos aprendizados todos os dias.

No segundo semestre, já não havia mais tanta coisa para aprender sobre suporte técnico. Daí eu e o outro rapaz que trabalhávamos no Departamento de Informática começamos a montar alguns sisteminhas para controlar os chamados de suporte e outras coisas menores.

Na verdade ele fazia o sistema e eu ajudava a testar e dar ideias. Sim, porque eu só sabia programar em C para DOS, nada muito útil em 2006. Mas neste processo de acompanhar o desenvolvimento, comecei a aprender a programar, junto desse estagiário mais experiente.

E essa é a próxima dica, sempre encontre alguém que saiba mais que você, para aprender mais rápido.

Mentoria

Mesmo o melhor dos autodidatas não deve desconsiderar ter um mentor.

Um mentor é alguém que sabe mais do que você em uma área do seu interesse. No meu caso era o Maicon, o estagiário mais experiente. Ele já havia feito o curso Técnico em Informática e agora estava fazendo a faculdade, enquanto que eu havia feito o Técnico em Eletrônica, que não me ajudava muito no suporte técnico. Então eu aprendia tudo o que podia com o Maicon e este segundo semestre do estágio foi muito focado em aprender as outras coisas que um profissional de informática também podia fazer, além de suporte.

Aprendi HTML, para criar sites estáticos simples. Aprendi a mexer no MS Access, para criar bancos de dados simples e formulários, aprendi Visual Basic, para criar aplicações com interface gráfica para Windows e por aí vai.

Tudo o que eu aprendia eu compartilhava com meu colega de CPD e vice-versa e isso nos ajudou a crescer bastante como programadores, ainda que sem experiência nesta função.

Tudo isso nas horas vagas entre um chamado de suporte e outro.

Um ponto importante a salientar aqui é que eu não tinha computador. Eu somente conseguia programar quando estava na faculdade ou no serviço, pois não tinha grana ainda para comprar um PC. Nesta época comecei a juntar dinheiro para no semestre seguinte (terceiro) conseguir montar um desktop razoável.

Onde entra o próximo passo, ter onde programar.

Produtividade

Nessas idas e vindas do trabalho, faculdade e casa, eu perdia muito tempo.

Principalmente eu perdia muito tempo recomeçando os mesmos sistemas. Isso porque naquela época ainda usávamos disquetes de 1.43MB e não dava pra guardar muita coisa em um disquete, sem contar que às vezes sumia o que havíamos guardado. Assim, às vezes eu começava um trabalho na faculdade e tinha de recomeçá-lo no serviço.

Quando finalmente comprei meu primeiro computador, aos 19 anos, em 2007, eu achei que resolveria este problema. Mas acabei não conseguindo comprar um pendrive, algo caríssimo à época (um de 1GB custava R$150 e quem tinha andava com ele pendurado no pescoço pela faculdade) e meus problemas de perder os trabalhos continuavam. Então vendi meu computador e comprei um notebook.

A prestação do notebook custava 1/3 do meu salário mas o ganho de produtividade se pagou rapidamente. Isso porque neste terceiro semestre eu comecei a ficar preocupado em não ter um futuro dentro da prefeitura, uma vez que o limite de estágio era dois anos, eu já tinha feito um e era certo que eu teria de ir embora ao término (não há efetivação, apenas fazendo concurso público). E o notebook fez com que eu acelerasse rapidamente o meu aprendizado de programação, pois além de estar com ele o tempo todo (usava no serviço, na faculdade, em casa, na casa da minha namorada, etc) ele era muito melhor do que os computadores normais que estava usando até então (e olha que era um AMD Sempron 1.8GHz com 512MB RAM) e isso me permitiu aprender Java.

Não quero entrar em detalhes sobre o Java em si, o que posso deixar para outro post (ou leia esse livro), mas o fato é que já tinha ouvido falar muito dele na faculdade através do meu professor Rafael Gastão e decidi assumir um foco neste terceiro semestre: eu aprenderia Java e me tornaria um programador.

Foco

Geralmente é aqui que o bicho pega.

Até então eu estava aprendendo muitas coisas, muitas vezes não relacionadas tipo suporte, design, programação, etc e eu tinha de escolher uma para me dedicar integralmente visando conseguir uma profissão.

Eu gostava de programação desde a época do Técnico em Eletrônica então decidi que eu virar programador, no terceiro semestre da faculdade. Decidi também que me tornaria um programador Java, pois à época era o que pagava os melhores salários e despontava como plataforma líder de mercado em tecnologia para desenvolvimento multi-plataforma, se falava inclusive em uma tecnologia de TV digital que dependia muito de programadores Java para ir em frente e me pareceu a coisa certa a estudar.

Note que eu já estudava bastante, sempre fui autodidata, muito curioso e interessado por tudo que via na faculdade, mas foi aqui que defini meu foco. Avisei minha namorada (atual esposa) que nos próximos seis meses eu estudaria ainda mais do que já fazia, que talvez eu fosse vê-la menos ainda mas que valeria a pena, pois eu aprenderia Java e entraria no mercado de trabalho como programador, antes de terminar meu estágio na prefeitura.

E eu estudei pra caramba.

Baixava todas as apostilas e livros que encontrava, pegava livro na biblioteca da faculdade, “devorava” tudo que podia sobre o assunto nas idas e vindas de ônibus. Quando não estava no ônibus estava programando e isso coincidiu com a entrada de outro estagiário no meu setor, a quem deixávamos a maior parte das tarefas para ele resolver, visto que ele queria aprender e que eu já estava interessado em outra área.

Concomitante a estudar Java eu comecei a fazer sistemas para tudo que pudesse imaginar, visando aprender o lado prático da programação, como era construir sistema de verdade, mesmo que não ganhasse um centavo para isso. A ideia é que quando tivesse a oportunidade de chegar em uma entrevista, eu tivesse algo para contar ou mostrar.

E aí entra a próxima etapa da jornada: conseguir entrevistas.

Recursos Humanos

Talvez a parte mais chata foi conseguir as entrevistas. Lembro de ter procurado no Google por todas as empresas de RH das primeiras páginas, me cadastrado em todas e mandado currículo para todo mundo, sempre tentando enaltecer o que sabia de programação até o momento. Um erro comum é os candidatos colocarem tudo que sabem, mesmo o que não agrega valor algum à vaga que estão disputando.

Fiz isso no primeiro mês de estudos de Java e … nada. Claro que ninguém ia me chamar, eu não tinha experiência de mercado, tinha poucos conhecimentos em meia dúzia de tecnologias. Eu não passava nem mesmo pelo crivo do RH da empresa, não chegava nem a ser enviado para o gerente do setor analisar. Mas não desanimei e repeti o processo mês a mês durante todo o período em que estive estudando para me tornar programador.

As pessoas tendem a achar que estarão sendo chatas se mandarem currículos todos os meses. E talvez estejam sendo mesmo. Mas dane-se, o trabalho das empresas de RH é esse: receber, analisar e encaminhar currículos para seus clientes. Então todo mês eu atualizava meu currículo com o que aprendi na faculdade e por conta e depois mandava para todo mundo novamente.

Até que as primeiras entrevistas começaram a surgir no final do terceiro semestre. No entanto, parecia que eu nunca tinha os requisitos necessários…

Requisitos

As vagas para programador possuem os requisitos mais absurdos do mundo.

Eles pedem as linguagens A, B, C, os frameworks X, Y, Z, os bancos de dados 1, 2 e 3. E te pagam o salário de um estagiário. Isso é normal e o quanto antes você desencanar, melhor.

Com o tempo entendi que aquilo era o desejável, não era o requisito de verdade, e que mesmo que não conhecesse as linguagens A, B e C a fundo, mas se eu conhecesse bem a A e soubesse um pouco de B, eu poderia me virar depois para aprender o C. Isso porque depois que tu aprende bem uma linguagem de programação, ou um banco de dados, ou o que quer que seja, aprender coisas semelhantes se torna extremamente mais rápido.

Depois que entendi isso passei a ficar mais confiante e a mandar currículos para mais vagas do que antes. Descobri que algumas siglas tenebrosas não eram coisas tão complicadas assim e que nomes como ERP e CRM eram apenas tipos de sistemas, que eu podia desenvolver eles com qualquer linguagem e não precisava ter medo. E logo começaram a surgir algumas entrevistas mais interessantes e a participar de alguns processos seletivos bem promissores como na Xerox, na Softtek, Polo Films e por fim na Criterium, minha primeira vaga como programador.

Consegui!

Depois de seis meses de muita dedicação parecia que o processo seletivo em uma das empresas estava andando e acabei sendo chamado para trabalhar em uma empresa chamada Criterium Business Mobile, empresa focada em soluções móveis para pontos de venda. A empresa não era gigantesca, mas atendia gigantes e era uma grande oportunidade. Como trabalhava com mobilidade e eu adorava Java, uma linguagem extremamente portável e muito usada à época em celulares, fiquei muito feliz de ter conseguido.

Não vou entrar em detalhes aqui, deixo para outro post, mas esta primeira experiência foi muito ruim pra mim. Em vários aspectos. Primeiro que eu não ia ter chance alguma de usar Java, a empresa usava apenas C, que embora eu tivesse aprendido muito bem na faculdade, eu detestava. Segundo que era muito longe, eu tinha de levantar de madrugada, pegar dois ônibus e depois na volta eu sempre chegava muito atrasado na faculdade, o que estava prejudicando meu desempenho.

Acabei sendo demitido depois de 2 meses, a única vez que isso aconteceu em minha vida, mas não fiquei preocupado, mas sim aliviado, pois não tinha coragem de pedir demissão. Qualquer um ficaria desapontado, desmotivado, sem vontade de cantar uma bela canção, mas eu não! Essa experiência me deixou muito mais empolgado em buscar uma nova oportunidade, dessa vez com Java.

Consegui de novo!

E aqui, para encerrar este longo post, minha última lição desta fase da minha carreira: depois que você consegue o primeiro emprego como programador, fica tudo mais fácil. Consegui o segundo estágio, que falarei em outro post, após passar apenas 3 dias mandando currículos e fazendo entrevistas, desta vez eu tinha experiência e todos entrevistadores me olhavam diferente.

Assim sendo, não me arrependo da primeira vaga que não gostei e que fui demitido, pois ela me permitiu todas as outras que vieram na sequência e que me tornaram o profissional que sou hoje. Consegui outras vagas como programar ao longo dos anos, mas tudo começou naquela primeira vaga como suporte e naquela vaga que não gostei como programador. Afinal, seria muito fácil se tivesse dado tudo certo de primeira, certo?

Foi Difícil

Sim, foi difícil. Hoje é tudo mais fácil quando se trata de mercado de trabalho para mim. Mas tenho certeza que se dedicar tanto quanto eu me dediquei ou até mais, será possível para você também.

E para você, como tem sido essa jornada de se tornar um programador? Deixe nos comentários ou entre em contato se precisar de ajuda!

Se deseja, especificamente, ser um programador de apps, tenho o livro certo pra você. Agora se vai focar em softwares Java, esse aqui é o indicado.

Curso Node.js e MongoDB
Curso Node.js e MongoDB
O que achou desse artigo?
[Total: 54 Média: 3.7]

Publicado por

Luiz Duarte

Pós-graduado em computação, professor, empreendedor, autor, Agile Coach e programador nas horas vagas.