Como conseguir um emprego de engenheiro de software no Google e em outras empresas importantes de tecnologia

Muitas pessoas me perguntam como conseguir um emprego no Google como engenheiro de software. Aqui está um artigo explicando a estratégia que eu usaria.

Você pode usar a mesma estratégia para conseguir um trabalho de engenharia de software, não apenas no Google, mas também em outras empresas de tecnologia de ponta, como Amazon, Microsoft e Facebook.

Neste artigo, mostrarei um processo de seis etapas para conseguir um emprego em uma dessas empresas. Ao longo do caminho, também vou discutir:

Como aprender a codificar

O que aprender depois de aprender a codificar

Como obter seu primeiro emprego ou estágio em codificação

As melhores maneiras de se candidatar a empregos de engenheiro de software

Como se preparar para entrevistas de programação

É importante obter um diploma em ciência da computação?

É importante ir para uma universidade de ponta?

OK, vamos começar!

Etapa 1: Aprenda a codificar

Esta é a qualificação mínima absoluta necessária para se tornar um engenheiro de software.

Para isso, recomendo que você comece com um site interativo, como Codecademy ou freeCodeCamp. Você pode aprender a maioria dos fundamentos da programação nesses sites. Ouvi dizer que o SoloLearn também é bom.

Depois disso, usaria tutoriais em vídeo para aprender tópicos mais avançados. Eu recomendo sites como YouTube, Pluralsight, Lynda.com e Udemy para isso. Nesses sites, você poderá encontrar tutoriais sobre tópicos como desenvolvimento da Web, desenvolvimento para dispositivos móveis e desenvolvimento de jogos, dependendo do seu interesse.

terapia de casal nova iguaçu

Qual linguagem de programação devo aprender primeiro?

Minha resposta curta seria escolher JavaScript ou Python, mas isso realmente depende dos seus interesses. Eu tenho uma resposta mais longa para esta pergunta neste vídeo.

Etapa 2: Trabalhe em alguns projetos pessoais

Depois de seguir alguns tutoriais de programação, você deve criar alguns projetos pessoais para praticar o que aprendeu.

Encontre algo que você esteja interessado em criar.

Por exemplo, se você gosta de fotografia, talvez possa criar um site de portfólio para todas as suas fotos. Se você gosta de negociar ações, talvez possa criar um sistema que analise os gráficos de ações para você. Ou, se você gosta de resolver problemas, pode competir em uma competição de codificação.

Quando você trabalha em um projeto, primeiro faça uma terapia de casal nova iguaçu. Se você ficar preso, obtenha ajuda de outras pessoas usando recursos online ou offline. Por exemplo, você pode usar o Stack Overflow para fazer perguntas técnicas específicas, se ficar preso em algo relacionado à programação.

Etapa 3: Obtenha seu primeiro emprego ou estágio de programação

Depois de criar alguns projetos pessoais, você poderá conseguir seu primeiro emprego ou estágio em programação. Isso significa que você terá alguma experiência antes de começar a entrevistar com as principais empresas de tecnologia.

É possível conseguir seu primeiro emprego em uma das principais empresas de tecnologia, mas é muito mais fácil e mais comum obtê-lo em uma empresa menos conhecida primeiro.

As melhores maneiras de se candidatar a empregos de engenheiro de software

Simplesmente candidatar-se a empregos on-line não é necessariamente a melhor estratégia, porque é o que praticamente todo mundo faz.

Em vez disso, recomendo usar o LinkedIn e a rede pessoal para obter seu primeiro trabalho de programação.

No LinkedIn, encontre recrutadores da empresa em que está interessado em trabalhar. Em seguida, pergunte a eles se você está qualificado para a posição em que está interessado. Você também deve perguntar como você pode se preparar melhor se ainda não estiver qualificado.

Para redes pessoais, recomendo sites como o Meetup para conhecer engenheiros e recrutadores em empresas locais.

Espere, isso não é tudo

O uso do LinkedIn e da rede pessoal funcionará bem se você estiver se inscrevendo em empresas de pequeno a médio porte. No entanto, descobri que essas estratégias são menos eficazes para empresas mais populares, como Google e Facebook.

Para essas grandes empresas, recomendo combinar as três estratégias a seguir:

Feiras de carreira e eventos de recrutamento em universidades perto de você

Seja indicado por amigos que trabalham em uma dessas empresas

Basta se inscrever on-line

terapia de casal nova iguaçu

A combinação de todas essas estratégias ajudará você a aumentar a chance de obter uma entrevista com uma das principais empresas de tecnologia.

A propósito, não sei exatamente por que o LinkedIn é menos eficaz com essas grandes empresas, mas acho que pode ser porque elas recebem muitas mensagens. Basicamente, eles são muito populares lá!

Etapa 4: Aprenda estruturas e algoritmos de dados

Empresas de tecnologia de ponta como Google e Microsoft costumam fazer perguntas sobre estruturas de dados e algoritmos em suas entrevistas. Então, se você ainda não aprendeu sobre eles, deveria.

Para aprender o básico, recomendo minha série de vídeos sobre estruturas de dados e algoritmos. Está tudo no YouTube. Fiz esses vídeos para facilitar ao máximo o conhecimento deste tópico.

Como existem apenas sete vídeos nesta série, você precisará de mais material para aprender tópicos mais avançados.

Existem várias opções populares para isso, incluindo:

Estes cursos da Stanford sobre Coursera

Este curso do MIT no YouTube

Este curso Udacity do Google (baseado em Python)

O Algorithm Design Manual de Skiena (um livro)

Algoritmos (outro livro)

Você deve tentar alguns deles e continuar com o que mais gosta.

Etapa 5: prepare-se para entrevistas de codificação

As entrevistas de codificação em empresas como Google e Microsoft são difíceis, mas é bastante simples se preparar para elas.

Depois de ter um entendimento sólido das estruturas e algoritmos de dados, recomendo esses três recursos para a prática:

Leetcode – uma plataforma interativa para praticar problemas de entrevista de codificação.

Quebrando a entrevista de codificação – um livro popular sobre entrevistas de codificação.

Problema de codificação diário – uma lista de discussão que fornece um problema por dia.

Depois de praticar sozinho por algumas semanas, comece a fazer entrevistas simuladas.

Como fazer entrevistas simuladas

Basicamente, junte-se a seus amigos e dê problemas entre si com os recursos que mencionei acima.

Resolva cada problema no papel ou em um documento do Google. Explique sua solução para seu amigo.

Certifique-se de praticar como entrevistado e entrevistador para que você possa ver como é estar no lugar do entrevistador.

Depois de fazer mais ou menos 20 entrevistas simuladas, você deve estar pronto para começar a entrevistar as empresas nas quais deseja trabalhar.

Etapa 6: aplicar, aplicar e aplicar novamente

Use as três estratégias mencionadas acima para aplicar às principais empresas de tecnologia:

eventos de recrutamento / feiras de carreira

fazendo com que seus amigos o encaminhem

aplicando on-line

Se você não chegar pela primeira vez, não se preocupe. De fato, você deve esperar algumas falhas – entrar em qualquer uma dessas empresas é altamente competitivo.

Para mim, me inscrevi no Google cinco vezes antes de conseguir meu emprego de engenheiro de software lá.

Uma rápida recapitulação

Etapa 1: Aprenda a codificar

Etapa 2: trabalhe em alguns projetos pessoais

Etapa 3: obtenha seu primeiro trabalho ou estágio de programação

Etapa 4: Aprenda estruturas e algoritmos de dados

Etapa 5: prepare-se para codificar entrevistas

Etapa 6: aplique, aplique e aplique novamente!

É realmente assim tão simples?

Sim. Mas leva muito tempo e dedicação para executar todas as seis etapas.

Mais algumas notas

Preciso obter um diploma em ciência da computação?

A resposta curta é não. No entanto, um diploma em ciência da computação ajuda muito. Se você adota um programa sólido de CS, ele cuida da maioria das etapas de um a quatro (aprendendo a codificar, projetos pessoais, obtendo seu primeiro trabalho ou estágio de programação e aprendendo estruturas e algoritmos de dados).

Sem se formar em CS, você só precisa aprender mais por conta própria.

Além disso, observe que, mesmo com um diploma em CS, é preciso muito trabalho para conseguir um emprego de engenheiro de software em uma dessas empresas.

Preciso ir para uma universidade de ponta como o MIT, Stanford, Carnegie Mellon etc.?

Novamente, a resposta curta é não. Provavelmente ajuda, mas está longe de ser necessário.

Laszlo Bock, ex-vice-presidente sênior de operações de pessoas do Google, concorda.

terapia de casal nova iguaçu

De acordo com o livro que ele escreveu, Regras de trabalho !, o Google prefere os alunos com melhor desempenho em escolas menos conhecidas do que os alunos com desempenho medíocre nas melhores escolas, como o MIT.

Eu acho que isso faz sentido. Se você é inteligente e dedicado, não importa muito em qual escola você estudou.

Preciso ter um GPA alto?

A resposta curta é, novamente, não.

Ter um GPA alto provavelmente ajuda um pouco na obtenção de uma entrevista, mas é muito mais importante ter sólida experiência prática e projetos interessantes para mostrar em seu currículo.

De fato, de acordo com as Regras de trabalho!, O Google costumava se importar muito com os GPAs dos candidatos no passado. No entanto, eles descobriram que ter um GPA alto não está fortemente correlacionado com um forte desempenho no local de trabalho a longo prazo. Após essa descoberta, eles pararam de colocar uma ênfase tão forte nos GPAs.

Do que eu preciso então?

Basicamente, tudo o que você precisa são fortes habilidades de codificação e solução de problemas, uma boa compreensão dos fundamentos da SC e projetos e experiências interessantes para mostrar em seu currículo.

Você poderá criar tudo isso se seguir as seis etapas que expliquei acima.

Como posso escrever um bom currículo?

Se quiser, você pode usar o currículo que eu costumava aplicar ao Google como modelo.

Aqui está a versão em PDF.

Aqui está o do Word.

Aqui está o de Pages.

Esse é o currículo real que eu costumava conseguir um emprego no Google como engenheiro de software. Deveria ter sido realmente uma página, então eu diria que meu currículo foi muito longo. Ainda assim, fique à vontade para usá-lo como ponto de partida.

Também há uma boa visão geral deste tópico no CareerCup aqui.