Posts Profissionais

Mercado de trabalho para programação

Ultimamente tenho recebido muitas mensagens perguntando sobre o mercado de trabalho para programadores, sobre como entrar neste mercado, se é melhor aprender Java ou C#, se é difícil conseguir emprego como programador Android, quais as linguagens mais requisitadas e até qual o salário de um programador.

Este tanto de resposta não caberia em um único post, porque esse assunto é muuuuuuito extenso, e na prática poderia ter um site inteiro só para falar disso. Mas vou tentar aqui levantar os pontos principais ao ver, dentro do que acho mais relevante para você saber.

Áreas, regiões e tipos de empresas

Antes de começarmos o mais importante é criarmos uma distinção entre diversos ambientes existentes.

Quando pensamos em regiões do país, as realidades são totalmente diferentes, em tudo. As linguagens de programação demandadas em São Paulo são diferentes das demandas do nordeste do pais, os salários entre as regiões varia completamente também, um programador no Rio de Janeiro recebe um salário praticamente duas vezes maior que um em Juiz de Fora (minha cidade), em São Paulo, mais ainda. Claro que o custo de vida também é bem maior. O que quero ressaltar é que não temos como falar em uma única realidade que será idêntica em todas as regiões.

Delphi por exemplo, é um linguagem que já teve muita demanda na minha cidade (uns 13 anos atrás) e hoje só sei de duas empresas que trabalham com ele aqui, mantendo o legado. Porém em algumas cidades ele ainda é o que mais oferece oportunidades de trabalho.

Quando pensamos em tipos de empresas, temos alguns grandes grupos; startups, fábricas de software, agências e empresas que não são de tecnologia.

Startups

As linguagens usadas serão normalmente as mais novas, mais fáceis de aprender e mais performáticas. Ao mesmo tempo os salários podem não ser os maiores quando forem empresas nascentes.

Fábricas de software

As linguagens serão na maioria Java e C# e os salários melhores, porém o ambiente de trabalho não costuma ser dos melhores, pois há muita cobrança por prazos, exigência que os códigos sigam um padrão e isso muitas vezes tira o direito de um programador novo dar sua opinião em como será feito, ou quais tecnologias usar.

Agências (de publicidade, marketing digital, eventos, etc)

Estas não seguem um padrão, mas quase sempre precisam de programadores com foco em web. Seja em PHP, Ruby ou qualquer outra “coisa” que seja rápida de se fazer algo. WordPress domina neste ambiente e existe realmente um grande volume de oportunidades. Importante perceber que uma agência não é uma empresa de tecnologia, então é bem diferente de se trabalhar em uma fábrica ou startup. Eventualmente em uma empresa destas você será o cara que mais entende de programação e poderá não ter para quem perguntar, ou com quem aprender, já que o foco da empresa não é esse. O conhecimento em si não tem tanta importância.

Corporações ou empresas de nicho

Por fim, todas as outras que não foram citadas, podem ser um escritório de advocacia, uma clinica médica, um comércio ou empresa de serviços, que precisa ter seus dados e sistemas sempre em dia. Neste tipo de ambiente é possível que você tenha que resolver mais que apenas código; precisará manter a rede funcionando, ajudar aos usuários quando não conseguirem enviar um email ou criar uma planilha no excel, buscar as melhores opções de software quando perceberem que precisam comprar algo pronto, e por ai vai. Veja como é completamente diferente das outras três empresas acima.

Portanto, tendo feito estas importantes distinções, podemos continuar.

Áreas que estão em alta

Isso irá variar do pais/região/estado/cidade. Mas algumas áreas que podemos falar são; mobile, análise de dados e inteligência artificial. Nestas três existem infinitamente mais vagas de trabalho do que pessoas para as ocuparem, o que pode nos dizer que são boas para se trabalhar.

Desenvolvimento Mobile

Seja para celulares, tablets, relógios ou outros dispositivos “móveis”, esta área está em alta nos últimos anos porque cada vez mais as pessoas estão usando estes devices ao invés do computador de mesa/notebook. As linguagens e abordagens para estes ambientes, hoje em dia, são diversas. Falando em código nativo inicialmente se pensa apenas em Java para Android e Objective-C/Swift para iOS, mas na verdade existe muito mais que isso. Kotlin por exemplo está chegando com tudo para Android. JavaScript é uma opção versátil que te leva para qualquer caminho, principalmente com React Native. C# também se tornou uma alternativa com o crescimento do Xamarin.

Se pensarmos em desenvolvimento híbrido (leia diferença entre híbridos e nativos), que é uma interface web que atende várias plataformas de uma só vez, o JavaScript é matador, pois está por trás de todos os frameworks para isso, como Ionic, Titanium ou até o Mobile Angular UI.

Falando nas oportunidades, existem vagas em todo o mundo para estes desenvolvedores. O que é preciso é ter experiência comprovada. Se seu inglês for bom e você estiver livre para se mudar, sinta-se a vontade para escolher um lugar no mundo para onde quer ir e comece a buscar oportunidades que certamente em poucos meses você estará lá.

Análise de dados

Nunca houve tanto volume de dados e informação no mundo como temos hoje, porém, é preciso pessoas que saibam como lidar com tantos dados, e que saibam analisar e tirar proveito disso. Frente a isto, tanto grandes empresas estão em busca de bons profissionais, quanto startups estão investindo em machine learning e data mining para criar novos produtos e mercados.

Neste ambiente, o SQL é por onde se deve começar, seguindo depois para tecnologias mais específicas de aprendizagem de máquina e visualização de dados.

Inteligência artificial

Tanto o Google quanto a Apple lançaram neste ano diversas novidades para desenvolvedores voltadas para I.A. Possivelmente é onde mais está havendo investimento por se tratar de uma área em franca expansão e com muita coisa ainda para ser descoberta.

Uma coisa é certa, inteligência artificial estará presente em todas as áreas de conhecimento em pouco tempo e a tecnologia é quem torna isso possível, através de programadores e analistas de dados experientes.

Quanto ganha um programador?

Isso depende de uma série de fatores como região, tempo de experiência, formações e certificações, o quão bom é em resolver problemas, quanto consegue aprender sozinho e também seu nível de inglês.

Ser formado, realmente não é um requisito intransponível, quando se é muito bom em todo o resto. Se você não tem nada a oferecer, e não é formado, ai realmente você não tem nada. Mas, se tem algo para mostrar, tem experiência (leia como conseguir experiência sem emprego), certificações ou um inglês de primeira, dai a formação é irrelevante.

As certificações provam que você é bom. Independente de qualquer outra coisa, se você é certificado, tem emprego e empresas te procurando. O problema é que você não consegue estudar para certificação… não tem como focar nisso, não é igual concurso público. As provas de certificação são difíceis justamente porque tentam filtrar quem realmente tem experiência “do dia a dia”, com problemas reais, dos que não tem, então não há livro que vá te levar a isso, apenas a prática.

Programadores resolvem problemas, é isso que fazemos 99% do tempo. Um bom programador vai sendo reconhecido com o tempo, com suas soluções, nos sistemas que já desenvolveu, nos times dos quais participou, nos projetos em seu github… o cara que é bom “emana essa vibração” em qualquer situação e é percebido por isso.

Bons programadores aprendem sozinhos. Não tem como ficar pagando curso pra tudo ou ficar esperando ser ensinado pelos outros sempre. Você faz um curso ou outro sempre que vai começar a aprender algo novo, ou quando quer aprender algo bem específico, mas em 99% do tempo, novamente, o cara bom aprende sozinho. Lendo, vendo vídeos, praticando… cada um tem um jeito de aprender e os melhores programadores são reconhecidamente auto-didatas.

Empresas multinacionais procuram bons desenvolvedores em países como Brasil e Índia, pois existem muitas pessoas com excelente qualificação nestes lugares, porém, é preciso ter um bom inglês para alcançar estas oportunidades.

Com isso tudo, o salário vai sendo construído com base em fatos. Muitas vezes vemos o glamour da área de tecnologia, de pessoas que ganham muito ou que trabalham em lugares coloridos e divertidos, porém temos que ficar ligados no tanto de esforço que foi necessário para se chegar até ali, e em quão bom o desenvolvedor precisa ser para se manter naquela posição. É um trabalho intelectual pesado.

Melhor linguagem para conseguir um bom emprego

A pergunta aqui novamente é: qual cidade pais/região/estado/cidade? Em outro post meu, “Como aprender a programar“, apresento um infográfico com vários caminhos para se escolher uma linguagem de programação, e pode ser uma pista para você.

Mas, para não deixar você completamente sem resposta, eu diria que as linguagens com maior demanda no Brasil seriam C#, Java, HTML/CSS/JavaScrip e PHP.

Agora, quanto “conseguir um bom emprego“, vai depender do que é “bom” pra você. É ganhar bem ou se fazer o que gosta? É trabalhar em uma grande empresa e ter um crachá ou ir de chinelo para uma startup? É ser líder em uma agência web ou o responsável pela T.I de uma empresa perto de casa? É ficar escrevendo requisitos por vários dias antes de começar um projetou ou meter logo a mão na massa (no código)? Mas isso é discussão pra outro post. 🙂

Ter emprego ou ter trabalho?

Até aqui falamos muito sobre empregos, vagas, oportunidades mas em hora nenhuma falamos em empreender. Afinal, você quer ser empregado ou ter seu próprio negócio?

Emprego pode faltar em tempos de crise ou incertezas, mas trabalho para ser feito sempre terá. Seja atender uma demanda de um familiar, amigo ou conhecido que precisa de um sistema para organizar a empresa, ou até desenvolver um produto que muitas pessoas possam usar e pagar por isso.

Acho importante colocar essa questão na mesa, e deixar como dica de reflexão.

Por exemplo, um programador PHP que não seja tão bom, mas que entenda de WordPress, pode fazer um site em duas ou três semanas, e receber por este serviço mais que receberia trabalhando em uma agência web. Se for esperto ou ágil o suficiente poderá fazer dois, três sites em um mês e estará ganhando mais que um gerentão de tecnologia em uma empresa de T.I. Não é brincadeira!

Outros programadores podem pensar em fazer um aplicativo, que será usado por milhões. Vamos ser sincero, não é fácil. Deve ser umas 100 vezes mais difícil que o caso acima, mas, é uma possibilidade também de empreender.

Claro que empreender tem seus riscos, mas não é o foco deste post falar disso, apenas jogar a ideia. 🙂

Vale a pena fazer faculdade? Qual fazer?

Você é bom mesmo em alguma coisa? Se você não é bom em nada, melhor fazer faculdade para ter o “papel” pra mostrar e escrever no seu currículo. Porque se você é bom, não precisa de papel.

Muitos jovens me perguntam isso, e alguns acabam concluindo que precisam da faculdade para começarem, para sairem do zero, e neste ponto eu concordo. Mas três grandes coisas podem acontecer quando se ingressa em uma faculdade de tecnologia:

Desistir

Se o cara não leva jeito, não gosta do que vê ou fica traumatizado com o Java, ele abandona e vai procurar outra área. A taxa de desistência nos cursos superiores com programação é de quase 20% por período! Ou seja, mais gente sai do que fica. Em uma turma de 40 pessoas apenas 5 irão chegar ao final. Isso é uma realidade.

Se formar

É o que se espera que aconteça mesmo né? Teremos ai pessoas ótimas se formando, mas também profissionais de merda saem destas instituições (das particulares principalmente). Mas o mercado não absorve estes caras ruins, que acabam vagando por anos com seus papeis e currículos atrás de uma “vaga de emprego”. Já os caras bons, esses já saem empregados das faculdades, já fazem estágio de verdade e terão sempre lugar no mercado de trabalho.

Abandonar a faculdade

A maioria abandona. Destes, como eu disse alguns vão pra outras áreas, desistem da programação, mas uma outra parte das pessoas resolve aprender por conta própria. Preferem isso porque percebe que o ritmo da faculdade é muito lento, lento demais e que os professores são quase todos muitos ruins, que é uma perda de tempo e que o mercado não espera tanto. Dai se lançam numa saga de estudos, cursos online, livros e projetos próprios, e acabam se tornando os melhores desenvolvedores.

Muito dos melhores programadores que conheci, vieram por este caminho. Incrivelmente, a maioria.

Como entrar no mercado de trabalho?

Sendo bom. Sendo dedicado. Se esforçando para aprender algo, produzir coisas e deixar isso disponível para que as pessoas vejam.

Uma opção é sempre ter o papel e uma centena de currículos para distribuir, e ficar correndo atrás de uma entrevista. A outra opção é ser bom e provar isso, dai as portas estarão sempre abertas para você.

Então tá bom, chega de ler posts sobre o mercado de trabalho e comece a se dedicar hoje mesmo!

Ha! Se você ainda não sabe programar e procura um curso para sair do zero, vale a pena dar uma olhada em Aprender Programação em 20 Horas.

Boa sorte!

Tiago Gouvêa

Full-stack Developer, fazendo códigos desde o século passado. Criador da metodologia "Aprender programação em 20 horas" e diretor da startup App Masters, voltada para o desenvolvimento de aplicativos. Apaixonado por tecnologia e viciado em café.

Conteúdo relacionado

Respostas (10)

Escreva uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

  1. William

    Thiago, queria saber se preciso ter faculdade na área de ti
    Quero trabalhar no exterior

    1. Tiago Gouvêa

      Alô William, isso depende da região, em algumas é requisito, em outras não.

      Dá uma escutada neste podcast, acho que vai te ajudar bastante.

      Anotei aqui pra fazer um post sobre isso. 🙂

  2. Igor

    Python, é uma linguagem que tem um mercado de trabalho ativo ? estou estudando python e queria muito saber, irei terminar o curso em 1 mes e pouco e ja começar o curso de C e terminando irei fazer um de Java, estou pensando em começar como freelancer, criar um site pessoal com um portfólio de trabalhos feito por mim para empregadores poderem ver meus trabalhos, acha que assim é uma forma efetiva de conseguir algo ?

    1. Tiago Gouvêa

      Alô Igor! Te respondi em “Python é uma linguagem com mercado de trabalho ativo?“, confere lá!

  3. Rafael

    Ótimo post !! Sobre o uso de linguagens em algumas regiões do pais é pura verdade. No meu estado (ES), a linguagem mais utilizada é a C#. A muitas vagas solicitando profissional com esse conhecimento. Já na questão da vida acadêmica, conheço amigos que desistiu da faculdade, e aprendeu a programar por conta própria, abrindo até uma empresa de desenvolvimento de software na região. Lógico que ter um canudo é bom, principalmente para grandes corporações. Algumas no exterior coloca como requisito bacharel na área de T.I, então na minha opinião é bom ter uma formação superior no currículo. Contando que o aluno não fique amarrado somente nos ensinamentos dos professores da sala de aula, e passa a ser autodidata como citou no post. O problema de algumas pessoas é entra na sala de aula, e acha que irá sair programando no dia seguinte. Muita experiência que adquiri até hoje na área foi através de praticas no ambiente de trabalho.

  4. Denis

    Ótimo artigo! Estou entrando nessa área agora, apesar de já programar pouco há alguns anos, é uma coisa que notei são que as aulas são realmente lentas, os conteúdos são poucos por aula. Creio que se um aluno estudar na velocidade da universidade estará extremamente lento quanto ao mercado e principalmente se relacionar a velocidade de aprendizagem com os autodidatas.

  5. Ian Brito

    Olá Tiago, tenho ensino médio técnico em informática, o foco principal deste curso era programação, aprendi Java, a base de C e C++, PHP, HTML E JAVASCRIPT, hoje em dia estudo Python e C#. Percebo uma grande dificuldade de conseguir vaga de programador com esse nível de formação.

    1. Tiago Gouvêa

      Não são as linguagens ou tecnologia que fazem a diferença, é sua prática. Se você tiver praticando e for bom, terá muitas vagas. Se ficar só na teoria, este tanto de siglas serão apenas.. siglas.
      Dê uma lida no meu post Projeto reais para aprender programação e também Emprego de programador (sem ter experiência) como conseguir. Acho que podem te ajudar.
      Abraços Ian!

  6. igor

    Opa, muito boa a postagem! Esclarece vários pontos. Mas discordo de um ponto: sou formado em economia e comecei a estudar programação web faz uns 9 meses. A maioria esmagadora das vagas vem exigindo formação superior na área de TI. Parece que a crise tornou o mercado mais exigente. Hoje eu cogito em fazer uma segunda graduação. Só eu que tenho essa impressão?

    1. Tiago Gouvêa

      Alô Igor! Quando você vai em um site de vagas ou coisa do tipo, SEMPRE irão pedir graduação, porque senão vai chover currículos de curiosos. Isso é fato.
      Na opção de não fazer a graduação, é preciso pensar em outras maneira de ser “percebido”, sem ser pelo processo de seleção por onde “todo mundo é igual”. É usar mais redes de contato do que enviar currículo.. se for enviar currículo, ter uma apresentação forte dizendo que é bom e mostrando logo alguma referência, como link pra um projeto, repositório ou coisa do tipo.
      Não ter diploma, com certeza, é diferente.
      Boa sorte!